Python тілінде flake8 сияқты PEP8 үйлесімді код тексерушісін пайдалансаңыз, жол 80 таңбадан асқанда келесі қатені аласыз.E501 line too long
Мен сізге URL сияқты 80 таңбадан тұратын ұзын жолды бірнеше код жолына қалай бөлуге болатынын көрсетемін.
- Кері қиғаш сызықтары бар жол үзілімдерін елемеу (\)
- Жол үзілімдерін жақшаға еркін алуға болады
Сондай-ақ, мәтінді айналдыру модулі оларды орау немесе қысқарту арқылы ұзын жолдарды шығару және көрсету қажет болса пайдалы.
Егер жолдағы таңбалар саны ұзын жолға қарағанда әдіс тізбегінде ұзағырақ болса, жолды кодта да үзуге болады.
Кері қиғаш сызықтары бар жол үзілімдерін елемеу (\)
Python тілінде кері қиғаш сызық (\) жалғас таңба болып табылады және жолдың соңына орналастырылған кезде ол келесі жол үзілімдерін елемейді және жол жалғасып жатыр деп есептейді.
n = 1 + 2 \
+ 3
print(n)
# 6
Сондай-ақ, бірнеше жол литералдары ретімен жазылғанда, олар төменде көрсетілгендей бір жолды құру үшін біріктіріледі.
s = 'aaa' 'bbb'
print(s)
# aaabbb
Екеуін біріктіре отырып, төменде көрсетілгендей ұзын жолды бірнеше код жолында жазуға болады.
s = 'https://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://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 тілінде келесі жақшалар ішіндегі жолдарды еркін бұзуға болады. Бұл ережені мәтіннің ұзын жолдарын жақшаға алу үшін пайдалануға болады.
()
{}
[]
Төмендегі жақшалардың мағынасы бар екенін ескеріңіз.
{} = set
[] = list
Осы себепті ұзын жолды бірнеше жолға жазғанда дөңгелек жақшаларды () пайдаланыңыз.
Тағы да, бір жолды құру үшін бірнеше жолдарды біріктіруге болатынын пайдаланып, біз келесіні жаза аламыз
s = ('https://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://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