Bloki listowe

Z Zasoby CoderDojo
Wersja Michał Gosk (dyskusja | edycje) z dnia 09:40, 28 sie 2015

(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Skocz do: nawigacji, wyszukiwania

utwórz pustą listę

Tworzy pustą listę bez elementów.

Bloki listowe (1).png

utwórz listę

Tworzy listę z przyporządkowanych bloków. Jeśli żadne bloki nie zostaną przypisane do lista, ta pozostanie pusta, a bloki będzie można dodać do niej w późniejszym czasie. Ten blok jest mutatorem – kliknięcie na niebieski znak umożliwi dodanie kolejnych pozycji do listy.


Bloki listowe (2).png

dodaj obiekt do listy

Dodaje określony obiekt na koniec listy. Różnicą między tym blokiem, a blokiem append to list jest to, że ten blok dodaje pobrane obiekty do pojedynczej listy i dodaje je jako pojedyncze argumenty. Ten blok jest mutatorem.

Bloki listowe (3).png

czy obiekt jest na liście?

Jeśli sprawdzany obiekt znajduje się na liście, to zwracana jest prawda, zaś w innym przypadku otrzymamy fałsz. Należy zwrócić uwagę, że jeżeli w liście mamy zagnieżdżone sublisty, to obiekty obecne na sublistach nie należą do listy. Np. jeżeli mamy listę (1 2 (3 4)), to do listy należą 1, 2 oraz (3 4), ale 3 i 4 należą już tylko do sublisty.

Bloki listowe (4).png

długość listy

Zwraca liczbę, która wyraża liczbę obiektów na liście.

Bloki listowe (5).png

czy lista jest pusta?

Jeśli lista nie posiada żadnych obiektów, zwracana jest prawda, w innym wypadku otrzymujemy fałsz.

Bloki listowe (6).png

pobierz losowy obiekt

Pobiera z listy losowy obiekt.

Bloki listowe (7).png

pozycja na liście

Zwraca pozycję obiektu podanego w polu thing na liście. Jeżeli na liście nie ma szukanego obiektu, otrzymamy wartość 0.


Bloki listowe (8).png

wybierz obiekt z listy

Wybiera obiekt z listy na podstawie jego pozycji podanej polu index. Pierwszy obiekt na liście zajmuje pozycję 1. drugi pozycję 2. itd.

Bloki listowe (9).png

wstaw obiekt na listę

Umieszcza obiekt (item) na wyznaczonej pozycji (index) na liście.

Bloki listowe (10).png

wymień obiekt na liście

Wstawia obiekt podany w polu replacemenet na listę w miejscu oznaczonym w index. Poprzedni obiekt, który znajdował się na liście w tym miejscu zostanie usunięty.

Bloki listowe (11).png

usuń obiekt z listy

Usuwa z listy obiekt o ustalonej przez nas pozycji.

Bloki listowe (12).png

dołącz do listy

Dodaje obiekty z drugiej listy na koniec pierwszej listy.

Bloki listowe (13).png

skopiuj listę

Tworzy kopię listy, kopiując również wszystkie zagnieżdżone w niej sublisty.

Bloki listowe (14).png

czy obiekt jest listą?

Sprawdza, czy obiekt w polu thing jest listą. Jeśli tak, otrzymujemy prawdę, w przeciwnym razie otrzymamy fałsz.

Bloki listowe (15).png

zamień listę na wiersz CSV

CSV (comma-separated value) to format przechowywania danych tekstowych jako wartości oddzielone przecinkiem. Ten blok interpretuje listę jako jeden wiersz tabeli i konwertuje oraz zwraca jej zawartość w formacie CSV. W rezultacie każda pozycja na liście uważana jest za oddzielne pole i jest zapisana w cudzysłowie. Np. jeśli mamy listę (a b c d), to po przekonwertowaniu listy otrzymamy tekst w formacie CSV, czyli ("a", "b", "c", "d"). Warto zwrócić uwagę, że na końcu nie ma znaku separatora, czyli przecinka.


Bloki listowe (16).png

zamień wiersz CSV na listę

Działanie tego bloku jest odwrotne do bloku poprzedniego. Zatem tutaj musimy dostarczyć jeden wiersz tekstu w formacie CSV, by otrzymać listę. Np. tekst ("a", "b", "c", "d") zostanie przekonwertowany na listę (a b c d).

Bloki listowe (17).png

zamień listę na tabelę CSV

Interpretuje listę jako tabelę w formacie wiersza row-major i zwraca ją jako tekst w formacie CSV, który reprezentuje całą tabelę. W tym przypadku każda pozycja na liście reprezentuje jeden wiersz tabeli CSV. Ponadto każda pozycja uważana jest za pole i jest zapisana w cudzysłowie. W otrzymanym tekście elementy w wierszach będą oddzielone przecinkami, zaś same wiersze oddzielone są znakiem CRLF, które oznaczają koniec bieżącej linii i przejście do początku następnej (\ r \ n).

Bloki listowe (18).png

zamień tabelę CSV na listę

Przetwarza tabelę w formacie CSV na listę wierszy, gdzie każdy z wierszy jest kolejną listą pól. Wiersze mogą być oddzielone znakami nowej linii (\ n) lub CRLF (\ r \ n).

Bloki listowe (19).png

wyszukiwanie parami

Blok używany w wyszukiwania informacji w formie podobnej do słownika, reprezentowanej w postaci listy. Ta operacja ma trzy wejścia: klucz (key), listę par (pairs) oraz brak rezultatu, który domyślnie ustawiony jest jako nie znaleziono (not found). Tutaj pary muszą być listą par, to znaczy listą, gdzie każdy element jest listą złożoną z dwóch elementów. Ten blok odszukuje pierwszą parę na liście, gdzie pierwszy element pary jest kluczem, a drugi jest zwracany w postaci wyniku. Na przykład jeśli mamy listę ((a arbuz) (b banan) (c czereśnia) (kot 100)), to szukając b otrzymamy banan. Jeśli żadna para nie zostanie odnaleziona, wówczas otrzymamy brak rezultatu, czyli domyślnie not found. Jeśli pary nie będą wprowadzone w formie list, to operacja zwróci błąd.


Bloki listowe (20).png