使用python

时间:2015-11-11 06:32:54

标签: python-2.7

所以我试图取代"'''""在python文件本身。当我激活代码时,它会替换3次出现中的2次而不是第1次。

rank_mod = ['pleb']

f1 = open('C:\Python27\Scripts\bot\bot.py', 'r')
                            f2 = open('C:\Python27\Scripts\bot\bot.py', 'w')
                            for line in f1:
                                f2.write(line.replace("'pleb'", "'" + username + "', 'pleb'", 1))
                            f1.close()
                            f2.close()

当激活它时,它看起来像这样:

rank_mod = ['(the username)', 'pleb']

f1 = open('C:\Python27\Scripts\bot\bot.py', 'r')
                            f2 = open('C:\Python27\Scripts\bot\bot.py', 'w')
                            for line in f1:
                                f2.write(line.replace("'(the username)' , 'pleb'", "'" + username + "', 'pleb'", 1))
                            f1.close()
                            f2.close()

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我不确定问题究竟是什么,但可能是由于打开同一个文件进行读写而导致的行为。试试这个:

rank_mod = ['pleb']
f1 = open('C:\Python27\Scripts\bot\bot.py', 'r')
contents = f1.read().replace("'pleb'","'" + username + "', 'pleb'", 1)
f1.close()
f1 = open('C:\Python27\Scripts\bot\bot.py', 'w')
f1.write(contents)
f1.close()