【发布时间】:2018-11-08 08:45:32
【问题描述】:
我在使用 csv 阅读器时遇到了问题。 我想逐行读取 csv 文件并打印出每行的第二个条目。 一行的所有条目都写在一个单元格末尾,以','分隔
看起来像这样: 0.00,457.00,0.00,862.00,12892,32575,"LAX",11292,30325,"DEN",11,
我试过这段代码:
with open(file_path, 'r', newline='') as file:
reader = csv.reader(file, delimiter=',')
for line in reader:
passangers, freight, mail, distance, origin_airport_id, origin_city_marked_id, origin, dest_airport_id, dest_city_marked_id, dest, month = line
print(freight)
但我得到:ValueError: no enough values to unpack (expected 11, got 1)
这段代码前段时间在另一个项目中为我工作过,所以我真的不知道为什么它现在不起作用。我尝试了不同的分隔符( ' ; ' ,空格等),但这基本上是一个猜测,因为我不知道还能做什么
【问题讨论】:
-
如果你
print(line)返回什么? -
为什么不试试熊猫呢?
import pandas as pd, df = pd.read_csv(file_path), df['freight']。最后一行假设你的 csv 有一个标题行 -
如果我在乘客之前打印(行),...我得到的行:[0.00,457.00,0.00,862.00,12892,32575,"LAX",11292,30325,"DEN", 11,]