Найти - Пользователи
Полная версия: Сортировка словаря/Json по определенному ключу.
Начало » Python для новичков » Сортировка словаря/Json по определенному ключу.
1
romzes96
Здравствуйте дорогие форумчане! Я новичок в изучение Python-а…

Я столкнулся с проблемой сортировки словаря по значениям определенного ключа.

Я имею словарь, а скорее Json который необходимо отсортировать по ключу “Likes”
Сам словарь:
 [
  {
    "Title": "Test",
    "Likes": "573",
    "Publisher_time": "Test",
    "Adult_content": "Test",
    "Views": "2580",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "90",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "419",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "66",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "308",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "304",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "1857",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "114",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "359",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "173",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "1113",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "132",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "550",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "146",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "802",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "166",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "711",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  },
  {
    "Title": "Test",
    "Likes": "60",
    "Publisher_time": "Test",
    "Adult_content": "False",
    "Views": "414",
    "Hash": "Test",
    "Link": "Test",
    "User": [
      {
        "Username": "Test",
        "First_name": "Test",
        "Last_name": "Test",
        "Country": "Test",
        "City": "Test",
        "Full_name": "Test",
        "Location": "Test"
      }
    ]
  }
]

Я пробовал отсортировать данными способами: НЕ РЕКЛАМА!
https://www.youtube.com/watch?v=QyuV1JjKvAg
https://www.youtube.com/watch?v=h568KGjc0f0

Но кроме ошибок я ничего не получил.

Может кто-нибудь направить в правильное русло?
doza_and
romzes96
Может кто-нибудь направить в правильное русло?
Ответ прост, словарь в питоне невозможно отсортировать (если не учитывать особенности реализации последних версий). Делайте список пар.
Romissevd
Ну, исходя из того , что ты представил, у тебя не словарь, а список словарей + к тому же Likes представлен строчным значением (что тоже необходимо учитывать при сортировке)
 print(sorted(st, key=lambda i: int(i["Likes"])))
где st - список словарей
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB