È possibile spezzare una lunga linea in più linee in Python

Proprio come in C, si può spezzare una lunga linea in più linee brevi. Ma in Python, se faccio questo, ci sarà un errore di rientro... È possibile?

Soluzione

Da PEP 8 - Guida allo stile per il codice Python:

Il modo preferito di avvolgere le linee lunghe è usando la linea implicita di Python

continuazione all'interno di parentesi, parentesi e parentesi graffe. Se necessario, si potete aggiungere un'ulteriore coppia di parentesi attorno ad un'espressione, ma a volte usare un backslash sembra migliore. Assicurati di far rientrare la linea continuata in modo appropriato.

Esempio di continuazione implicita della linea:

a = some_function(
    '1' + '2' + '3' - '4')

Sul tema delle interruzioni di riga intorno a un operatore binario, continua a dire:-

Per decenni lo stile raccomandato era di interrompere dopo gli operatori binari. Ma questo può danneggiare la leggibilità in due modi: gli operatori tendono ad essere sparsi in diverse colonne sullo schermo, e ogni operatore è spostato lontano dal suo operando e sulla linea precedente.

Nel codice Python, è permesso interrompere prima o dopo un operatore binario, finché la convenzione è coerente a livello locale. Per il nuovo codice si suggerisce lo stile di Knuth's (interruzioni di linea prima dell'operatore).

Esempio di continuazione di linea esplicita:

a = '1'   \
    + '2' \
    + '3' \
    - '4'
Commentari (3)

Funziona anche in Python:

>>> 1+\
      2+\
3
6
>>> (1+
          2+
 3)
6
Commentari (0)

Per quanto ne so, si può fare. Python ha una continuazione di linea implicita (all'interno di parentesi, parentesi e stringhe) per le stringhe triple-citate (""""come questo""")e l'indentazione delle linee di continuazione non è importante. Per maggiori informazioni, potreste voler leggere questo articolo sull'analisi lessicale, da python.org.

Commentari (1)