gpt4 book ai didi

python csv只写某些字段名,而不是全部

转载 作者:太空狗 更新时间:2023-10-29 22:07:06 25 4
gpt4 key购买 nike

我一定是遗漏了什么,但我不明白。我有一个 csv,它有 1200 个字段。我只对 30 感兴趣。你如何让它发挥作用?我可以读/写整个 shebang,这没问题,但我真的很想写出 30。我有一个字段名列表,我正在修改标题。

我将如何翻译以下内容以使用 DictWriter/Reader?

for file in glob.glob( os.path.join(raw_path, 'P12*.csv') ):
fileReader = csv.reader(open(file, 'rb'))
fileLength = len(file)
fileGeom = file[fileLength-7:fileLength-4]
table = TableValues[fileGeom]
filename = file.split(os.sep)[-1]
with open(out_path + filename, "w") as fileout:
for line in fileReader:
writer = csv.writer(fileout, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
if 'ID' in line:
outline = line.insert(0,"geometryTable")
else:
outline = line.insert(0,table) #"%s,%s\n" % (line, table)
writer.writerow(line)

最佳答案

这是一个使用 DictWriter 只写出您关心的字段的示例。我将把移植工作留给你:

import csv

headers = ['a','b','d','g']

with open('in.csv','rb') as _in, open('out.csv','wb') as out:
reader = csv.DictReader(_in)
writer = csv.DictWriter(out,headers,extrasaction='ignore')
writer.writeheader()
for line in reader:
writer.writerow(line)

in.csv

a,b,c,d,e,f,g,h
1,2,3,4,5,6,7,8
2,3,4,5,6,7,8,9

结果(out.csv)

a,b,d,g
1,2,4,7
2,3,5,8

关于python csv只写某些字段名,而不是全部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9917780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com