如果不知道每个列中预期的字符串的完整列表,我不认为这是可以解决的。否则import csv
expected_in_A = set(['a','b','c','d'])
expected_in_B = set(['w','x','y','z'])
def main():
with open('myfile.csv', 'rb+') as f:
incsv = csv.reader(f)
for row in incsv:
expected_in_A.discard(row[0])
expected_in_B.discard(row[1])
# because the file opening mode included '+',
# and because we have already read to the end of it,
# we can now simply append to it:
outcsv = csv.writer(f)
outcsv.writerows([val, 'value missing'] for val in expected_in_A)
outcsv.writerows(['value missing', val] for val in expected_in_B)
if __name__=="__main__":
main()
如果myfile.csv包含
^{pr2}$
(z后面有回车键!)然后就变成了a,w
b,x
d,z
c,value missing
value missing,y