在这个论坛中亲爱的Python用户,
我有一个包含大量ascii格式的列和行的数据文件。
此文件包含数字和字母的混合数据,例如:
15.20000 120.60000 98327 get data information here. SURFACE DATA FROM ??????????? SOURCE FM-12 SYNOP 155.00000 1 0 0 0 0 T F F -888888 -888888 20020531210000 100880.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0-888888.00000 0
我只是在文件中放入一行的一部分。 我的目的是用一个值替换某个列中的所有值。 例如,我想用999更改第3列中的所有值。 所以我使用了如下代码:
import csv
with open("SURFACE1", "rb") as infile, open("output.txt", "wb") as outfile:
reader = csv.reader(infile, delimiter="\t")
writer = csv.writer(outfile, delimiter="\t")
for row in reader:
row[2] = "999"
writer.writerow(row)
即使它有超过30列,它似乎没有工作导致"索引错误"。 任何想法或帮助都会非常感激。
谢谢你, 艾萨克