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
appendje 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í.