我一直在寻找几个小时而没有找到我正在寻找的东西......
我正在制作一个程序,该程序需要一个已编译的.csv文件,其中缺少一些信息,并询问用户他们想要添加什么,然后将其放在csv中但不影响标题行。然后使用添加文件保存文件。
看起来像(输入):
data 1, data 2, data 3
2,,4
4,,6
6,,3
3,,2
程序问“数据2列中你想要什么?”
回答:5
(输出):
data 1, data 2, data 3
2,5,4
4,5,6
6,5,3
3,5,2
所有帮助都非常感谢。
答案 0 :(得分:1)
input()
(python 3)或raw_input()
(python 2)函数获取用户输入循环遍历文件的其余部分,将列拆分出来并将第2列替换为用户的输入
with open('in.csv', 'r') as infile, open('out.csv', 'w') as outfile:
middle_col = input('What would you like in data 2 column>: ')
outfile.write(infile.readline()) # write out the 1st line
for line in infile:
cols = line.strip().split(',')
cols[1] = middle_col
outfile.write(','.join(cols) + '\n')
答案 1 :(得分:0)
我相信你的问题的主要部分(如何跳过标题)已在这里得到解答:
Skip the headers when editing a csv file using Python
如果您在阅读器上拨打next()
一次,则会跳过第一行(标题)。然后你可以照常做for row in reader
。