[Python of Hikari-] Chapitre 06-02 Fonction (argument et valeur de retour 1)

[Python] Chapitre 06-02 Arguments et valeur de retour 1

J'ai expliqué dans la section précédente que lors de la définition d'une fonction, cela se fait comme suit.

def Nom de la fonction personnalisée(argument):
Ce qui est exécuté lorsque la fonction est appelée

La dernière fois, je n'ai pas expliqué ** l'argument ** dans ceci, donc je voudrais l'expliquer. En outre, la fonction renvoie à l'origine quelque chose à la suite du traitement lorsqu'une valeur est saisie. Nous aborderons également les ** valeurs de retour **, telles que les valeurs de retour.

Arguments de fonction

Lors de la définition et de l'appel d'une fonction, vous pouvez transmettre des ** arguments ** à la fonction pour traitement. Créez un nouveau chap06 </ font> et créez un fichier avec le nom de fichier samp06-02-01.py </ font>. Créez-le et écrivez le code suivant. (Le programme précédent a été légèrement amélioré.)

samp06-02-01.py


def greet_func(name):
    print('Courir dans une fonction')
    print(f'{name}San, bonjour!')

print('A partir de maintenant, saluez_Appelez la fonction func.')
name = input('S'il vous plaît entrez votre nom:')

#greet_Appelez la fonction func
greet_func(name)

print('Le traitement à l'intérieur de la fonction est terminé!')

[Résultat de l'exécution] </ font> Appelez maintenant la fonction greet_func. Veuillez entrer votre nom: Taro Yamada Courir dans une fonction Taro Yamada, bonjour! Le traitement à l'intérieur de la fonction est terminé!

Je vais expliquer le programme. Tout d'abord, entrez le nom (cette fois ** 'Taro Yamada' **) et appelez la fonction ** greet_func **. Puisque ** name = 'Taro Yamada' ** est défini lors de l'appel, il est identique à ** greet_func ('Taro Yamada') ** lors de l'appel de la fonction.

image.png

La partie de ** nom ** de ** greet_func (nom) ** sur le côté appelant la fonction à ce moment est ** argument réel (argument réel) </ font> > **.

Vient ensuite l'exécution dans la fonction appelée ci-dessous.

def greet_func(name):
    print('Courir dans une fonction')
    print(f'{name}San, bonjour!')

À ce stade, la valeur ** 'Taro Yamada' ** est affectée au nom de greet_func (nom). Et maintenant dans cette fonction, car il est devenu un ** name = 'Taro Yamada' **, ('' s {name}, Hello! 'F) ** print au point de ** ** name ** se voit attribuer un ** 'Taro Yamada' **, il est affiché comme "Taro Yamada, Hello!".

image.png

À ce stade, la partie de ** nom ** de ** greet_func (nom) **, qui est la fonction à appeler, est ** argument formel (Karihikisu) </ font> * *Est appelé.

Arguments de fonction Un autre exemple

Regardons un autre exemple. Créez un nouveau chap06 </ font> et créez un fichier avec le nom de fichier samp06-02-02.py </ font>. Créez-le et écrivez le code suivant.

.06-02-02.py


def plus_func(a, b, c):
    print('La somme est calculée dans la fonction.')
    print(a + b + c)

plus_func(3, -4, 1)
print('Le traitement à l'intérieur de la fonction est terminé.')

[Résultat de l'exécution] </ font> La somme est calculée dans la fonction. 0 Le traitement à l'intérieur de la fonction est terminé.

Cette fois, l'argument réel est ** numérique ** au lieu d'une chaîne. Il en va de même pour les nombres, où vous transmettez trois valeurs lorsque vous appelez la fonction ** plus_func **. Notez que vous pouvez transmettre autant d'arguments réels que vous le souhaitez, pas un seul. Et la valeur numérique passée à l'argument formel est calculée dans la fonction plus_func et le résultat est sorti.

Valeur de retour de la fonction

Comme expliqué dans Chapitre 06-01, c'est une fonction en mathématiques.

f(x) = x^2+3x+4

Quand il y en a, si x = 2

f(2) = 2^2+3.2+4
=14

J'ai pu demander. En d'autres termes, si vous remplacez ** 2 ** l'argument réel ** x ** et effectuez le calcul, le résultat ** 14 ** sera renvoyé. Cette valeur renvoyée est appelée la ** valeur de retour **.

Veuillez noter que ** la valeur de retour est essentiellement un **.

À propos, dans les programmes que j'ai écrits jusqu'à présent, il est traité dans la fonction et terminé, et il n'y a pas de valeur de retour. Cette fois, je vais vous expliquer comment renvoyer ce résultat.

Tout d'abord, pour renvoyer la valeur de retour, écrivez le programme comme suit.

def Nom de la fonction personnalisée(argument):
Ce qui est exécuté lorsque la fonction est appelée
Traitement du résultat dans la fonction de retour

La fonction précédente,

f(x) = x^2+3x+4

Implémentons-le par programme. Créez un nouveau chap06 </ font> et créez un fichier avec le nom de fichier samp06-02-03.py </ font>. Créez-le et écrivez le code suivant.

def calc_func(x):
    print('Exécuter à l'intérieur d'une fonction')
    f = (x ** 2) + (3 * x) + 4
    ##Renvoie le résultat du calcul f
    return f

#L'argument réel est 2 lors de l'appel de la fonction
f = calc_func(2)
print(f'Valeur renvoyée par la fonction:{f}')

[Résultat de l'exécution] </ font> Exécuter à l'intérieur d'une fonction Valeur renvoyée par la fonction: 14

Tout d'abord, ** 2 ** est spécifié comme l'argument réel de la fonction appelante. Il est spécifié dans l'argument formel x de la fonction appelée. Ensuite, 2 est affecté à x dans la fonction de calcul.

image.png

Ensuite, le résultat du calcul ** 14 ** est attribué à f, et cette f est renvoyée à l'appelant de la fonction. Cette valeur est appelée la ** valeur de retour **.

image.png

Ensuite, l'emplacement de ** f = calc_func (2) ** devient ** f = 14 **, donc "valeur retournée par la fonction: 14" est sortie.

finalement

L'argument et la valeur de retour de la fonction sont difficiles à comprendre au début s'il s'agit d'une fonction définie par vous-même, mais savez-vous que les fonctions intégrées utilisées jusqu'à présent sont en fait utilisées sans le savoir? Par exemple, dans le cas de la ** fonction len **, lorsque ** len ('hello') ** est défini, ** 'hello' ** devient ** argument réel **, et comme il comporte 5 caractères, il est exécuté. Le résultat ** 5 ** devient la ** valeur de retour **.

La prochaine fois, j'aimerais parler un peu plus des arguments et des valeurs de retour.

Retournez à [Lien de la table des matières]

Recommended Posts