我想替換由我的程序創建的文件中的字符串,但我不能使用.replace,因爲它不在3.3中,如何使用兩個替換文件中的一行輸入(以前的字符串,更換),這裏是到目前爲止的代碼:如何替換python中的文件中的一行
#Data Creator
def Create(filename):
global UserFile
UserFile = open(str(filename), "w")
global file
file = (filename)
UserFile.close()
#Data Adder
def Add(data):
UserFile = open(file, "a")
UserFile.write(str(data))
UserFile.close()
#Data seeker
def Seek(target):
UserFile = open(file, "r")
UserFile.seek(target)
global postition
position = UserFile.tell(target)
UserFile.close()
return position
#Replace
def Replace(take,put):
UserFile = open(file, "r+")
UserFile.replace(take,put)
UserFile.close
Create("richardlovesdogs.txt")
Add("Richard loves all kinds of dogs including: \nbeagles")
Replace("beagles","pugs")
如何做到這一點,所以它替換「哈巴狗」這個詞「獵兔犬」? 我正在學習Python的所以任何幫助,將不勝感激
編輯:
香港專業教育學院改變了代碼替換這個
#Replace
def Replace(take,put):
UserFile = open(file, 'r+')
UserFileT = open(file, 'r+')
for line in UserFile:
UserFileT.write(line.replace(take,put))
UserFile.close()
UserFileT.close()
但該文件在其輸出:
Richard loves all kinds of dogs including:
pugsles
我如何改變它,所以它只輸出「哈巴狗」而不是「哈巴狗」
'file.replace'從未出現在python中。 –
'str.replace()'是* strings *上的一個方法。它不是一個文件對象的方法。它從來沒有。 –
我確定我在某個地方讀過它,必須是一個錯誤有什麼其他方式嗎? – Jaffar