Analiza słów
Część sekcji Logika i przepływ programu ścieżki GDScript w Coddy. Lekcja 77 z 78.
Wyzwanie
TrudnyNapisz funkcję analyze_text(text) powyżej _ready(). Analizuje ona słowa tekstu i zwraca słownik. Podana funkcja _ready() odczytuje jeden wiersz tekstu, wywołuje Twoją funkcję i wyświetla wynik.
Najpierw przygotuj słowa:
- Wielkość liter nie ma znaczenia:
Helloihelloto to samo słowo, więc pracuj na małych literach - Usuń z tekstu te znaki:
. , ! ? : ; " ( ) - Słowa są oddzielone spacjami, a pusty tekst nie zawiera żadnych słów
Zwróć słownik z trzema kluczami, w tej kolejności:
"unique_count": liczba różnych słów"repeated_words": tablica słów, które występują więcej niż raz"palindromes": tablica różnych słów, które czytane wspak brzmią tak samo, takich jaklevelluba
Każde słowo występuje w tablicy tylko raz, a obie tablice są posortowane alfabetycznie. Dla poniższego tekstu:
Madam saw a racecar. Dad said hello hello to mom.wynik to:
{ "unique_count": 9, "repeated_words": ["hello"], "palindromes": ["a", "dad", "madam", "mom", "racecar"] }Spróbuj swoich sił
extends Node
func analyze_text(text: String):
# Napisz tutaj swój kod
pass
func _ready():
var text := OS.read_string_from_stdin()
print(analyze_text(text))
Wszystkie lekcje w sekcji Logika i przepływ programu
1Łańcuchy znaków — zagadnienia zaawansowane
Metody łańcuchów znakówWyszukiwanie w łańcuchach znakówZastępowanie i przycinanieDzielenie i łączeniePodsumowanie — sprawdzanie nazwy użytkownika4Słowniki, część 2
Zagnieżdżone słownikiTablice słownikówŁączenie słownikówKopiowanie słownikówPodsumowanie – licznik częstotliwości7Typy wyliczeniowe
Czym jest typ wyliczeniowy?Definiowanie typu wyliczeniowegoWartości typu wyliczeniowegoTypy wyliczeniowe w matchPowtórka – sygnalizacja świetlna10Zaawansowane funkcje
Zwracanie wielu wartościFunkcje lambda — część 1Funkcje lambda — część 2Powtórka — sortowanie za pomocą lambdaFunkcje rekurencyjne — część 1Funkcje rekurencyjne — część 2Powtórka — sumowanie zagnieżdżonej tablicy13System zarządzania zapasami
Omówienie projektuDodawanie produktu2Zaawansowane podejmowanie decyzji
Dopasowanie ze zmiennymiStrażnicy dopasowaniaWzorce tablicWzorce słownikówSprawdzanie przynależnościPowtórka — parser poleceń5Aplikacja książki kontaktów
Wyświetlanie menuDodawanie kontaktu8Menedżer danych studentów
Przegląd projektuDodaj studenta3Tablice wielowymiarowe
Podstawy tablic 2DDostęp do elementów tablic 2DPętle zagnieżdżone z tablicami 2DPodsumowanie — tablice 2DTablice postrzępioneTypowe wzorce tablic 2DPodsumowanie — plansza do gry6Zbiory ze słownikami
Czym jest zbiór?Słownik jako zbiórDodawanie i usuwanieSuma i część wspólnaRóżnica zbiorówPowtórka – usuwanie duplikatów9Zaawansowana agregacja danych
Sumowanie wartościZnajdowanie minimum i maksimumSortowanie niestandardowePodsumowanie – Sortownik słownikówPoćwicz samodzielnie: Kompilator GDScript online