-2

我写了一个小脚本如下

f1 = open('file.txt', 'r')     
f2 = open('newfile.txt', 'w')     
n=5000

for line in f1:         
      f2.write(line.replace('12345', n))    
      n=n+1

f1.close()     
f2.close()

.replace('old','new')不能应用于变量。任何人有想法解决这个问题?

4

4 回答 4

2

我认为您需要提供两个字符串来替换:

f2.write(line.replace('12345', str(n)))
于 2012-09-03T08:41:44.120 回答
1

n用它替换时转换为字符串:

f2.write(line.replace('12345', str(n)))
于 2012-09-03T08:42:00.760 回答
1

您收到此错误是因为您试图用数字替换字符串。

将您的行更改为:

f2.write(line.replace('12345',str(n)))

它会起作用。

于 2012-09-03T08:44:04.553 回答
0

使用 str(n) 将 n 更改为字符串

f2.write(line.replace('12345', str(n)))
于 2012-09-03T08:44:36.930 回答