Maison  >  Article  >  développement back-end  >  Introduction aux bases de la programmation fonctionnelle Python

Introduction aux bases de la programmation fonctionnelle Python

PHPz
PHPzavant
2023-04-11 22:49:081488parcourir

Introduction aux bases de la programmation fonctionnelle Python

Connaissance de base des fonctions

Maîtrisez les spécifications de base de la syntaxe et les méthodes d'appel des fonctions personnalisées, et maîtrisez l'utilisation et les règles d'appel des divers paramètres de la fonction.

1. Fonction Python

  • Une fonction (Fonction) est un segment de code organisé et réutilisable utilisé pour implémenter une fonction unique ou associée.
  • Les fonctions peuvent améliorer la modularité des applications et la réutilisation du code.
  • Nous avons déjà été exposés à de nombreuses fonctions intégrées fournies par Python, telles que print().
  • Mais vous pouvez également créer vos propres fonctions, appelées fonctions définies par l'utilisateur.

2. Règles de base pour personnaliser une fonction

Vous pouvez définir une fonction avec les fonctions que vous souhaitez. Voici des règles simples :

  1. Le bloc de code de fonction commence par le mot-clé def, suivi du nom de l'identifiant de la fonction et. Parenthèses ( ).
  2. Tous les paramètres entrants et variables indépendantes doivent être placés entre parenthèses. Les paramètres peuvent être définis entre parenthèses.
  3. La première ligne de l'instruction de fonction peut éventuellement utiliser une chaîne de documentation pour stocker la description de la fonction.
  4. Le contenu de la fonction commence par deux points et est en retrait.
  5. returm [expression] termine la fonction et renvoie éventuellement une valeur à l'appelant.
  6. Retour sans expression équivaut à renvoyer Aucun.

3. Personnaliser une syntaxe de fonction

Définir la syntaxe de fonction :

def 函数标识名称(参数列表):
“函数_文档字符串,对函数进行说明"
函数体
return [表达式]

Par défaut, les valeurs des paramètres et les noms des paramètres correspondent dans l'ordre défini dans la déclaration de la fonction.

4. 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() :

Introduction aux bases de la programmation fonctionnelle Python

Le résultat de sortie après l'appel est :

Introduction aux bases de la programmation fonctionnelle Python

4 Mot-clé Return

  • return instruction [expression] quitte la fonction et appelle sélectivement la méthode. renvoie une expression.
  • L'instruction return sans valeur de paramètre renvoie None.
  • Les exemples précédents n'ont pas montré comment renvoyer une valeur. L'exemple suivant vous indique comment procéder :

Introduction aux bases de la programmation fonctionnelle Python

5. Passer des paramètres

En python, le type appartient à l'objet et la variable n'en a pas. tapez :

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

Ci-dessus Dans le code, [1,2,3] est un type List, "Runoob" est un type String et la variable a n'a pas de type. C'est juste une référence à un objet (-un pointeur. ), qui peut être un objet de type List ou pointer vers un objet de type String.

Transmission de paramètres des fonctions Python

  • Types immuables : transmission de valeurs dans la programmation d'un programme, telles que des entiers, des chaînes et des tuples. 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. On appelle souvent cela le passage par valeur.
  • Type de variable : similaire au passage de référence (passage d'adresse) dans la programmation, comme les listes et les dictionnaires. Par exemple, fun(la) passera en fait la. Après modification, la outdoor fun sera également affectée.

Tout en Python est un objet. Au sens strict, nous ne pouvons pas dire s'il faut passer par valeur ou par référence. Nous devrions dire passer des objets immuables et passer des objets mutables.

6. Paramètres

Voici les types de paramètres formels qui peuvent être utilisés lors de l'appel de fonctions :

  • Paramètres requis.
  • Paramètres des mots clés.
  • Paramètres par défaut.
  • Paramètres de longueur indéfinie.

Paramètres requis

Les paramètres requis doivent être transmis à la fonction dans le bon ordre. La quantité appelée doit être la même que celle déclarée.

Exemple :

ch06-demo01-args-necessary.py

Appelez la fonction Greeting(), vous devez passer un paramètre, sinon une erreur de syntaxe se produira :

Introduction aux bases de la programmation fonctionnelle Python

Paramètres de mots clés

Les paramètres de mots clés sont étroitement liés aux appels de fonction, et les appels de fonction utilisent Mots-clés Paramètre permettant de déterminer la valeur du paramètre transmis.

L'utilisation de paramètres de mots clés permet à l'ordre des paramètres lorsque la fonction est appelée d'être incohérent avec l'ordre de déclaration, car l'interpréteur Python peut faire correspondre la valeur du paramètre avec le nom du paramètre.

Exemple :

ch06-demo02-keyword.py

L'exemple suivant utilise les noms de paramètres lors de l'appel de la fonction printinfo() :

Introduction aux bases de la programmation fonctionnelle Python

缺省参数

调用函数时,缺省参数的值如果没有传入,则被认为是默认值。

示例:

ch06-demo03-args-default.py

打印默认的age,如果age没有被传入:

Introduction aux bases de la programmation fonctionnelle Python

Introduction aux bases de la programmation fonctionnelle Python

注意:缺省值必须放在最后一个参数。

不定长参数*args

可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数。

适用于当参数个数不确定或根据调用情况其参数个数会动态变化的情况。

基本语法如下:

def函数名称(formal args, *args ):
“函数_文档字符串"
函数体
retum [表达式]

加了星号(* )的变量名会存放所有未命名的变量参数。选择不多传参数也可,可变长参数的类型为元组。

补充: **kw

**两个型号代表接受的是一个可变长度的 字典类型的参数。

因此,改参数必须以k-v值结构出现。

def函数名称(formal _args, **kw ):
“函数_文档字符串”
函数体
retum [表达式

加了星号(** )的变量名会存放所有未命名的变量参数。选择不多传参数也可,可变长参数的类型为字典。

总结: *argv和**kw的区别

两个参数必须为函数定义中参数列表中的排名最后的参数。

*argv代表该参数位置可以放任意个数的数据,最终都会转换成元组数据类型在函数体内处理。

**kw代表该参数位置可以放k=v格式的数据,最终都会转换成字典类型数据安函数体内处理。

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer