【发布时间】:2019-05-18 09:47:45
【问题描述】:
作为家庭作业,我们被要求从 CSV 构建字典(无需导入 CSV 或任何其他库,仅使用内置 Python 函数)。
CSV 看起来像这样:
Class mate, distance1, distance2, distance3, distance4
Bob, 102.5, 0.5587, 45.77, 49.225
Sally, 785.115, 32145.01, 4578.25, 0.5587
Anne, 4521.87, 12.5, 0.2547, 1545.554
...
...
...
我不断收到价值错误,而且没有更多。
race_read = open('student_guess.csv', 'r')
race_open = race_read.readlines()
race_dict = {}
for line in race_open:
key, val = line.strip().split('\n')
race_dict[int(key)] = val
print(race_dict)
这是我得到的回溯的最后两行:
key, val = line.strip().split('\n')
ValueError: not enough values to unpack (expected 2, got 1)
我希望字典看起来像这样:
{'Bob': [102.5, 0.5587, 45.77, 49.225], 'Sally': [785.115, .... etc], etc}
【问题讨论】:
-
鉴于换行符位于行尾,而您刚刚剥离了它,您预计拆分列表中有多少项?
-
我预计拆分列表中有4个项目,名称为key。
-
为什么是四个?你检查是不是真的?如果有 四个,如何将其分配给两个名称?
标签: python python-3.x csv dictionary data-structures