我想通过检查文本文件中的行数在文本前面的每一行中写入时间。因为我想通过这个链接把这个文本文件转换成.srt文件。 https://unix.stackexchange.com/questions/111024/how-to-convert-a-txt-subtitle-file-to-srt-format
每一行是1秒。(在00:00:00开始第一行:)我的文件有很多行(500-1000行) 从
.......Text......... (first line)
.......Text......... (second line)
.......Text......... (third line)
.
.
.
.......Text......... (60 line)
.......Text......... (61 line)
.
.
.................... (3600 line)
为了这个
00:00:01:.......Text......... (first line)
00:00:02:.......Text......... (second line)
00:00:03:.......Text......... (third line)
.
.
.
00:01:00:.......Text......... (60 line)
00:01:01:.......Text......... (61 line)
.
.
01:00:00:.................... (3600 line)
现在我可以检查行数并在每行文本前面写文本。 但使用代码检查数字行和打开文件写入文本时出错。 我不知道如何写循环和比较行数。我不适合这个。你知道吗
def numberline(fname):
with open(fname) as f:
for i, l in enumerate(f):
pass
return i + 1
numberline("/home/pi/gtest.txt"))
dataFile = open("/home/pi/gtest.txt", "w")
for line in range(numberline("/home/pi/gtest.txt")):
dataFile.write("00:00:%02d:\n" % line)
dataFile.close()
请帮帮我。谢谢你 我的项目等待这一部分,因为这是python的最后一部分。 通常我在linux命令中使用Rpi,但在python中不懂。你知道吗
试试这个:
然后可以将结果写入文件:
可以使用
enumerate()
函数在迭代时从文件中获取行号和行,并使用divmod()
对数字进行除法和余数。在这里,我们做两次,首先从几秒钟(行号)到几分钟,然后从几分钟到几小时。你知道吗然后,我们使用规则的
%
插值和%02d
说明符将时/分/秒变量转换为零填充的两个字符长度的字符串,并用冒号将它们粘合到原始行。你知道吗对于添加的元点,默认情况下,此脚本会对自身进行注释。:)
要将输出写入另一个文件,最简单的方法是使用shell:
顺便说一下,这是python3;
print()
语句在python2上看起来会有所不同。你知道吗编辑:根据评论中的讨论添加了参数解析。脚本现在允许
相关问题 更多 >
编程相关推荐