Sobes.tech
Junior — Middle

Тавзеҳ диҳед, ки чӣ гуна қисмҳо дар барномасозии Python ҳастанд.

sobes.tech AI

Ҷавоб аз AI

Дар забони Go (Golang), қисмҳо (slices) сохторҳои маълумоти динамикӣ мебошанд, ки ҳамчун як фароравӣ бар рӯи массив амал мекунанд. Онҳо имкон медиҳанд, ки бо пайдарпаёбии унсурҳои дарозии тағйирёбанда кор кунанд.

Хусусиятҳои асосии қисмҳо:

  • Қисм дорои ишорагардон ба массив, дарозӣ ва қобилияти нигоҳдории унсурҳо мебошад.
  • Дарозӣ шумораи унсурҳое мебошад, ки дар қисм дастрасанд.
  • Қобилияти нигоҳдории унсурҳо максималии шумораи унсурҳо мебошад, ки қисм метавонад бидуни такрор ба такрор дарёфт кунад.
  • Мумкин аст, ки қисмҳоро аз массивҳо ё дигар қисмҳо бо истифода аз синтаксис array[start:end] эҷод кард.
  • Вақте ки унсурҳоро бо функсияи append илова мекунем, агар зарур бошад, массиви нав бо қобилияти зиёдтар таъин карда мешавад.

Масалан:

arr := [5]int{1, 2, 3, 4, 5}
slice := arr[1:4] // қисм аз унсурҳо бо индексҳои 1,2,3
fmt.Println(slice) // [2 3 4]

slice = append(slice, 6) // илова кардани унсур
fmt.Println(slice) // [2 3 4 6]

Бинобар ин, қисмҳо барои кор бо пайдарпаёбии динамикӣ қулай мебошанд, бидуни ниёз ба идоракунии дастӣ кардани массивҳо.