12 Stimmen

PEP8 - 80 Zeichen - Große ganze Zahlen

Dies steht im Zusammenhang mit Frage zu großen Strings und PEP8 .

Wie kann ich mein Skript mit der folgenden Zeile PEP8-konform machen (Regel "Maximale Zeilenlänge")?

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

0 Stimmen

@Anon: Wie? (Ich bin genauso kryptisch!)

0 Stimmen

Ich bin mit der Python-Syntax nicht allzu vertraut, aber wenn man davon ausgeht, dass es möglich ist, in dieser Deklaration eine Arithmetik auszuführen, würde sie etwa so lauten 32268333626801261010362 * pow(10, howevermany) und fügen dann in jeder weiteren Zeile mehr hinzu.

4 Stimmen

Mit Hexadezimal lassen sich ein paar Zeichen einsparen... aber im Ernst, PEP8 ist ein Stil Leitfaden kein Stil Regel .

22voto

GmonC Punkte 10923

Aber das Wichtigste ist, zu wissen, wann man inkonsequent zu sein - manchmal ist der Stil Leitfaden einfach nicht anwendbar. Im Zweifelsfall Zweifel nach bestem Wissen und Gewissen.

fuente

In diesem Fall würde ich die großen ganzen Zahlen einfach so lassen, wie sie sind.

5voto

danben Punkte 77356
'e': 3226833362680126101036263622033066816222202666130162062116461326212012L \
     * 10**45 \
     + 222403311326222666622610430466620224662364142L

Ich unterstütze dies in keiner Weise.

5voto

nosklo Punkte 204121

Der beste Weg, den ich mir vorstellen kann, ist

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

genau 80 Zeichen.

3 Stimmen

Eine zusätzliche Funktion aufzurufen, nur um einem Styleguide zu folgen, ist IMHO übertrieben. Interessante Lösung aber.

2voto

James Polley Punkte 7659

Ich glaube nicht, dass Sie das können. Die Leitlinien in PEP8 sind Leitlinien. Es gibt Situationen, in denen es einfach nicht möglich ist, die Leitlinien zu befolgen.

2voto

Ipsquiggle Punkte 1794

Dies importieren

... Sonderfälle sind nicht besonders genug, um die Regeln zu brechen. Obwohl die Praktikabilität die Reinheit übertrifft. ...

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X