Sobes.tech
Senior

Дар контексти луғатҳо, фарқ байни рӯйхат ва кортеж чист?

sobes.tech AI

Ҷавоб аз AI

Дар контексти луғатҳо (масалан, дар Python), фарқият байни рӯйхат ва tuple барои калидҳои луғат муҳим аст:

  • Рӯйхат — навъи маълумоти тағйирёбанда, бинобар ин, наметавонад ҳамчун калиди луғат истифода шавад, зеро калидҳо бояд хешшаванда ва тағйирнопазир бошанд.
  • Tuple — навъи маълумоти тағйирнопазир, бинобар ин, метавонад ҳамчун калиди луғат истифода шавад агар ҳамаи унсурҳои он низ хешшаванда бошанд.

Масалан:

my_dict = {}
my_dict[(1, 2)] = 'tuple ҳамчун калид'  # Кор мекунад

my_dict[[1, 2]] = 'рӯйхат ҳамчун калид'    # Хатогӣ TypeError: unhashable type: 'list'

Аз ин рӯ, tuple барои калидҳои мураккаб дар луғатҳо мувофиқ аст, дар ҳоле ки рӯйхатҳо не.