我似乎无法弄清楚为什么我一直得到这个越野车输出。越野车文本替换代码:
输入文件:
ff1
ff2
ff3
ff10
ff11
ff20
ff21
ff23
gb20
gb10
gh23
输出文件:
FF01
FF02
FF03
FF010
FF011
FF020
FF021
FF023
GB020
GB010
GH023
代码:
import os
import sys
#directory is the directory we will work from
directory = "C:\\Users\\user\\Desktop"
os.chdir(directory)
renameWhat = ["ff", "gb", "gh"]
oldFile = open("New Text Document.txt")
buffer = oldFile.read()
for item in renameWhat:
for i in range(0, 50):
if i < 10:
buffer = buffer.replace(item + str(i), item.upper() + "0" + str(i))
else:
buffer = buffer.replace(item + str(i), item.upper() + str(i))
outFile = open("test.txt", "w")
outFile.write(buffer)
outFile.close()
oldFile.close()
需要做些什么:
我试图取代FF到大写(完成),然后我需要吨o将零加到less than or equal to 9
的所有数字上。所以我认为if i is less than 10
应该足够好;但这不是因为它为9以上的所有东西增加了零。我尝试了len(str(i))
以确保它只有一个长度,但仍然不起作用;我错过了什么?
不能相信我错过了这样一个基本的错误;但不是那么明显的错误。我只是添加了文件扩展名来修复它。谢谢 – nobody