Написання довгих рядків тексту в кілька рядків у Python

Бізнес

Якщо ви використовуєте PEP8-сумісний засіб перевірки коду, наприклад flake8 в Python, ви отримаєте таку помилку, коли рядок перевищує 80 символів.
E501 line too long

Я покажу вам, як розбити довгий рядок із понад 80 символів, наприклад URL-адресу, на кілька рядків коду.

  • Ігнорувати розриви рядків із зворотною косою рискою (\)
  • Розриви рядків можна вільно вкладати в дужки

Крім того, модуль textwrap корисний, якщо ви хочете вивести та відобразити довгі рядки, обгортаючи або скорочуючи їх.

Якщо кількість символів у рядку в ланцюжку методів більше, ніж у довгому рядку, рядок також може бути розірваний у коді.

Ігнорувати розриви рядків із зворотною косою рискою (\)

У Python зворотна скісна риска (\) є символом продовження, і коли вона розміщується в кінці рядка, вона ігнорує наступні розриви рядка і припускає, що рядок продовжується.

n = 1 + 2 \
    + 3

print(n)
# 6

Крім того, коли кілька рядкових літералів записуються послідовно, вони об’єднуються в один рядок, як показано нижче.

s = 'aaa' 'bbb'

print(s)
# aaabbb

Поєднуючи ці два, довгий рядок можна записати в кілька рядків коду, як показано нижче.

s = 'https://ja.wikipedia.org/wiki/'\
    '%E3%83%97%E3%83%AD%E3%82%B0%E3%83'\
    '%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E'

print(s)
# https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E

Зауважте, що лише рядкові літерали (заключені в ‘ або “”) можна об’єднати, а змінні, що містять рядки, призведуть до помилки.

s_var = 'xxx'

# s = 'aaa' s_var 'bbb'
# SyntaxError: invalid syntax

Щоб об’єднати змінні одна з одною або змінні в рядкові літерали, використовуйте оператор +.

s = 'aaa' + s_var + 'bbb'

print(s)
# aaaxxxbbb

Навіть якщо розділено зворотною косою рискою (\), оператор + необхідний для об’єднання змінних.

s = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'\
    + s_var\
    + 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'

print(s)
# aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

Розриви рядків можна вільно вкладати в дужки

У Python ви можете вільно розбивати рядки в наступних дужках. Ви можете використовувати це правило, щоб укладати довгі рядки тексту в дужки.

  • ()
  • {}
  • []

Зверніть увагу, що деякі дужки використовуються іншими способами, як показано нижче, тому використовуйте круглі дужки () для такого використання.

  • {}Комплект: Комплект
  • []: Список

Знову ж таки, використовуючи той факт, що кілька рядків можна об’єднати разом, щоб утворити один рядок, ми можемо написати наступне

s = ('https://ja.wikipedia.org/wiki/'
     '%E3%83%97%E3%83%AD%E3%82%B0%E3%83'
     '%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E')

print(s)
# https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E

Як і в прикладі зі зворотною косою рискою, оператор + необхідний, коли включені змінні.

s = ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
     + s_var
     + 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb')

print(s)
# aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb