Maison > développement back-end > Tutoriel Python > Pourquoi `print(value, end=' ')` provoque-t-il une SyntaxError dans Python 3.x ?

Pourquoi `print(value, end=' ')` provoque-t-il une SyntaxError dans Python 3.x ?

Mary-Kate Olsen
Libérer: 2024-11-09 14:45:02
original
1031 Les gens l'ont consulté

Why Does `print(value, end=' ')` Cause a SyntaxError in Python 3.x?

Dépannage de SyntaxError pour l'impression avec l'argument de mot-clé end='

Dans Python 3.x, utilisation de la syntaxe end=' " lors de l'appel de print () peut déclencher une SyntaxError. Ceci est souvent rencontré lors de la mise à niveau du code à partir de Python 2.x, où print est toujours traité comme une instruction plutôt que comme une fonction.

Explication

Dans Python 2.x , print est syntaxiquement une instruction et n'accepte donc pas d'arguments de mots clés. Par conséquent, print("foo" % bar, end=" ") est une syntaxe invalide et générera une SyntaxError.

Dans Python 3.x, cependant, print est mis à niveau vers une fonction, lui permettant de prendre des arguments de mots-clés, y compris la fin. Cela signifie que print("foo" % bar, end=" ") est désormais une syntaxe valide et attendue dans Python 3.x.

Résolution

Si vous Si vous rencontrez l'erreur SyntaxError dans Python 3.x, assurez-vous que vous utilisez la syntaxe correcte : print(value, end=" ").

Pour la portabilité du code, envisagez d'utiliser les idiomes suivants dans Python 2.x :

print("foo" % bar, )  # Add a trailing comma to prevent a line break
sys.stdout.write("foo" % bar + " ")  # Use sys.stdout for direct output manipulation
Copier après la connexion

Alternativement, si possible, vous pouvez activer la future importation print_function dans Python 2.x pour utiliser la syntaxe d'impression Python 3.x :

from __future__ import print_function
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal