在python中查找和替换文本文件

VPapz

下面是代码,但是输出是错误的,它在循环时仅输出第一个索引值。当我打印col,rac和mon的值时,它起作用。我还检查了i值,以确保它们以正确的方式递增。

文本文件:

Fav Color   -- *color* 
Fav Car     -- *car*
Number      -- *Money*

码:

with open('carstest.txt', 'r') as file :
    testdata = file.read()

colors = ["RED","GREEN","BLUE"]
car =['Ferrari', 'Mustang','Camero']
Money = ['one','two','three']
i =0
while i <len(colors):
    col = colors[i]
    rac = car[i]
    mon = Money[i]
    testdata = testdata.replace('*color*',  col)
    testdata = testdata.replace('*car*', rac)
    testdata = testdata.replace('*Money*', mon)
    print(testdata)
    i+=1

else:
    print ("DONE")

输出:

Fav Color   -- RED 
Fav Car     -- Ferrari
Number  -- one

Fav Color   -- RED 
Fav Car     -- Ferrari
Number  -- one

Fav Color   -- RED 
Fav Car     -- Ferrari
Number  -- one

DONE

所需产量:

Fav Color   -- RED 
Fav Car     -- Ferrari
Number  -- one

Fav Color   -- GREEN
Fav Car     -- Mustang
Number  -- two

Fav Color   -- BLUE
Fav Car     -- Camero
Number  -- three

DONE
斯科特·亨特

一旦完成了第一轮替换,占位符就不再在那里替换了。如果从testdata每个迭代的原始值开始,那应该没问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章