Table des matières
5. Fonctions d'ordre supérieur
1. module
1.1 Conception
Un module Python (Module) est un fichier Python se terminant par .py qui contient des définitions d'objet Python et des instructions Python. Les modules peuvent définir des fonctions, des classes, des variables et peuvent contenir du code exécutable
1.2 Module d'importation
Méthode 1 :
import 模块名 (as 别名) # 使用模块语法: 模块名(别名).功能
Méthode 2 :
from 模块名 import 功能名 (as 别名) # 使用模块语法: 功能
Méthode 3 :
from 模块名 import * # 使用模块语法: 功能
Syntaxe de la liste __all__ : __all__ = [fonction 1, fonction 2...]
Note : utilisez la méthode from module name import * pour importer des modules, seuls les modules de fonction de la liste __all__ peuvent être importés
2 sacs
Il y aura un fichier par défaut __init__.py dans le package [contrôlant le comportement d'importation du package]
2.1 Conception
Un package organise les modules associés et les place dans le même dossier. Ce dossier est appelé un package.
2.2 Importer un package
Méthode 1 :
import 包名.模块名 # 调用 包名.模块名.功能 import 包名.模块名 as 别名 # 调用 别名.功能
Méthode 2 :
from 包名.模块名 import 功能名 # 调用 功能 from 模块名 import 功能名 as 别名 # 调用 别名.功能
Méthode 3 :
from 包名 import * # 调用 模块名.功能
Remarque : Vous pouvez ajouter __all__ = [] dans le fichier __init__.py pour contrôler la liste des modules autorisés à être importés
3. Documents
3.1 Ouvrir un fichier
En Python, utilisez la fonction open() pour ouvrir un fichier existant ou créer un nouveau fichier
# 语法 f = open(name, mode,encoding="UTF-8") # 用的最多的形式 # 如果文件不存在 自动创建 with open('a.txt','a',encoding='utf-8') as f: f.write("\nhello")
--name : est la chaîne du nom du fichier cible à ouvrir (peut inclure le chemin spécifique où se trouve le fichier)
--mode : définit le mode d'ouverture du fichier (mode d'accès), lecture seule lecture, écriture écriture , append append, binary binary etc., principalement "r", "w", "a", "b"
--encoding : méthode d'encodage [s'il s'agit de données binaires ou d'autres types de données, la valeur par défaut est, et l'encodage est pas spécialement réglé]3.2 Fermez le fichier : f.close()
3.3 Lecture et écriture de fichiers
① lire :
--read(num) : num indique la longueur des données lues dans le fichier (l'unité est un octet), si num n'est pas passé, cela signifie lire toutes les données du fichier --readline() : lire une seule
fois Prenez une ligne et rencontrez '\n' et retournez
--readlines() : lit le fichier entier et retourne une liste, une ligne par élément②Écrire : écrire("contenu")
Si vous écrivez dans un fichier existant, le contenu d'origine du fichier sera écrasé. À ce stade, vous pouvez utiliser ajouter pour ajouter le contenu
4. Anormal
4.1 Gestion des exceptions
① Capturez le type d'exception spécifié :
try: 可能发生错误的代码 except 异常类型: 如果出现异常执行的代码
②Attrapez plusieurs exceptions spécifiées :
try: 可能发生错误的代码 except (异常类型1,异常类型2): 如果出现异常执行的代码
③Attrapez toutes les exceptions :
try: 可能发生错误的代码 except Exception: 如果出现异常执行的代码
④ Informations de capture anormales :
try: 可能发生错误的代码 except 异常类型 as result: 如果出现异常执行的代码 #result为异常的信息
4.2 Autre anormal
try: 可能发生错误的代码 except Exception: 如果出现异常执行的代码 else: 没有异常时执行的代码
4.3 Anormal enfin
try: 可能发生错误的代码 except Exception: 如果出现异常执行的代码 else: 没有异常时执行的代码 finally: 无论是否有异常都要执行的代码
4.4 Exceptions personnalisées
①La classe personnalisée hérite d'Exception
et réécrit __init__
et réécrit __str__
pour définir les informations de description de l'exception levée
②Utilisez [raise custom exception class] pour intercepter les exceptionsCas : déterminer la longueur de la chaîne d'entrée et signaler une erreur si elle est inférieure à la longueur spécifiée
class ShortInputException(Exception): def __init__(self, length, least_length): super().__init__() self.length = length self.least_length = least_length def __str__(self): return '您输入的长度为:{},最短长度为:{}'.format(self.length, self.least_length) try: content = input('请输入内容:') if len(content) < 5: raise ShortInputException(len(content), 5) else: print('符合要求') except ShortInputException as e: print(e) ''' 请输入内容:ASD 您输入的长度为:3,最短长度为:5 '''
5. Fonctions d'ordre supérieur
5.1 Conception
Le passage d'une fonction en tant que paramètre dans une autre fonction s'appelle une fonction d'ordre supérieur, qui est l'incarnation de la programmation fonctionnelle
5.2 Fonctions intégrées
abs() : trouve la valeur absolue du nombre
round() : arrondit le nombre5.3 Fonctions intégrées d'ordre supérieur
①map()
map(func,lst) : Appliquez la variable de fonction entrante func à chaque élément de la lère variable et formez le résultat dans une nouvelle liste
Cas : Calculez la puissance 2 de chaque nombre dans la lère séquencefunc = lambda a:a*a # map函数 接收几个值 就给出几个值 lst = [1,2,3,4,5,6,7,8] m = map(func,lst) # [1,4,9.....] for i in m: print(i)
②reduce()
reduce(func, lst), où func doit avoir deux paramètres, et le résultat de chaque calcul func continue d'être calculé cumulativement avec l'élément suivant de la séquence. Remarque : avant d'utiliser la fonction reduce(), le
module functools doit être importé
. Exemple : Calculer la somme cumulée de chaque nombre de la première séquencefrom functools import reduce as r func = lambda a,b:a+b lst = [1,2,3,4,5,6,7,8] print(r(func,lst))
③filter()
La fonction filter(func,lst) est utilisée pour filtrer la séquence, filtrer les éléments qui ne remplissent pas les conditions et renvoyer un objet filtre, qui peut être converti en listeCas : Supprimez les nombres pairs de la première séquence
lst = [1, 2, 3, 4, 5, 6, 7, 8] def func(n): if n % 2 == 0: return True return False f = filter(func, lst) for i in f: print(i)
C'est tout pour le dossier d'apprentissage d'aujourd'hui, au revoir !
Description: Dossiers d'apprentissage, s'il y a des erreurs, corrigez-moi s'il vous plaît, si vous avez des questions, n'hésitez pas à commenter