Ef þú notar PEP8-samhæfan kóðaprófara eins og flake8 í Python færðu eftirfarandi villu þegar lína fer yfir 80 stafi.E501 line too long
Ég mun sýna þér hvernig á að brjóta langan streng sem er meira en 80 stafir, eins og vefslóð, í margar línur af kóða.
- Hunsa línuskil með bakstökkum (\)
- Hægt er að setja línuskil frjálslega innan sviga
Einnig er textumbrotseiningin gagnleg ef þú vilt gefa út og sýna langa strengi með því að vefja eða stytta þá.
Ef fjöldi stafa í línu er lengri í aðferðarkeðju en í löngum streng, er líka hægt að brjóta línuna í kóðanum.
Hunsa línuskil með bakstökkum (\)
Í Python er bakskástrikið (\) framhaldsstafur, og þegar það er sett í lok línu, hunsar það síðari línuskil og gerir ráð fyrir að línan haldi áfram.
n = 1 + 2 \
+ 3
print(n)
# 6
Einnig, þegar margir bókstafir strengja eru skrifaðir í röð, eru þeir samtengdir til að mynda einn streng eins og sýnt er hér að neðan.
s = 'aaa' 'bbb'
print(s)
# aaabbb
Með því að sameina þetta tvennt er hægt að skrifa langan streng í margar línur af kóða, eins og sýnt er hér að neðan.
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
Athugaðu að aðeins er hægt að sameina strengjabókstafi (innifalið í ‘ eða „“) og breytur sem innihalda strengi munu leiða til villu.
s_var = 'xxx'
# s = 'aaa' s_var 'bbb'
# SyntaxError: invalid syntax
Til að sameina breytur hver við aðra eða breytur í strengjabókstafi, notaðu + aðgerðina.
s = 'aaa' + s_var + 'bbb'
print(s)
# aaaxxxbbb
Jafnvel þegar hann er aðskilinn með skástrik (\), þarf + stjórnandinn til að sameina breytur.
s = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'\
+ s_var\
+ 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb'
print(s)
# aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
Hægt er að setja línuskil frjálslega innan sviga
Í Python geturðu frjálslega brotið línur innan eftirfarandi sviga. Þú getur notað þessa reglu til að setja langa textastrengi innan sviga.
()
{}
[]
Athugaðu að sumir sviga eru notaðir á annan hátt, eins og sýnt er hér að neðan, svo notaðu hringlaga sviga () fyrir slíka notkun.
{}
Sett: Sett[]
: Listi
Aftur, með því að nota þá staðreynd að hægt er að tengja marga strengi saman til að mynda einn streng, getum við skrifað eftirfarandi
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
Eins og í dæminu með bakskástrikinu er + stjórnandinn nauðsynlegur þegar breytur eru teknar með.
s = ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
+ s_var
+ 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb')
print(s)
# aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb