我需要从一个csv文件创建一个字典,虽然我没有得到任何错误时,运行我的代码,我的输出出来空白.这是我的代码看起来像:
def make_happy_dict():
filename = "happiness.csv"
happy_dict = {}
with open(filename, 'r') as infile:
csv_happy = csv.reader(infile)
infile.readline()
for line in csv_happy:
line = line.strip("\n")
line[0], line[2] = line.split(",")
happy_dict[line[0]] = line[2]
print(line[0], line[2])
这是非常初学者/基本的,所以如果你有任何建议和解释,我会非常感谢!我不知道如果你需要的csv数据,所以让我知道,如果你这样做,我会更新:)
1条答案
按热度按时间piah890a1#
我想你还没有调用这个函数。如果你调用了,它会失败。
csv.reader
会为你拆分行。你迭代保存单行列值的列表。如果你尝试line.strip("\n")
,你会得到一个异常,因为line
是一个列表,而不是一个字符串。你可以把filename传递给函数,而不是硬编码它,并在完成后返回happy dictionary您可以在一个步骤中创建和填充字典,而不是使用for循环
有许多方法可以格式化输出数据。也许最简单的方法是打印每一项:
或者创建具有多行的单个字符串
这只是几种可能性。