Python • kurs podstawowy • lekcja 06
Napisy i f-stringi
Chcesz wyświetlić etykietę gracza z inicjałem i liczbą punktów.
Twój cel: Odczytasz znak napisu i utworzysz komunikat z użyciem f-stringa.Zmienne i typ str.
Od potrzeby do kodu
str przechowuje tekst. Indeks w nawiasach kwadratowych wybiera znak; pierwszy ma numer 0. len() podaje liczbę znaków w prostych napisach użytych tutaj. Dla napisu długości 3 nieujemne indeksy to 0, 1 i 2.
f-string zaczyna się literą f przed cudzysłowem. Wyrażenia w klamrach są obliczane i wstawiane do komunikatu. Bez f klamry są zwykłym tekstem. Wewnątrz klamer możesz odczytać zmienną albo wykonać proste działanie.
Napisy są niemutowalne: nie można przypisać nowej litery do name[0]. Operacje przekształcające tekst tworzą nowe napisy. Nie myl ich z modyfikacją znaków w istniejącym napisie.
Przewidź przed uruchomieniem
name = "Ola"
points = 8
print(name[0])
print(len(name))
print(f"{name}: {points + 2} pkt")
Porównaj wynik i prześledź mechanizm
O, 3 oraz Ola: 10 pkt. Wyrażenie points + 2 jest obliczone wewnątrz f-stringa, ale nie ma przypisania do points; ta zmienna nadal ma wartość 8.
Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:
O
3
Ola: 10 pkt
| Indeks | 0 | 1 | 2 |
|---|---|---|---|
| Znak | O | l | a |
Zmień działający program
Zamiast pierwszego znaku pokaż ostatni przez name[len(name) - 1]. Użyj niepustego imienia i wyjaśnij odejmowanie 1.
Pierwsza wskazówka
Zachowaj działający punkt wyjścia. Zlokalizuj konstrukcję wskazaną w poleceniu i zmień tylko ten etap. Przed uruchomieniem zapisz oczekiwany efekt.
Porównaj swoją modyfikację
name = "Ola"
print(name[len(name) - 1])
Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:
a
Znajdź przyczynę problemu
Celowo błędny przykład diagnostyczny. Najpierw postaw hipotezę. Nie kopiuj tej wersji jako poprawnego rozwiązania.
Zamierzone działanie: Wyświetl powitanie z imieniem Ola.
name = "Ola"
print("Cześć, {name}!")
Trop do diagnozy
Porównaj zamierzony rezultat z typami, nazwami i kolejnością instrukcji. Wskaż pierwsze miejsce, w którym zachowanie odbiega od celu.
Zastosuj w nowej sytuacji
Wskazówka do rozpoczęcia
Indeks wybiera znak. F-string buduje nowy tekst i sam nie zmienia wartości zmiennych.
Zacznij od przygotowania danych. Pierwsza instrukcja przykładowego rozwiązania:
title = "Atlas"
Rozwiązanie do samodzielnej kontroli
title = "Atlas"
pages = 120
print(f"{title} ({title[0]}): {pages} stron")
Wynik kontrolny dla danych z przykładu. Wpisane odpowiedzi użytkownika nie są tutaj powtarzane:
Atlas (A): 120 stron
Porównaj dane wejściowe, wynik i powód użycia konstrukcji. Inna wersja kodu jest poprawna, jeśli realizuje te same wymagania.
Co zabierasz do kolejnego programu?
Indeks wybiera znak. F-string buduje nowy tekst i sam nie zmienia wartości zmiennych.
Bez zaglądania do przykładu wyjaśnij własnymi słowami, jak główna konstrukcja prowadzi od danych do wyniku. Potem sprawdź wyjaśnienie, uruchamiając swój program.