Je suis nouveau en python et je jouais avec des exemples de travail du manuel à partir de http://do1.dr-chuck.com/pythonlearn/EN_us/pythonlearn.pdf section.4.9 fonctions définies par l'utilisateur. Je me suis embrouillé en cours de route.
(On m'a dirigé vers ce post Description courte des règles de portée? mais j'ai trouvé que toutes ses réponses étaient trop avancées pour ma question de niveau débutant)
lorsque le code de round0 était:
bruce=input("veuillez entrer ce qui doit être imprimé 2 fois")
def printTwice(bruce):
print(bruce)
print(bruce)
printTwice("alpha")
peu importe l'entrée que j'ai donnée, elle est sortie comme "alpha". D'accord, je comprends, "alpha" est défini comme valeur pour "bruce" ici.
round1:
bruce=input("veuillez entrer ce qui doit être imprimé 2 fois") #pour entrer "bonjour"
not1=123
def printTwice(not1): #définit le paramètre à not1 , not1 est défini comme 123 , mais la sortie est ce qui a été donné en entrée
print(bruce)
print(bruce)
printTwice("a")
la sortie se révèle être ce qui est entré pour bruce. par exemple "bonjour"
Q: Pourquoi ignore-t-il les arguments "a" et "not1" et prend l'entrée "bonjour" pour bruce ?
Round 2: #Puisque j'ai vu que python ne prêtait pas attention à ce que je lui demandais de faire, j'ai enlevé les guillemets pour "a", pour être a
bruce=input("veuillez entrer ce qui doit être imprimé 2 fois")
not1=123
def printTwice(not1): #définit le paramètre à not1 , not1 est défini comme 123 , mais la sortie est ce qui a été entré en entrée
print(bruce)
print(bruce)
printTwice(a) # l'argument n'a plus de " " maintenant
résultat : NameError: name 'a' is not defined. Q: pourquoi s'intéresse-t-il maintenant à ce que j'ai placé entre les parenthèses cette fois mais pas dans round 0 ni round 1 ?
Je comprends que ma question est de niveau débutant ou peut-être dupliquée quelque part, si c'est le cas, veuillez me diriger vers le bon post. Merci !