web-dev-qa-db-fra.com

Erreur de syntaxe non valide lors de l'exécution de python à partir de Visual Studio Code

j'ai un fichier Python avec le contenu suivant enregistré sur ma machine:

types_of_people = 10
x = f"There are {types_of_people} types of people"

binary = "binary"
do_not = "don't"
y = f"Those who know {binary} and those who {do_not}."

print(x)
print(y)

print(f"i said: {x}")
print(f"I also said: '{y}'")

hilarious = False
joke_evaluation = "Isn't that joke so funny?! {}"

print(joke_evaluation.format(hilarious))
w = "This is the left side of ..."
e = "a string with a right side."

print(w + e)

Lorsque j'ouvre ce fichier avec Python 3.7 à partir de Visual Studio Code, j'obtiens le message d'erreur suivant:

/usr/local/opt/python/bin/python3.7 /Users/andree/Desktop/test.py
  File "<stdin>", line 1
    /usr/local/opt/python/bin/python3.7 /Users/andree/Desktop/test.py
    ^
SyntaxError: invalid syntax

Dans la capture d'écran suivante, vous pouvez voir la commande que j'utilise pour exécuter le fichier et quelle extension python j'utilise.

 run python file from within Visual Studio Code

Mais exécuter le fichier depuis mon terminal avec python3 test.py fonctionne très bien.

Quelqu'un sait-il quel est le problème lorsque vous l'exécutez à partir de VS Code?

3
Andree Wille

On dirait que c'est un bug dans VS Code.

Lorsque je crée un nouveau fichier, lui assigne un langage python, puis l’enregistre puis il fonctionne lorsque j’exécute le fichier python à partir de l’éditeur.

Mais quand je crée un nouveau fichier, assigne une langue python mais ne l'enregistre pas, exécute "Exécuter la sélection/la ligne dans un terminal Python", puis enregistrez-le puis exécutez "Exécuter le fichier Python dans un terminal". Donc, cela semble être un problème lié au code VS. 

1
Andree

Pense que c'est un bug de VS Code.

Lorsque vous utilisez la commande "run selection/line in python terminal", VS Code démarre l'interpréteur python et ne le quitte pas à la fin.

Vous devez utiliser la commande exit() dans la fenêtre de l’interprète python pour mettre fin à la session python. 

Après cela, "exécuter le fichier python dans le terminal" fonctionnera correctement.

5
Pavel

J'ai rencontré ce problème lorsque j'ai tenté de modifier les paramètres de mon terminal par défaut. Je me trouvais continuellement dans une situation où la commande "Exécuter un fichier Python dans un terminal" entraînait des erreurs de syntaxe, tandis que la commande "Exécuter une sélection/Ligne dans un terminal Python" était erronée, tout en affichant les résultats. Irritant pour le moins.

Voici les paramètres que j'ai utilisés pour résoudre le problème des erreurs de syntaxe.

Remarque: l'activation de Pylint n'a pas résolu mon problème. En fait, le problème a continué à s'afficher même après l'activation de l'activation. Ces paramètres utilisateur/espace de travail/dossier spécifiques ont également résolu ce problème.

Remarque: comme le terminal utilise par défaut Powershell, vous devez taper Python pour entrer des commandes manuelles directement dans le terminal python et exit () pour le fermer afin de permettre au fichier python de s'exécuter correctement à nouveau.

PARAMÈTRES UTILISATEUR

{
"terminal.integrated.Shell.windows": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe"
}

PARAMÈTRES D'ESPACE DE TRAVAIL

"settings": {
    "terminal.integrated.Shell.windows": "C:\\Python3.7.2\\python.exe",
}

PARAMÈTRES DES DOSSIERS

"python.linting.pylintEnabled": true,
"python.pythonPath": "C:\\Python3.7.2\\python.exe",
0
TechBrad

J'ai trouvé un correctif pour cela, installez "pylint". Un message contextuel dans Visual Studio m'a demandé de télécharger cette extension. Je l'ai fait et après cela, j'ai pu exécuter mon code!

0
user10209131