Wyjaśnienie lekcji
Po tej lekcji będziesz potrafić:
str(), gdy łączenie napisów wymaga zamiany na tekst.sep i end.\n oraz proste linie oddzielające przez powielanie napisów..2f.Python używa print(), aby wysyłać wartości do konsoli. Jedno wywołanie może wypisać tekst, liczby albo kilka wartości naraz:
print("Retries:", 3)Gdy print() otrzymuje kilka wartości, zamienia je na postać do wyświetlenia i domyślnie wstawia między nimi spację. Oznacza to, że zwykle nie potrzebujesz str() tylko po to, żeby wypisać liczbę.
str() jest potrzebne, gdy łączysz tekst z liczbą za pomocą +, ponieważ łączenie napisów wymaga, aby obie strony były napisami:
"Port: " + str(8080)Przy opisanych wynikach f-stringi są zwykle czytelniejsze:
port = 8080
print(f"Port: {port}")sep zmienia to, co pojawia się między kolejnymi wypisywanymi wartościami, a end zmienia to, co pojawia się po wywołaniu print(). Domyślnym separatorem jest jedna spacja, a domyślnym zakończeniem — znak nowej linii.
Użyj \n, gdy pojedynczy napis ma zawierać jawny podział wiersza. Powielanie krótkiego napisu za pomocą * przydaje się do prostych linii oddzielających w konsoli. Do wyświetlania liczb dziesiętnych format taki jak .2f pokazuje dokładnie dwie cyfry po przecinku.
Przekaż do print() kilka wartości, gdy chcesz, aby Python wyświetlił je ze spacją pomiędzy nimi.
retry_limit = 4
print("Retry limit:", retry_limit)Wynik:
Retry limit: 4Python wyświetla liczbę całkowitą bezpośrednio. Jawna konwersja nie jest potrzebna.
Operator + potrafi łączyć napisy tylko z napisami, więc liczbę trzeba najpierw zamienić.
port = 8080
message = "Port: " + str(port)
print(message)Wynik:
Port: 8080f-string jest zwykle czytelniejszy przy takim wypisywaniu, ale zrozumienie str() pomaga rozpoznawać i naprawiać błędy typów.
Umieść zmienną w {}, aby wstawić jej bieżącą wartość do tekstu.
environment = "staging"
print(f"Environment: {environment}")Wynik:
Environment: stagingLitera f przed otwierającym cudzysłowem informuje Pythona, że wartości w nawiasach klamrowych mają zostać obliczone.
sepsep zastępuje domyślną spację między wartościami przekazanymi do tego samego wywołania print().
print("frontend", "api", "worker", sep=" -> ")Wynik:
frontend -> api -> workerSeparator jest wstawiany wyłącznie między wartościami.
endDomyślnie print() kończy się znakiem nowej linii. Zmień end, gdy następne wywołanie ma kontynuować ten sam wiersz.
print("Upload", end="... ")
print("complete")Wynik:
Upload... completeDrugie print() zaczyna się od razu po niestandardowym zakończeniu z pierwszego wywołania.
Użyj \n dla jawnego podziału wiersza wewnątrz jednego napisu. Użyj *, aby powtórzyć krótki napis.
print("-" * 12)
print("Build passed\nArtifacts ready")Wynik:
------------
Build passed
Artifacts readyPierwszy wiersz powtarza - dwanaście razy. Znak \n dzieli drugi napis na dwa wiersze.
Użyj .2f w f-stringu, aby wyświetlić liczbę z dwiema cyframi po przecinku.
response_time = 18.456
print(f"Average response: {response_time:.2f} ms")Wynik:
Average response: 18.46 msFormatowanie zmienia tylko sposób wyświetlania wartości; nie zmienia oryginalnej zmiennej.
| Cel | Zalecany kod w Pythonie |
|---|---|
| Wypisanie kilku wartości | print(label, value) |
| Połączenie tekstu z liczbą | "Count: " + str(count) |
| Czytelny, opisany wynik | f"Count: {count}" |
| Zmiana separatora | `print(a, b, sep=" |
| Kontynuacja następnego wyniku w tym samym wierszu | print(text, end="...") |
| Pokazanie dwóch miejsc po przecinku | f"{amount:.2f}" |
+, jeśli liczba nie została wcześniej zamieniona przez str().sep z end: sep trafia między wartości, a end na koniec całego wywołania..2f zmienia zapisaną liczbę; steruje ono tylko wyświetlanym formatem.