En Python, lors de l’utilisation de vérificateurs de code PEP8 comme flake8, une erreur E501 𝐥𝐢𝐧𝐞 𝐭𝐨𝐨 𝐥𝐨𝐧𝐠 est déclenchée lorsqu’une ligne dépasse le dépassement de 80 caractères.
Cet article explique comment diviser une chaîne longue en plusieurs lignes sans inclure de caractère de nouvelle ligne.
Consultez l’article suivant pour connaître les différentes opérations liées aux chaînes avec des sauts de ligne.
Si vous souhaitez envelopper ou tronquer de longues chaînes, le module 𝐭𝐞𝐱𝐭𝐰𝐫𝐚𝐩 est utile.
Si une ligne devient trop longue en raison du chaînage de méthodes, consultez l’article suivant.
Caractère de continuation de ligne en Python : barre oblique inverse ( \ )
En Python, une barre oblique inverse ( \ ) est un caractère de continuation de ligne. Si une barre oblique inverse est placée à la fin d’une ligne, la ligne est considérée comme se poursuivant sur la ligne suivante.
n = 1 + 2 \ + 3 print(n) # 6
De plus, si plusieurs littéraux de chaîne sont écrits séquentiellement, ils sont concaténés en une seule chaîne.
s = 'aaa' 'bbb' print(s) # aaabbb
Vous pouvez donc diviser une chaîne longue en plusieurs lignes comme suit.
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
Notez que seuls les littéraux de chaîne (chaînes entourées de ‘ ou « ) sont concaténés lorsqu’ils sont écrits successivement. Si vous écrivez des variables successivement sans opérateur, cela générera une erreur.
s_var = 'xxx' # s = 'aaa' s_var 'bbb' # SyntaxError: invalid syntax
Utilisez l’opérateur + pour concaténer des variables ou des variables et des littéraux de chaîne.
s = 'aaa' + s_var + 'bbb' print(s) # aaaxxxbbb
L’opérateur + est nécessaire pour concaténer des variables, même si une barre oblique inverse ( \ ) est utilisée entre elles.
s = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'\ + s_var\ + 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb' print(s) # aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
Pour plus de détails sur la concaténation de chaînes, consultez l’article suivant.
Utiliser des parenthèses pour la suite de la ligne
En Python, vous pouvez couper librement les lignes entre parenthèses ( () , {} , [] ). Vous pouvez utiliser cette règle pour diviser une longue chaîne en plusieurs lignes en utilisant des parenthèses au lieu de barres obliques inverses.
Puisque {} est utilisé pour les ensembles et [] pour les listes, utilisez () à cette fin. Notez que les tuples sont définis par des virgules, et non par () .
Vous pouvez écrire comme suit.
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
Si les variables sont incluses, vous avez besoin de l’opérateur + .
s_var = 'xxx' s = ('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' + s_var + 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb') print(s) # aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
