Python CSV阅读器打印出特定字段

时间:2015-08-29 18:55:44

标签: python csv

我正在寻找从csv值字符串中读取特定值的最pythonic方式。

以下是一个例子:

我有字符串12022,0.0000,0.0000,70,需要将每个值存储到变量中。所以

id = 12022
val = 0.0000
val2 = 0.0000
rsn = 70

python中是否有办法从特定位置获取csv阅读器的值,即:

reader = csv.reader(value.string.split(","))
id = reader[0]
val = reader[1]

3 个答案:

答案 0 :(得分:2)

你的意思是这样吗?

id, val, val2, rsn = reader

它会将阅读器中的值解压缩为相应的变量。

例如:

for row in csv.reader(open('data.csv')):
    id, val, val2, rsn = row
    # do something...

答案 1 :(得分:1)

有;这很简单。

从csv的特定行/列返回值:

import csv

f = open("example.csv")
csv_f = list(csv.reader(f))

#returns the value in the second row, second column of your file
print csv_f[1][1]

答案 2 :(得分:0)

我猜你正在使用一个文件,这对csv来说是最有意义的。使用提交的名称非常清楚。

import csv
with open("file.csv") as csvfile:
    reader = csv.DictReader(csvfile, fieldnames=("id", "val", "val2", "rsn"))
    for row in reader:
        id = float(row["id"])
        print id

你也可以使用它,这对于只有一行的小例子是可以的。

id, val, val2, rsn = [float(n) for n in string.split(",")]