通过字符串输入查找行,并替换CSV文件Python中的特定行



对于一个通讯簿项目,如果用户输入"Toast"它将找到上面有Toast的行,然后替换该行上的一行,例如"Toast";Jam";利用来自用户的另一个输入。

有办法做到这一点吗?

示例:

Bread,Condiment1,Condiment2
Toast,Butter,Jam, 
#Finds Toast
input = Toast
#Replaces Jam with Nutella
input = Nutella

然后应该变成

Bread,Condiment1,Condiment2
Toast,Butter,Nutella

我假设您总是想替换行的第三个元素。所以我写了这个相应的

with open('example.csv', 'r+', encoding='utf-8') as f:
aa = f.readlines()
x = input()
for k,i in enumerate(aa):
if i.startswith(x):
y = input()
words=i.split(',')
words[2] = y
aa[k] =','.join(words)
f.seek(0)
f.write(''.join(aa))
f.truncate()

最新更新