Sobes.tech
Junior — Middle

Таврии асосии фарқиятҳо байни сохторҳои додаҳои рӯйхат ва луғат дар Python чист?

sobes.tech AI

Ҷавоб аз AI

Асосӣ фарқиятҳо байни list ва dict дар Python:

  • Навъи маълумот:

    • list — рӯйхати тартибдодашуда ва тағйирёбанда аз унсурҳо, индексгузорӣ бо рақамҳои бутун.
    • dict — ҷамъоварии номуайян (аз Python 3.7 ба баъд — тартибдодашуда бо воридшавӣ) аз ҷуфтҳои калид-арзиш.
  • Дастрасӣ ба унсурҳо:

    • Дар list, дастрасӣ тавассути индекс: my_list[0].
    • Дар dict, дастрасӣ тавассути калид: my_dict['калид'].
  • Мақсад:

    • list барои нигоҳдории пайдарпайи тартибдодашудаи унсурҳо истифода мешавад.
    • dict барои нигоҳдории маълумот бо дастрасии зуд тавассути калидҳои беназири он.
  • Камбудиҳо:

    • Ҷустуҷӯ тавассути индекс дар list — O(1).
    • Ҷустуҷӯ тавассути арзиш дар list — O(n).
    • Ҷустуҷӯ тавассути калид дар dict — дар миёна O(1).

Масалан:

my_list = [10, 20, 30]
print(my_list[1])  # 20

my_dict = {'a': 1, 'b': 2}
print(my_dict['b'])  # 2

Аз ин рӯ, интихоби байни list ва dict ба вазифа вобаста аст: оё ба шумо маҷмӯаи тартибдодашуда ё дастрасии зуд тавассути калид лозим аст?