Jak pisać ciągi wielowierszowe w Pythonie (potrójne cudzysłowy i łączenia)
Poznaj najlepsze sposoby pisania ciągów wielowierszowych w Pythonie. Poznaj potrójne cudzysłowy, łączenie nawiasów, metody łączenia nowej linii i kontrolę formatu.
Przegląd
Podczas pisania bloków tekstowych w aplikacji — takich jak zapytania SQL, szablony HTML, instrukcje CLI lub długie komunikaty debugowania — często konieczne będzie rozciągnięcie wartości łańcuchowych na wiele wierszy. Python oferuje kilka sposobów definiowania ciągów wielowierszowych, każdy z różnymi konsekwencjami formatowania.
Najbardziej bezpośrednim i powszechnym sposobem pisania ciągu wielowierszowego jest użycie składni z potrójnym cudzysłowem (albo ``'''' albo ``'''`). Ciągi z potrójnymi cudzysłowami dosłownie zachowują wszystkie wprowadzone znaki, łącznie z nieprzetworzonymi znakami nowej linii i wcięciami. Sprawia to, że formatowanie jest bardzo wizualne, ale ma tę wadę: wszelkie początkowe tabulatory lub spacje używane do wyrównywania kodu w zagnieżdżonych pętlach lub klasach staną się częścią rzeczywistej wartości ciągu.
Aby zdefiniować ciąg wielowierszowy, który wizualnie rozciąga się na wiele wierszy kodu źródłowego, ale jest skompilowany w jedną długą linię (lub nie przechwytuje białych znaków wcięcia kodu), można ująć w nawiasy standardowe ciągi z pojedynczym cudzysłowem. Python automatycznie łączy sąsiednie literały ciągu w nawiasach, dzięki czemu Twój kod jest przejrzysty i bardzo czytelny.
Dane wyjściowe kodu i wykonania
Ten skrypt demonstruje pisanie tekstu wielowierszowego przy użyciu potrójnych cudzysłowów, łączenia ciągów w nawiasach i czystych wcięć.
# 1. Triple Quote Syntax (preserves all newlines and indentation)
sql_query = """SELECT id, username, email
FROM users
WHERE active = True
ORDER BY id DESC;"""
print("--- Triple Quotes Query ---")
print(sql_query)
# 2. Parentheses Concatenation (splits code line, compiles into single line)
long_message = (
"This is a long message that we split "
"across multiple lines in our editor, "
"but it compiles into a single text block."
)
print("\n--- Parentheses Concatenation ---")
print(long_message)
# 3. Joining list elements for clean line breaks
lines = [
"First instruction line.",
"Second instruction line.",
"Third instruction line."
]
joined_text = "\n".join(lines)
print("\n--- Joined Lines ---")
print(joined_text)--- Triple Quotes Query ---
SELECT id, username, email
FROM users
WHERE active = True
ORDER BY id DESC;
--- Parentheses Concatenation ---
This is a long message that we split across multiple lines in our editor, but it compiles into a single text block.
--- Joined Lines ---
First instruction line.
Second instruction line.
Third instruction line.Wdrażanie krok po kroku
- Używaj potrójnych cudzysłowów („” lub „”), aby pisać długie bloki tekstu, które zachowują dosłowne znaki nowej linii.
- Zawijaj kolejne ciągi w nawiasach ( ) bez przecinków, aby wizualnie podzielić kod bez dodawania znaków nowej linii do danych wyjściowych.
- Użyj metody textwrap.dedent() podczas pracy z potrójnymi cudzysłowami wewnątrz klas lub funkcji, aby wyczyścić wcięcia początkowe.
Często zadawane pytania
Jak usunąć wcięcie początkowe z zagnieżdżonego ciągu z potrójnym cudzysłowem?
Zaimportuj wbudowany moduł zawijania tekstu i przekaż ciąg znaków do metody textwrap.dedent(text), aby wyczyścić spacje wiodące.
Jaka jest różnica między pojedynczymi i podwójnymi potrójnymi cudzysłowami?
Nie ma funkcjonalnej różnicy pomiędzy „” i „”. Wybierz jedną konwencję i trzymaj się jej konsekwentnie w całym projekcie.
Powiązane tematy
Poznaj najlepsze techniki formatowania ciągów w Pythonie. Porównaj nowoczesne f-stringi, format() i formatowanie procentowe z przykładami kodu.
Jak przekonwertować listę na ciąg w PythonieDowiedz się, jak konwertować listy ciągów lub liczb na pojedynczy ciąg w języku Python. Opanuj metodę Join(), konwersje map i niestandardowe formatowanie.
Polecane zasoby Pythona
Poszerzaj swoją wiedzę dzięki powiązanym interaktywnym samouczkom, ściągawkom i porównaniom kodów.
Ciągi Pythona
Manipulacja ciągami głównymi w Pythonie. Poznaj metody ciągów, wycinanie, łączenie i techniki formatowania dzięki przejrzystym, wykonywalnym przykładom kodu.
Ściągawka dotycząca metod ciągów w Pythonie
Kompletny przewodnik dotyczący manipulacji ciągami znaków w języku Python. Opanuj formatowanie, wyszukiwanie, dzielenie, zastępowanie i sprawdzanie właściwości ciągów.
Python kontra JavaScript: który język programowania jest najlepszy?
Kompleksowe porównanie Pythona i JavaScript. Poznaj różnice w składni, wydajność, przypadki użycia (backend vs frontend) i przykłady kodowania.