Comme tout langage de programmation, Python possède son propre ensemble de règles. Si ces règles ne sont pas respectées, le code devient incompréhensible pour l'interprète, ce qui entraîne des erreurs de syntaxe. Ces erreurs sont des problèmes courants que rencontrent aussi bien les programmeurs débutants que les programmeurs expérimentés. L'article traite des erreurs les plus fréquentes en Python et fournit des méthodes pour les corriger au cours du processus de programmation.
Lorsqu'une erreur de syntaxe se produit, Python fournit un message d'erreur qui signale le problème. Ce message comprend généralement :
L'une des erreurs les plus courantes commises par les débutants en Python est d'oublier de fermer les parenthèses. Cela est particulièrement fréquent dans les appels de fonctions et les structures imbriquées.
Exemple :
print("Hello, World!"
Message d'erreur Python:
Fixer:
Assurez-vous que toutes les parenthèses sont correctement fermées.
print("Hello, World!")
Python s'appuie sur l'indentation pour définir les blocs de code. Une indentation incorrecte peut entraîner des erreurs de syntaxe.
Exemple:
def greet():
print("Hello, World!")
Message d'erreur Python:
Fixer:
Le bloc de code doit être correctement indenté.
def greet():
print("Hello, World!")
Une autre erreur fréquente consiste à oublier d'insérer des virgules entre les éléments d'une liste ou d'un dictionnaire.
Exemple:
fruits = {"type": "sweert" "name": "orange"}
Message d'erreur Python :
Fixer:
Ajouter la virgule manquante entre "sweert" et "name".
fruits = {"type": "sweert", "name": "orange"}
L'utilisation incorrecte des mots-clés réservés de Python peut également entraîner des erreurs de syntaxe. Les mots-clés sont des mots réservés qui ont une signification particulière.
Exemple:
class = "Beginner"
Message d'erreur Python :
Fixer:
Choisissez un nom différent qui n'est pas un mot-clé réservé.
level = "Beginner"
Les noms de variables doivent respecter des règles spécifiques. L'utilisation de noms de variables illégaux, commençant par un chiffre ou contenant des espaces, entraîne des erreurs de syntaxe.
Exemple:
2name = "John"
Message d'erreur Python:
Fixer:
Utilisez un nom de variable valide.
name2 = "John"
Les chaînes de caractères doivent être placées entre des guillemets correspondants. Oublier de fermer une chaîne de caractères entraîne une erreur de syntaxe.
Exemple:
message = "Hello, World!
Message d'erreur Python:
Fixer:
Veillez à ce que la chaîne soit fermée par le même type de guillemets.
message = "Hello, World!"
Oublier d'ajouter un deux-points ( :) à la fin des énoncés composés tels que if, for, while et def peut entraîner des erreurs de syntaxe.
Exemple:
def greet()
print("Hello, World!")
Message d'erreur Python:
Fixer:
Ajoutez deux points à la fin de l'énoncé composé.
def greet():
print("Hello, World!")
L'utilisation incorrecte des opérateurs peut entraîner des erreurs de syntaxe. Il s'agit notamment des opérateurs d'affectation et des opérateurs de comparaison.
Exemple:
if x = 10:
print("x is 10")
Message d'erreur Python:
Fixer:
Utiliser le bon opérateur de comparaison.
if x == 10:
print("x is 10")
Examinons un script de scraping web simple qui rencontre une erreur de syntaxe et comment le déboguer en utilisant le débogueur intégré de Python, pdb.
Code original :
import requests
from bs4 import BeautifulSoup
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
titles = soup.find_all("h1")
for title in titles
print(title.text)
Message d'erreur Python:
Fixer:
Ajoutez les deux points manquants après la boucle for.
import requests
from bs4 import BeautifulSoup
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
titles = soup.find_all("h1")
for title in titles:
print(title.text)
Ajoutez la ligne suivante avant la boucle pour lancer le débogueur.
import pdb; pdb.set_trace()
Code modifié avec point d'arrêt :
import requests
from bs4 import BeautifulSoup
url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
titles = soup.find_all("h1")
import pdb; pdb.set_trace()
for title in titles:
print(title.text)
Lorsque vous exécutez le script, le débogueur pdb démarre au point d'arrêt.
> /path/to/your/script.py(10)()
-> for title in titles:
(Pdb)
Commandes de débogage :
Exemple de session :
(Pdb) n
> /path/to/your/script.py(11)()
-> print(title.text)
(Pdb) p titles
[<h1>Example Domain</h1>]
(Pdb) c
Example Domain
En utilisant pdb, vous pouvez parcourir votre code, inspecter les variables et comprendre le flux d'exécution, ce qui facilite l'identification et la correction des erreurs.
Les erreurs d'interprétation se produisent lorsque le processeur n'est pas en mesure de comprendre votre code dans son intégralité, tandis que les erreurs d'exécution se produisent lorsque votre code est en cours d'exécution. La division par zéro, le fait de toucher à un tableau hors de portée dans une liste ainsi que les variables non définies sont à l'origine de ce type d'erreurs.
Exemple:
numbers = [1, 2, 3]
print(numbers[3])
Message d'erreur Python:
Fixer:
Assurez-vous que vous accédez à des index de liste valides.
print(numbers[2])
La gestion des exceptions permet à votre programme de continuer à fonctionner même lorsqu'une erreur se produit. Utilisez les blocs try-except pour attraper et gérer les exceptions.
Exemple :
try:
result = 10 / 0
except ZeroDivisionError:
print("You can't divide by zero!")
Acquérir une expertise sur les erreurs courantes et rectifier les erreurs dans la syntaxe Python est essentiel pour tout développeur Python. Lire les messages d'erreur Python et procéder aux corrections qui s'imposent permet d'écrire facilement un meilleur code.
Мы получили вашу заявку!
Ответ будет отправлен на почту в ближайшее время.
С уважением proxy-seller.com!
Commentaires: 0