Bonjour

Je suis vraiment débutant en Python bien que je ne sois pas vraiment un débutant en programmation sans vraiment maîtriser un langage (JScript notamment)

Je suis en train de préparer une sélection en vue d'une formation professionnelle et je me heurte à un petit problème

Lors de la création de variables, le nom de la variable doit toujours commencer par une lettre et ne peut pas contenir d’espaces, bien que des chiffres et des traits de soulignement puissent également y figurer.

Je dois créer une fonction qui renvoie true si un nom de variable donné est valide, sinon elle renvoie false

Ci dessous mon code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
def variable_valid(var):
    str = 'MonNom'
print(str.isidentifier())
 
str = 'Mon Nom'
print(str.isidentifier())
 
str = 'Mes2noms'
print(str.isidentifier())
 
str = ''
print(str.isidentifier())
Je travaille sur le site EDABIT

et j'ai cela comme résultat

ERREUR : Retraçage :
dans <module>
TypeError : le descripteur 'isidentifier' de l’objet 'str' a besoin d’un argument


Ce que je n'arrive pas à comprendre c'est pourquoi mon code fonctionne pourtant dans un compilateur en ligne (https://www.onlinegdb.com/) mais seulement si je retire la première ligne

def variable_valid(var):

En vous remerciant par avance si vous pouvez me donner une piste

Cordialement