0

我正在尝试以这种格式将以下信息写入 csv 文件:

最小,-40

但是,我的输出如下所示,括号和引号围绕 -40:

Tmin, ['-40']

我的代码如下。基本上,我在 csv 文件中搜索特定短语,在本例中为“Tmin”,并读取右侧的条目 1 单元格。然后我想将“Tmin”和直接读取的值写入第二个 csv 文件。

我已经搜索了一种删除引号和括号的方法,但无法使其正常工作。我对python很陌生,所以任何帮助都会有所帮助。谢谢。

import csv
fileInput = "Input.csv"
fileOutput = "output.csv"
Name_Column = 0
Value_Column = 1

with open(fileInput, 'r') as file:
    reader = csv.reader(file)
    Tmin = [line[Value_Column] for line in reader if line[Name_Column] == 'Tmin']
    print "Tmin=", Tmin    #print to screen to check value read

with open (fileOutput,'w') as file:
   writer = csv.writer(file)
   print writer.writerow(['Tmin',Tmin])
4

1 回答 1

3

python 只是将 Tmin 打印为列表,您可以将 CSV 行打印为字符串,也可以仅打印行中的第一个元素。

尝试

print "Tmin=", ", ".join(Tmin)

或者

print "Tmin=", Tmin[0]

如果你想通过 csv writer 输出 csv,你需要一个列表,而不是列表中的列表:

尝试

writer.writerow(['Tmin']+Tmin) #note this is already printing the result to a file so dont "print" the return value
于 2012-04-24T03:07:00.047 回答