Maison développement back-end Tutoriel Python Contenu de base de Python : fonctions

Contenu de base de Python : fonctions

Apr 01, 2017 pm 01:22 PM

Une 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. Les fonctions créées par vous-même sont appelées fonctions définies par l'utilisateur. Spécifications de définition de fonction : 1. Le bloc de code de fonction commence par le mot-clé def, suivi du nom de l'identifiant de fonction et de parenthèses ().
2. Tous les paramètres entrants et variables indépendantes doivent être placés entre parenthèses, et les espaces entre parenthèses peuvent être utilisés pour définir les paramètres.
3. La première ligne de l'instruction de fonction peut éventuellement utiliser une chaîne de documentation - utilisée pour stocker les descriptions de fonctions.
4. Le contenu de la fonction commence par deux points et est en retrait.
5.return [expression] termine la fonction et renvoie éventuellement une valeur à l'appelant. Renvoyer sans expression équivaut à renvoyer Aucun.
Syntaxe de définition de fonction : def nom de fonction (paramètre formel) : corps de fonction 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. Exemple : #Vous ne pouvez pas définir de paramètres formels>>> def
show():... print('show fun')...>>> Fonction : >>> def
area(height,width):... a = height*width... return a...>>> une fonction utilise directement le nom de la fonction (). Si le nom de la fonction est utilisé directement, l'adresse de contenu physique de la fonction est renvoyée lorsque () est ajouté, il représente les paramètres formels et les paramètres réels de la fonction exécutée>> ; def
area(height,width):... a = height*width... return a...>>> area(4,5)20 Dans cet exemple, la hauteur et la largeur sont formelles paramètres, qui sont utilisés pour définir la structure et la logique de la fonction. Les 4 et 5 suivants sont les paramètres réels, qui sont les paramètres réellement transmis par l'utilisateur lors de l'appel de la fonction. Le nombre de paramètres réels doit être égal au formel. paramètres. Pour rester cohérent, lors de l'appel, les valeurs spécifiques des paramètres formels correspondent une à une selon l'ordre dans lequel les paramètres réels sont transmis. Par exemple, 4 correspond à la hauteur et 5 correspond à la largeur. Paramètres de mot-clé (paramètres spécifiés) L'utilisation de paramètres de mot-clé permet de modifier les paramètres lorsque la fonction est appelée. L'ordre est incompatible avec la déclaration. L'utilisation spécifique est la suivante>>>
def zone (hauteur, largeur). :... a = height*width... return a...>>>
area(width = 5,height = 4)# Il suffit de spécifier les valeurs du formel spécifique paramètres lors de l'appel de la fonction. Paramètres par défaut Lors de l'appel d'une fonction, si aucun paramètre n'est passé, les paramètres par défaut seront utilisés. Les paramètres par défaut doivent être définis à la fin de tous les paramètres formels>>>
def stu(name,age,grade=3):... Print('name is %s,age is %s,grade is %s' %
(name,age,grade))...>>>
stu('ian',10) #Aucun paramètre de note n'est transmis ici, la note est utilisée par défaut =
3name est
ian, l'âge est 10, la note est 3>>>
stu('isha',9,4)le nom est
isha, l'âge est 9, la note est 4 dynamique paramètres #Paramètre dynamique 01, ajoute tous les paramètres réels entrants à une primitive def main2(*arg): print(arg,type(arg))main2(1,2,3,4) #Paramètre dynamique 02, transmettra tous les les paramètres réels saisis sont ajoutés à un dictionnaire def main3(**kwargs): print(kwargs,type(kwargs))main3(k1=12,k2='ian') #Paramètre dynamique 03, les deux éléments ci-dessus sont combinés def
main4(*args,**kwargs): print(args,type(args)) print(kwargs,type(kwargs))main4(1,2,k1=12,k2='ian') #Le formulaire ci-dessus L'ordre des paramètres et des paramètres réels ici ne peut pas être inversé, sinon une erreur sera signalée #Paramètre dynamique 4, si le paramètre réel est une variable, comment le spécifier dans le paramètre dynamique --->Avec *def
main4(*args,**kwargs) : print(args,type(args)) print(kwargs,type(kwargs))m = [1,2]n =
{'k1':12,'k2' :'ian'}main4(*m ,**n) Résumé : les fonctions Python ont une forme de paramètre très flexible, qui peut non seulement implémenter des appels simples, mais également transmettre des paramètres très complexes. Les paramètres par défaut doivent utiliser des objets immuables. S'il s'agit d'objets mutables, il y aura des erreurs logiques de fonctionnement ! Faites attention à la syntaxe de définition des paramètres variables et des paramètres de mot-clé : *args est un paramètre variable, args reçoit un tuple ; **kwargs est un paramètre de mot-clé et kwargs reçoit un dict. L'utilisation de *args et **kwargs est la convention Python. Bien sûr, d'autres noms de paramètres peuvent également être utilisés, mais il est préférable d'utiliser la convention. La fonction anonyme python utilise lambda
pour créer des fonctions anonymes. Le soi-disant anonyme signifie que vous n'utilisez plus la forme standard de l'instruction def
pour définir une fonction. 1.lambda n'est qu'une expression et le corps de la fonction est beaucoup plus simple que def.
2. Le corps de lambda est une expression, pas un bloc de code. Seule une logique limitée peut être encapsulée dans des expressions lambda.
3.lambda
La fonction a son propre espace de noms et ne peut pas accéder aux paramètres en dehors de sa propre liste de paramètres ou dans l'espace de noms global.
4. Bien que la fonction lambda semble ne pouvoir écrire qu'une seule ligne, elle n'est pas équivalente à la fonction inline du C ou du C++. Le but de cette dernière est d'augmenter l'efficacité de fonctionnement en n'occupant pas la mémoire de la pile lors de l'appel. petites fonctions.
Syntaxe de fonction anonyme La syntaxe de fonction lambda ne contient qu'une seule instruction, comme suit : lambda [arg1
[,arg2,.....argn]]:expression Exemple :>>>
su = lambda a,b,c : a + b + c>>> 3) 6 return instruction return est utilisée pour quitter la fonction. L'utilisation de return [expression] renverra une expression lors de la sortie de la fonction. Return sans paramètres renvoie none >>> def
area(height,width) :. .. a = hauteur*largeur... return a...>>> ar =
zone(4,5)>>>
print('la zone est', ar) la zone est de 20 Variables globales et variables locales Lorsque vous déclarez des variables dans une définition de fonction, elles n'ont aucune relation avec d'autres variables du même nom en dehors de la fonction, c'est-à-dire que le nom de la variable est
local à la fonction. C'est ce qu'on appelle la portée de la variable. La portée de toutes les variables est le bloc dans lequel elles sont définies, à partir du point où leurs noms sont définis. Variables locales : def func(x) : print ('x est',x) x=2 print ('X local modifié en',x) x=50func(x)print ('x est toujours',x) Le résultat is : x vaut 50Changement de x local en 2x vaut toujours 50 Utilisation de l'instruction globale Si vous souhaitez attribuer une valeur à une variable définie en dehors de la fonction, alors vous devez dire à Python que le nom de la variable n'est pas local, mais
global . Nous utilisons l'instruction globale pour accomplir cette fonction. Sans l'instruction globale, il est impossible d'attribuer une valeur à une variable définie en dehors d'une fonction. def func() : global x print ('x est',x) x=2 print ('Changement de x local en',x) x=50func()print ('x est toujours',x) Le résultat est : x est 50Changement de x local en 2x est toujours 2 #l'instruction globale est utilisée pour déclarer que x est global, par conséquent, lorsque nous attribuons une valeur à x dans la fonction, la valeur de x en dehors de la fonction changera également directement

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Conseils pour créer dynamiquement de nouvelles fonctions dans les fonctions Golang Conseils pour créer dynamiquement de nouvelles fonctions dans les fonctions Golang Apr 25, 2024 pm 02:39 PM

Le langage Go propose deux technologies de création de fonctions dynamiques : la fermeture et la réflexion. les fermetures permettent d'accéder aux variables dans la portée de la fermeture, et la réflexion peut créer de nouvelles fonctions à l'aide de la fonction FuncOf. Ces technologies sont utiles pour personnaliser les routeurs HTTP, mettre en œuvre des systèmes hautement personnalisables et créer des composants enfichables.

Considérations relatives à l'ordre des paramètres dans la dénomination des fonctions C++ Considérations relatives à l'ordre des paramètres dans la dénomination des fonctions C++ Apr 24, 2024 pm 04:21 PM

Dans la dénomination des fonctions C++, il est crucial de prendre en compte l’ordre des paramètres pour améliorer la lisibilité, réduire les erreurs et faciliter la refactorisation. Les conventions courantes d'ordre des paramètres incluent : action-objet, objet-action, signification sémantique et conformité de la bibliothèque standard. L'ordre optimal dépend de l'objectif de la fonction, des types de paramètres, de la confusion potentielle et des conventions du langage.

Comment écrire des fonctions efficaces et maintenables en Java ? Comment écrire des fonctions efficaces et maintenables en Java ? Apr 24, 2024 am 11:33 AM

La clé pour écrire des fonctions Java efficaces et maintenables est la suivante : restez simple. Utilisez un nom significatif. Gérer des situations particulières. Utilisez une visibilité appropriée.

Collection complète de formules de fonctions Excel Collection complète de formules de fonctions Excel May 07, 2024 pm 12:04 PM

1. La fonction SOMME permet de sommer les nombres d'une colonne ou d'un groupe de cellules, par exemple : =SOMME(A1:J10). 2. La fonction MOYENNE permet de calculer la moyenne des nombres dans une colonne ou un groupe de cellules, par exemple : =AVERAGE(A1:A10). 3. Fonction COUNT, utilisée pour compter le nombre de nombres ou de texte dans une colonne ou un groupe de cellules, par exemple : =COUNT(A1:A10) 4. Fonction IF, utilisée pour effectuer des jugements logiques basés sur des conditions spécifiées et renvoyer le résultat correspondant.

Comparaison des avantages et des inconvénients des paramètres par défaut et des paramètres variables des fonctions C++ Comparaison des avantages et des inconvénients des paramètres par défaut et des paramètres variables des fonctions C++ Apr 21, 2024 am 10:21 AM

Les avantages des paramètres par défaut dans les fonctions C++ incluent la simplification des appels, l’amélioration de la lisibilité et l’évitement des erreurs. Les inconvénients sont une flexibilité limitée et des restrictions de dénomination. Les avantages des paramètres variadiques incluent une flexibilité illimitée et une liaison dynamique. Les inconvénients incluent une plus grande complexité, des conversions de types implicites et des difficultés de débogage.

Quels sont les avantages des fonctions C++ renvoyant des types référence ? Quels sont les avantages des fonctions C++ renvoyant des types référence ? Apr 20, 2024 pm 09:12 PM

Les avantages des fonctions renvoyant des types référence en C++ incluent : Améliorations des performances : le passage par référence évite la copie d'objets, économisant ainsi de la mémoire et du temps. Modification directe : L'appelant peut modifier directement l'objet de référence renvoyé sans le réaffecter. Simplicité du code : le passage par référence simplifie le code et ne nécessite aucune opération d'affectation supplémentaire.

Quelle est la différence entre les fonctions PHP personnalisées et les fonctions prédéfinies ? Quelle est la différence entre les fonctions PHP personnalisées et les fonctions prédéfinies ? Apr 22, 2024 pm 02:21 PM

La différence entre les fonctions PHP personnalisées et les fonctions prédéfinies est la suivante : Portée : les fonctions personnalisées sont limitées à la portée de leur définition, tandis que les fonctions prédéfinies sont accessibles tout au long du script. Comment définir : les fonctions personnalisées sont définies à l'aide du mot-clé function, tandis que les fonctions prédéfinies sont définies par le noyau PHP. Passage de paramètres : les fonctions personnalisées reçoivent des paramètres, tandis que les fonctions prédéfinies peuvent ne pas nécessiter de paramètres. Extensibilité : des fonctions personnalisées peuvent être créées selon les besoins, tandis que les fonctions prédéfinies sont intégrées et ne peuvent pas être modifiées.

Exception de fonction C++ avancée : gestion personnalisée des erreurs Exception de fonction C++ avancée : gestion personnalisée des erreurs May 01, 2024 pm 06:39 PM

La gestion des exceptions en C++ peut être améliorée grâce à des classes d'exceptions personnalisées qui fournissent des messages d'erreur spécifiques, des informations contextuelles et effectuent des actions personnalisées en fonction du type d'erreur. Définissez une classe d'exception héritée de std::exception pour fournir des informations d'erreur spécifiques. Utilisez le mot-clé throw pour lancer une exception personnalisée. Utilisez Dynamic_cast dans un bloc try-catch pour convertir l'exception interceptée en un type d'exception personnalisé. Dans le cas réel, la fonction open_file lève une exception FileNotFoundException. La capture et la gestion de l'exception peuvent fournir un message d'erreur plus spécifique.

See all articles