Funkcja print()
🖨️ Funkcja print() w Pythonie – jak działa i co potrafi?
Jedną z pierwszych rzeczy, jakich uczymy się w Pythonie, jest polecenie:
print("Hello, world!")
To klasyczny przykład pierwszego programu, ale za tą prostą funkcją kryje się znacznie więcej.
W tym wpisie przyjrzymy się dokładnie temu, jak działa print(), jakie ma parametry i jak można z niej wycisnąć maksimum możliwości.
🧩 Co robi print()?
Funkcja print() służy do wyświetlania danych na ekranie (na tzw. standardowe wyjście).
Może to być tekst, liczba, wynik obliczenia, a nawet kilka wartości naraz.
print("Witaj w Pythonie!")
print(2 + 2)
print("Wynik to:", 2 + 2)
Wynik działania:
Witaj w Pythonie!
4
Wynik to: 4
⚙️ Składnia funkcji print()
Ogólna postać wygląda tak:
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
Omówmy po kolei najważniejsze parametry.
🧱 1. *objects – co chcesz wypisać
print() może przyjmować dowolną liczbę argumentów.
Każdy z nich zostanie przekształcony na tekst i wypisany w kolejności, w jakiej został podany.
print("Imię:", "Alicja", "Wiek:", 25)
Wynik:
Imię: Alicja Wiek: 25
🔤 2. sep – separator między elementami
Domyślnie print() oddziela elementy spacją, ale można to zmienić przy pomocy parametru sep.
print("A", "B", "C", sep="-")
Wynik:
A-B-C
To bardzo przydatne np. przy tworzeniu formatów CSV lub niestandardowych raportów.
↩️ 3. end – co dodać na końcu
Domyślnie każda instrukcja print() kończy się znakiem nowej linii (\n).
Można to zmienić:
print("To jest", end=" ")
print("ten sam wiersz.")
Wynik:
To jest ten sam wiersz.
Inny przykład:
for i in range(5):
print(i, end=", ")
Wynik:
0, 1, 2, 3, 4,
📂 4. file – gdzie wysłać dane
Zazwyczaj print() wypisuje na ekran (czyli do sys.stdout),
ale można przekierować wynik np. do pliku:
with open("log.txt", "w") as f:
print("Zapisano dane do pliku.", file=f)
Po uruchomieniu w pliku log.txt znajdzie się tekst:
Zapisano dane do pliku.
💨 5. flush – natychmiastowe wypisanie
Zazwyczaj Python buforuje dane przed ich wyświetleniem.
Ustawienie flush=True wymusza natychmiastowe wypisanie treści (np. przy logowaniu w czasie rzeczywistym):
import time
for i in range(3):
print(f"Postęp: {i+1}/3", end="\r", flush=True)
time.sleep(1)
🎨 Formatowanie tekstu z print()
Często chcemy łączyć tekst z danymi.
W Pythonie istnieje kilka sposobów:
🔸 F-string (najczęściej używany):
name = "Ola"
age = 22
print(f"Użytkownik {name} ma {age} lata.")
🔸 str.format():
print("Użytkownik {} ma {} lata.".format(name, age))
🔸 Konkatenacja:
print("Użytkownik " + name + " ma " + str(age) + " lata.")
🧠 Ciekawostki
-
print()zwraca zawszeNone– nie można więc przypisać jej wyniku do zmiennej. -
W Pythonie 2 funkcja
printbyła instrukcją, nie funkcją. W Pythonie 3 musi mieć nawiasy. -
Możesz wypisywać nawet struktury danych:
print([1, 2, 3]) print({"klucz": "wartość"})
🧭 Podsumowanie
Funkcja print() to coś więcej niż tylko narzędzie do debugowania.
Pozwala w prosty sposób prezentować dane, tworzyć raporty, debugować skrypty i logować działanie programu.
Najważniejsze, co warto zapamiętać:
| Parametr | Opis | Domyślna wartość |
|---|---|---|
sep |
Separator między elementami | ' ' |
end |
Znak końca linii | '\n' |
file |
Gdzie wysłać dane | sys.stdout |
flush |
Wymuszenie natychmiastowego wypisania | False |
🐍 Pro tip:
Gdy tworzysz większy projekt, zastanów się nad użyciem modułuloggingzamiastprint().
Daje on większą kontrolę nad poziomami komunikatów, formatowaniem i zapisem do plików.
Czy chcesz, żebym przygotował krótszą wersję tego wpisu (np. do mediów społecznościowych) lub rozszerzoną wersję z przykładami praktycznego zastosowania print() w debugowaniu?



Komentarze
Prześlij komentarz