编辑iOS:删除每个lin中的第一个字符

2024-10-01 05:02:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图创建一个编辑工作流来删除文件中每行的前六个字符。在

目前,我构建了一个由三个步骤组成的新Workfow:

  1. 获取选定文本
  2. 自定义Python脚本
  3. 替换所选文本

我的Python脚本是:

#coding: utf-8
import workflow

action_in = workflow.get_input()

text = open("temp.txt", "w+")
text.write(action_in)

lines = text.readlines()
for line in lines:
  text.write(line[6:])

action_out = text.read()
workflow.set_output(action_out)

实际上,当我试图在一行中使用这个工作流时,它只是将其删除。在

我该怎么办?在

提前谢谢你。在


Tags: 文件textin文本脚本编辑line步骤
1条回答
网友
1楼 · 发布于 2024-10-01 05:02:58

我怀疑问题是你需要关闭”温度文本“然后重新打开。这对我有用:

import workflow

action_in = workflow.get_input()

text = open("temp.txt", "w+")
text.write(action_in)
text.close()

text = open("temp.txt", "r")
lines = text.readlines()
text.close()

text = open("temp.txt", "w+")
for line in lines:
    text.write(line[6:])
text.close()

text = open("temp.txt", "r")
action_out = text.read()
workflow.set_output(action_out)

初始“open”语句中的“w+”将删除文件并打开它进行读/写;但是,文件指针将跟随write。最安全的方法是完成后关闭文件,然后重新打开它以重置文件指针并获取所需的数据。在

由于您使用的是w+,您还可以使用.seek()重新定位文件指针,具体取决于缓存,但是,如果您只需要大纲,则无需打开临时文件来执行此操作。在

^{pr2}$

相关问题 更多 >