无法在不同的虚拟机中对同一词典进行排序

时间:2019-05-09 14:50:54

标签: python python-3.5

我有一个脚本,可以重新收集数据并插入字典中。我在不同的虚拟机中使用相同的脚本,并且只能在其中一个中工作。

字典是这样的:

{'data1': {'/home/data1': 273}, 'data2': {'/home/data2': 2}, 'data3': {'/home/data3': 10}, 'data4': {'/home/data4': 1}}

我应该按数字值排序,所以我应该有下一个字典:

{'data1': {'/home/data1': 273},'data3': {'/home/data3': 10}, 'data2': {'/home/data2': 2},'data4': {'/home/data4': 1}}

排序的字典代码如下:

directorios = sorted(dicta.items(), key=lambda x: [int(x) for x in x[1].values()], reverse = True)

奇怪的是,使用相同的脚本并获得相同的字典,但在不同的虚拟机中具有不同的值,在其中一个中我得到了脚本的工作,并且字典得到了完美的排序,但是在另一个中我得到了下一个错误:

    directorios = sorted(dicta.items(), key=lambda x: [int(x) for x in x[1].values()], reverse = True)
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'

两个VM的Python版本相同。 有什么想法吗?

0 个答案:

没有答案