python csv.dictreader 不读
python csv.dictreader not readin
我正在尝试读取我之前使用 DictWriter 创建的 csv 文件,它似乎没问题:
Long,Lat,Value
-4.46811978,36.71191819,21.836857418129924
-4.46829768,36.71214269,1.437288805738615
-4.46858762,36.71216232,1.4251383119025087
-4.46893456,36.71041284,1.4248025480555202
-4.46896851,36.71016468,0.00885256853534053
问题是我在尝试读取时得到 {'/': 'h'},所以我得到一个 KeyError: 'Value',因为其中没有 Value 键词典:
with open(path,'r') as file:
csv_file = csv.DictReader(path)
for line in csv_file:
print line
values.append(line["Value"])
lat_long.append(line["Lat"],line["Long"])
file.close()
我已经打印了路径以验证它是正确的,确实如此,所以我不知道如何解决这个问题。
您应该用 file
调用 csv.DictReader()
而不是 path
。
如果将 path
传递给 csv.DictReader()
,csv.DictReader()
将解析字符串 path
本身,而不是位于 path
.[=19 的文件=]
这是您的代码的正确版本:
with open(path,'r') as file:
csv_file = csv.DictReader(file)
for line in csv_file:
print line
values.append(line["Value"])
lat_long.append(line["Lat"],line["Long"])
我正在尝试读取我之前使用 DictWriter 创建的 csv 文件,它似乎没问题:
Long,Lat,Value
-4.46811978,36.71191819,21.836857418129924
-4.46829768,36.71214269,1.437288805738615
-4.46858762,36.71216232,1.4251383119025087
-4.46893456,36.71041284,1.4248025480555202
-4.46896851,36.71016468,0.00885256853534053
问题是我在尝试读取时得到 {'/': 'h'},所以我得到一个 KeyError: 'Value',因为其中没有 Value 键词典:
with open(path,'r') as file:
csv_file = csv.DictReader(path)
for line in csv_file:
print line
values.append(line["Value"])
lat_long.append(line["Lat"],line["Long"])
file.close()
我已经打印了路径以验证它是正确的,确实如此,所以我不知道如何解决这个问题。
您应该用 file
调用 csv.DictReader()
而不是 path
。
如果将 path
传递给 csv.DictReader()
,csv.DictReader()
将解析字符串 path
本身,而不是位于 path
.[=19 的文件=]
这是您的代码的正确版本:
with open(path,'r') as file:
csv_file = csv.DictReader(file)
for line in csv_file:
print line
values.append(line["Value"])
lat_long.append(line["Lat"],line["Long"])