排序大约470000个元组时出现错误。 我读csv文件数据到元组ValueError:太多值来解包太多的元组
fp = open(filename, 'Ur')
for line in fp:
listOfCitiesTuples.append(tuple(line.strip().split(',')))
fp.close()
元组的列表中有许多相关的一些城市的名字。
[('Chiredzi', '4117'), ('Gaths', '4117'), ('Masvingo', '4117'), ('Chivhu', '4120'), ('Gweru', '4120'), ('Kwekwe', '4120'), ('Mvuma', '4120'), ('Redcliffe', '4120'), ('Shurugwi', '4120'), ('Zvishavane', '4120')]
我收集在一个列表关联在一起,以相同数量的所有名称并将其映射到该号码,构成所有这些项目的字典,像这样
{'1': ['Bombuflat', 'Garacharma', 'Port Blair', 'Rangat'], '113': ['Hydra', 'Kouba'], '294': ['Vienna', 'Wien'], '1327': ['Lambarene', 'Ndjole']}
使用下面的方法来实现它
for k, v in listOfCitiesTuples: dictOfCitiesTuples.setdefault(v, []).append(k)
这对(我已经测试20000到目前为止)数量较少元组的工作得很好,但似乎并没有工作在更大的数字,如47万
可能大量的元组是一个问题或可能是由于损坏的文件?如果这是由于文件中某些损坏的数据造成的,那么我能做些什么来找出损坏的数据是什么样的,例外吗?
我得到这个错误
File "/../view.py", line 186, in getCities
for k, v in listOfCitiesTuples: dictOfCitiesTuples.setdefault(v, []).append(k)
ValueError: too many values to unpack (expected 2)
将此元组导入熊猫数据框并检查文件中是否有损坏的数据。 – min2bro
什么是完整的错误?这更有可能你有1或3个值,你打开两个。也许一个城市的名字中有一个逗号,所以你得到3个值。 –
@jas这不是完整的错误。哪行代码正在执行? –