Wycinanie fragmentów tablicy
Część sekcji Podstawy ścieżki GDScript w Coddy. Lekcja 73 z 92.
Metoda slice() zwraca nową tablicę zawierającą część elementów. slice(begin, end) pobiera elementy od indeksu begin do indeksu end, ale bez niego:
var numbers := [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(numbers.slice(2, 6))[2, 3, 4, 5]Bez end wycinek sięga do końca tablicy:
print(numbers.slice(5))[5, 6, 7, 8, 9]Indeksy ujemne liczą od końca. slice(-3) pobiera trzy ostatnie elementy, a slice(0, -2) — wszystko oprócz dwóch ostatnich:
print(numbers.slice(-3))
print(numbers.slice(0, -2))[7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7]Trzeci argument, krok, pobiera co n-ty element. slice(1, 8, 2) pobiera indeksy 1, 3, 5 i 7:
print(numbers.slice(1, 8, 2))[1, 3, 5, 7]slice() nie zmienia oryginalnej tablicy: numbers nadal zawiera wszystkie dziesięć elementów.
Wyzwanie
ŁatwyProgram wczytuje wiersz elementów oddzielonych przecinkami do tablicy items (jest to już zapisane). Wypisz środkową część tablicy za pomocą slice():
- Jeśli liczba elementów jest nieparzysta, wypisz środkowy element i po jednym elemencie z każdej strony (3 elementy; jeśli jest tylko jeden element, wypisz ten element)
- Jeśli jest parzysta, wypisz dwa środkowe elementy
Dla apple,banana,orange,grape wynikiem jest ["banana", "orange"], a dla a,b,c,d,e jest to ["b", "c", "d"].
Spróbuj swoich sił
extends Node
func _ready():
var items := OS.read_string_from_stdin().split(",")
# Wypisz środkowe elementy
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory, część 1
Operatory arytmetyczneDzielenie całkowiteOperator moduloSkrócone operatory arytmetycznePodsumowanie — prosta matematykaOperatory porównania7Podstawowe wejście/wyjście
WyjścieWyjście ze zmiennymiFormatowanie ciągów znakówWejścieRzutowanie typówPowtórka — do 120Powtórka — prawda czy fałsz10Funkcje
Deklarowanie funkcjiArgumentyZwracanie wartościTypy zwracanych wartościPowtórka — funkcja sigmaPowtórka — funkcja walidującaWartości domyślne5Operatory — część 2
Operatory logiczne — część 1Operatory logiczne — część 2Powtórka — podstawy logikiOperatory logiczne — część 3Operator warunkowy8Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych14Zaawansowane tablice
Wycinanie fragmentów tablicyOperatory sekwencjiPrzynależnośćSortowanie i odwracanie3Zmienne, część 2
Deklarowanie typówWnioskowanie o typachStałePowtórka — inicjalizacja zmiennychKonwersja typów6Podejmowanie decyzji
Instrukcja ifIf - elsePowtórka – prosty kalkulatorZagnieżdżone if - elseInstrukcja match9Pętle
Pętla forPętla whilePrzerwijKontynuujPowtórka — silniaFunkcja rangePętla zagnieżdżonaPowtórka — dane wejściowe dynamicznePoćwicz samodzielnie: Kompilator GDScript online