【发布时间】:2020-06-15 18:14:45
【问题描述】:
使用字典对数据进行排序,我创建了一个邮政编码及其人口的列表。然后,我使用 for 循环遍历字典中的每个键以查找匹配的邮政编码,并在存在重复值时添加它们的人口(一些邮政编码出现多次)。我现在需要将在 for 循环中创建的长列表放入文本文件中。我的问题是,当我将列表写回文件时,它只会获取我的最后两个值。我的代码没有错误,但没有在文本文件中填充我的完整列表。下面是我迄今为止的代码预览,它捕获了我的邮政编码和人口总数。
for k in dict.keys():
zip = (k)
total_pop = int(dict[k]['pop']
zip_list = [zip, str(total_pop)]
new_zip_list = ",".join(zip_list)
with open("test_file.txt", "w") as output:
for row in new_zip_list:
output.write(str(row)+"\n")
有人告诉我您不能将列表写入文本文件,因此创建了 new_zip_list 行来将我的列表转换为字符串。不确定这是否正确?
【问题讨论】:
-
你的意思是把'with open()'作为第一行吗?
-
老实说,我不确定在哪里放置“with open()”行。看来,当我尝试将列表写入文件时,它并没有拾取我创建的 for 循环中的每个元素。
-
btw 不要使用像
dict和zip这样的内置函数作为变量名。
标签: python list file dictionary text