PEP8 - 80 символов - большие целые числа

Это так или иначе связано с вопросом о больших строках и PEP8.

Как я могу сделать свой сценарий, который имеет следующую строку совместимый PEP8 ("Максимальное правило" Длины Строки)?

pub_key = {
   'e': 3226833362680126101036263622033066816222202666130162062116461326212012222403311326222666622610430466620224662364142L,
   'n': 226421003861041248462826226103022608220328242204422684232640331238220232226321616266146243302342688266846281802662666622213868114632268211186223606846623310006662260110460620201618186828411322260686632603226636226662262862212140221422102106336342228236361106240226122644614266186283436228208626640846820224661642086022346422443282224682686612228404266842316822624342226666622264826123822122031361242246432886612624262663222232331438863220022020826266366016100422L
}

12
задан Community 23 May 2017 в 10:34
поделиться

5 ответов

Но самое главное: знать, когда быть непоследовательный... иногда стиль руководство просто не применяется. Когда в сомневайтесь, используйте свои лучшие суждения.

источник

В этом случае я бы просто оставил большие целые числа как есть.

22
ответ дан 2 December 2019 в 04:02
поделиться

Лучший способ, которым я могу думать, это

pub_key = {
   'e': long('3226833362680126101036263622033066816222202666130162062116461326'
             '212012222403311326222666622610430466620224662364142'),
   'n': long('2264210038610412484628262261030226082203282422044226842326403312'
             '3822023222632161626614624330234268826684628180266266662221386811'
             '4632268211186223606846623310006662260110460620201618186828411322'
             '2606866326032266362266622628622121402214221021063363422282363611'
             '0624022612264461426618628343622820862664084682022466164208602234'
             '6422443282224682686612228404266842316822624342226666622264826123'
             '8221220313612422464328866126242626632222323314388632200220208262'
             '66366016100422'),
}

ровно 80 символов.

5
ответ дан 2 December 2019 в 04:02
поделиться
'e': 3226833362680126101036263622033066816222202666130162062116461326212012L \
     * 10**45 \
     + 222403311326222666622610430466620224662364142L

Я никак не поддерживаю это.

5
ответ дан 2 December 2019 в 04:02
поделиться

почему бы не использовать назначенное свойство для этого, т.е. AssemblyQualifiedName ? Это свойство документировано как «может быть сохранено и позже использовано для загрузки типа».

GUID предназначен для взаимодействия COM.

-121--2835590-

Это будет полностью зависеть от используемого инструментария графического интерфейса пользователя. Я почти уверен, что SWT, например, будет автоматически подобрать новые размеры (так как он использует собственные виджеты). AWT может быть также для всех, что я знаю. Можете ли вы указать, какой набор инструментов вы используете и определили ли вы, что он еще не делает то, что вы хотите (и, возможно, как)?

-121--3186121-

Я не думаю, что вы можете. Руководящие принципы в PEP8 являются руководящими принципами, есть ситуации, когда просто невозможно следовать руководящим принципам.

2
ответ дан 2 December 2019 в 04:02
поделиться

импортируйте это

... Особые случаи не являются достаточно особенными, чтобы нарушить правила. Хотя практичность превосходит чистоту. ...

2
ответ дан 2 December 2019 в 04:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: