(编辑:该脚本似乎适用于这里试图提供帮助的其他人。是因为我正在运行 python 2.7 吗?我真的很茫然......)
我有一个我试图用页面标记的书的原始文本文件。
假设文本文件是:
some words on this line,
1
DOCUMENT TITLE some more words here too.
2
DOCUMENT TITLE and finally still more words.
我正在尝试使用 python 将示例文本修改为:
some words on this line,
</pg>
<pg n=2>some more words here too,
</pg>
<pg n=3>and finally still more words.
我的策略是将文本文件加载为字符串。构建与数字列表相对应的搜索和替换字符串。替换字符串中的所有实例,并写入新文件。
这是我写的代码:
from sys import argv
script, input, output = argv
textin = open(input,'r')
bookstring = textin.read()
textin.close()
pages = []
x = 1
while x<400:
pages.append(x)
x = x + 1
pagedel = "DOCUMENT TITLE"
for i in pages:
pgdel = "%d\n%s" % (i, pagedel)
nplus = i + 1
htmlpg = "</p>\n<p n=%d>" % nplus
bookstring = bookstring.replace(pgdel, htmlpg)
textout = open(output, 'w')
textout.write(bookstring)
textout.close()
print "Updates to %s printed to %s" % (input, output)
该脚本运行没有错误,但它也没有对输入文本进行任何更改。它只是逐个字符地重新打印它。
我的错误与硬回报有关吗?\n? 非常感谢任何帮助。