python: comment écrire de très longues lignes de code?
si j'ai une très longue ligne de code, est-il possible de continuer sur la ligne suivante, par exemple:
url='http://chart.apis.google.com/chart?chxl=1:|0|10|100|1,000|10,000|'
+ '100,000|1,000,000&chxp=1,0&chxr=0,0,' +
max(freq) + '300|1,0,3&chxs=0,676767,13.5,0,l,676767|1,676767,13.5,0,l,676767&chxt=y,x&chbh=a,1,0&chs=640x465&cht=bvs&chco=A2C180&chds=0,300&chd=t:'
source d'informationauteur l--''''''---------'''''''''''' | 2010-08-03
Vous devez vous connecter pour publier un commentaire.
Je voudrais écrire comme ceci
Noter que le
+
ne sont pas tenus de rejoindre les cordes. Il est mieux de cette façon parce que les cordes sont joints au moment de la compilation, au lieu de l'exécution.J'ai également intégré à l'
%(max_freq)s
dans votre chaîne, c'est substituée à de ladict
à la finÉgalement vérifier
urllib.la fonction urlencode()
si vous voulez faire de votre gestion des url plus simpleOù chercher de l'aide dans le futur
La plupart des problèmes de syntaxe de ce genre sont traitées dans PEP 8. Pour la réponse à cette question, vous pouvez vous référer à la section "Code de Mise en page".
Manière préférée : Utilisation
()
{}
&[]
De la PEP-8:
Cela signifie que votre exemple, aimeraient comme ceci:
L'autre façon de faire:
\
De la PEP-8:
En évitant de concaténation
Mise en forme de chaîne
Dans ce cas, nous n'avons qu'une seule et unique chose que nous aimerions être changé dans l'URL:
max(freq)
. Pour insérer efficacement dans une nouvelle chaîne, nous pouvons utiliser laformat
méthode avec des valeurs numériques ou des arguments nommés:Python combine deux chaînes littérales ensemble, donc
mais qui ne fonctionnent pas si elles sont sur deux lignes parce que Python ne sait pas que la ligne suivante est la partie de la commande. Pour résoudre ce que vous pouvez utiliser la barre oblique inverse ou des crochets.
et vous n'auriez pas besoin
+
pour attacher les cordes en même temps. Vous aurez toujours besoin pour l'ajout de nonliterals commemax(freq)
comme expliqué dans Un Littéral De Chaîne De Concaténation. C'est un peu plus efficace, mais plus important encore, plus clair et permet de commenter des parties d'une chaîne de caractères, comme indiqué dans la documentation Python liés.Oui, utiliser une barre oblique inverse
\
comme suit:Ou enveloppez-vous dans une expression avec parenthèses
()
: