Maison  >  Article  >  développement back-end  >  Appel de fonction Python et passage de paramètres (exemple d'analyse)

Appel de fonction Python et passage de paramètres (exemple d'analyse)

乌拉乌拉~
乌拉乌拉~original
2018-08-15 13:51:427079parcourir

Dans l'article d'aujourd'hui, nous découvrirons les connaissances liées à l'appel de fonctions Python et au passage de paramètres. Après avoir compris ce qu'est une fonction, ce que nous devons savoir, c'est comment utiliser les fonctions en python. Après tout, si vous savez seulement ce qu'est une fonction mais ne savez pas comment Python appelle une fonction, alors seulement connaître la définition d'une fonction ne sert à rien, commençons sans plus tarder. apprendre à appeler des fonctions.

Appel de fonction : définir une fonction donne uniquement un nom à la fonction, spécifie les paramètres contenus dans la fonction et la structure du bloc de code. Une fois la structure de base de cette fonction terminée, vous pouvez l'exécuter via un autre appel de fonction ou directement à partir de l'invite Python. L'exemple suivant appelle la fonction printme() :

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 定义函数
def printme( str ):
   "打印任何传入的字符串"
   print str;
   return;
 
# 调用函数
printme("我要调用用户自定义函数!");
printme("再次调用同一函数");
Les résultats de sortie de l'exemple ci-dessus sont les suivants :

我要调用用户自定义函数!
再次调用同一函数
C'est assez simple, utilisez simplement vos mains pour tester cela. Vous pouvez comprendre.

Parlons ensuite du

passage de paramètres : En python, les types appartiennent à des objets et les variables n'ont pas de type.

Référez-vous à l'encodage suivant :

a=[1,2,3]
 
a="Runoob"

(Dans le code ci-dessus, [1,2,3] est de type Liste, "Runoob" est de type Chaîne et variable a is Il n'y a pas de type, c'est juste une référence à un objet (un pointeur), qui peut être un objet de type List ou un objet de type String)

Mutable et . Objets immuables

(En python, les chaînes, les tuples et les nombres sont des objets immuables, tandis que les listes, dict, etc. sont des objets qui peuvent être modifiés. )

1. Type immuable : la variable reçoit a=5 puis a=10. Ici, un nouvel objet de valeur int 10 est réellement généré, et a est pointé vers lui, tandis que 5 est ignoré au lieu de changer. la valeur de a, cela équivaut à une nouvelle génération de a.

2. Type de variable : l'affectation de variable la=[1,2,3,4] puis l'affectation la[2]=5 changera la valeur du troisième élément de la liste la, la elle-même n'en a pas. bouge, mais certaines de ses valeurs internes sont modifiées.

Passage de paramètres de la fonction python :

1. Type immuable : similaire au passage de valeurs C++, tel qu'un entier, une chaîne, un tuple. Par exemple, fun(a) transfère uniquement la valeur de a et n'affecte pas l'objet a lui-même. Par exemple, modifier la valeur d'un intérieur fun(a) ne modifie qu'un autre objet copié et n'affecte pas a lui-même.

2. Type de variable : similaire au transfert de référence C++, tel qu'une liste et un dictionnaire. Par exemple, fun(la) passera effectivement la. Après modification, la outside fun sera également affectée

(tout en python est un objet, à proprement parler on peut' Je ne parle pas de passage par valeur ou de passage par référence. Nous devrions parler de passage d'objets immuables et de passage d'objets mutables)

Python passant des instances d'objets immuables : > (Il y a l'objet int 2 dans l'instance et la variable pointant vers lui est b. Lorsqu'elle est transmise à la fonction ChangeInt, la variable b est copiée par valeur. a et b pointent tous deux vers le même objet Int. Lorsque a = 10 , créez un nouvel objet de valeur int 10 et pointez dessus. )

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
def ChangeInt( a ):
    a = 10
 
b = 2
ChangeInt(b)
print b # 结果是 2

Python passe l'instance d'objet variable :

L'objet passé. dans la fonction et l'objet ajouté à la fin avec le nouveau contenu dans l'instance utilisent la même référence, donc le résultat de sortie est le suivant :
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 可写函数说明
def changeme( mylist ):
   "修改传入的列表"
   mylist.append([1,2,3,4]);
   print "函数内取值: ", mylist
   return
 
# 调用changeme函数
mylist = [10,20,30];
changeme( mylist );
print "函数外取值: ", mylist

Ce qui précède est ce que je vais expliquez aujourd'hui le contenu, comment appeler des fonctions et le passage des paramètres python. Bien que les points de connaissances ci-dessus donnent des exemples, vous devez toujours l'essayer vous-même. Après tout, si vous ne le faites pas vous-même, c'est comme parler sur papier. La pratique pratique est la meilleure méthode et le meilleur moyen de vérifier ce que vous faites. ont appris. Enfin, j'espère également que cet article pourra vous apporter de l'aide à vous qui apprenez Python
函数内取值:  [10, 20, 30, [1, 2, 3, 4]]
函数外取值:  [10, 20, 30, [1, 2, 3, 4]]

Pour plus de connaissances connexes, veuillez visiter le site Web php chinois
Python Colonne Tutoriel
.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn