Не могу отсортировать один и тот же словарь в разных виртуальных машинах - PullRequest
0 голосов
/ 09 мая 2019

У меня есть скрипт, который собирает данные и вставляет их в словарь.Я использую один и тот же сценарий в разных виртуальных машинах и просто работает в одном из них.

Диктант такой:

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

И я должен упорядочить по значению чисел, поэтому ядолжен иметь следующий dict:

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

код отсортированного dict выглядит так:

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'

Обе виртуальные машиныиметь ту же версию Python.Есть идеи?

...