Sobes.tech
Junior — Middle

Vysvetlite, čo sú rezy v programovaní v Pythone.

sobes.tech AI

Odpoveď od AI

V jazyku Go (Golang) sú rezy (slices) dynamické dátové štruktúry, ktoré predstavujú obal nad poľom. Umožňujú pracovať s postupnosťami prvkov s premenlivou dĺžkou.

Hlavné vlastnosti rezov:

  • Rez obsahuje ukazovateľ na pole, dĺžku a kapacitu.
  • Dĺžka je počet prvkov dostupných v reze.
  • Kapacita je maximálny počet prvkov, ktoré môže rez obsahovať bez prealokácie.
  • Môžu sa vytvárať rezy z polí alebo iných rezov pomocou syntaxe array[start:end].
  • Pri pridávaní prvkov pomocou funkcie append je podľa potreby alokované nové pole s väčšou kapacitou.

Príklad:

arr := [5]int{1, 2, 3, 4, 5}
slice := arr[1:4] // rez prvkov s indexmi 1,2,3
fmt.Println(slice) // [2 3 4]

slice = append(slice, 6) // pridanie prvku
fmt.Println(slice) // [2 3 4 6]

Takto sú rezy vhodné na prácu s dynamickými sekvenciami bez nutnosti manuálneho spravovania polí.