我似乎無法弄清楚爲什麼我一直得到這個越野車輸出。越野車文本替換代碼:
輸入文件:
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