你做错的不是显式地更改任何文件中的任何内容。在
下面是一些代码来演示如何将内容写入文件。。。在fp = open(somefilepath,'w')
这一行打开一个要写入的文件,'w'告诉python如果文件不存在就创建它,如果文件确实存在,也会删除它的内容。如果要打开文件进行写入并保留当前内容,请改用“a”代表追加。在
^{pr2}$
将变量“stuff”中的任何内容写入文件。在
希望这有帮助。对于更具体的代码,请告诉我们你到底想写什么到你的文件。在
编辑:但你不会改变任何东西!
你的剧本已经完成了:1. Dictionary is a set containing all acceptable words
2. WordList is a set containing all not acceptable lines
3. You have read to the end of SearchFile
如果我正确理解您的问题,您现在要做的是:4. find out which Disctionary word each line stored in Wordlist should be
5. re-write SearchFile with the offending lines replaced.
如果这是正确的,你打算如何找出哪个单词表条目应该是哪个字典条目?你怎么知道实际的更正?你试过剧本的这一部分吗(毕竟这是关键。这只是出于礼貌)。你能和我们分享一下你在这方面的尝试吗。在
假设您有这个函数:def magic(line,dictionary):
"""
this takes a line to be checked, and a set of acceptable words.
outputs what line is meant to be.
PLEASE tell us your approach to this bit
"""
if line in dictionary:
return line
...do stuff to find out which word is being mis spelt, return that word
Dictionary=set(open("dictionary.txt").read().split())
SearchFile = open("sample.txt",'r')
result_text = ''
for line in SearchFile:
result_text += magic(line.strip(),Dictionary) #add the correct line to the result we want to save
result_text += '\n'
SearchFile = open("sample.txt",'w')
SearchFile.write(result_text) # here we actually make some changes
为了重复前面的一点,如果您想要任何有意义的帮助,那么您至少已经尝试过解决问题的症结,这一点很重要。在