Ако користите програм за проверу кода усклађен са ПЕП8, као што је флаке8 у Питхон-у, добићете следећу грешку када линија премаши 80 знакова.E501 line too long
Показаћу вам како да разбијете дугачак низ од више од 80 знакова, као што је УРЛ, у више редова кода.
- Занемари преломе редова са обрнутим косим цртама (\)
- Преломи линија могу се слободно ставити у заграде
Такође, модул тектврап је користан ако желите да испишете и прикажете дугачке низове тако што ћете их премотати или скраћивати.
Ако је број знакова у линији дужи у ланцу метода него у дугом низу, линија може бити прекинута и у коду.
Занемари преломе редова са обрнутим косим цртама (\)
У Питхон-у, обрнута коса црта (\) је карактер за наставак, а када се постави на крај реда, игнорише наредне преломе реда и претпоставља да се линија наставља.
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
Преломи линија могу се слободно ставити у заграде
У Питхон-у можете слободно преломити линије унутар следећих заграда. Можете користити ово правило да ставите дугачке низове текста у заграде.
()
{}
[]
Имајте на уму да се неке заграде користе на друге начине, као што је приказано у наставку, па користите округле заграде () за такву употребу.
{}
Сет: Сет[]
: Листа
Опет, користећи чињеницу да се више стрингова може спојити заједно да формирају један низ, можемо написати следеће
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