Modules Python, packages, fichiers, exceptions, fonctions d'ordre supérieur

Table des matières

1. module

2 sacs

3. Documents

4. Anormal

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 exceptions

    Cas : 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 nombre

5.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équence

func = 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équence

from 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 liste

    Cas : 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

Je suppose que tu aimes

Origine blog.csdn.net/qq_52445443/article/details/122813357
conseillé
Classement