Maison >développement back-end >Tutoriel Python >Explication détaillée des fonctions intégrées et de la récursivité dans les bases de Python
1. Fonctions intégrées
En voici quelques-unes brièvement présentées :
1.abs() Trouver la valeur absolue
2. all() Si tous les éléments de iterable sont vrais (ou si l'itérable est vide), retournez <span class="pre">True</span>
3.any() if iterable Si un élément de est vrai, <span class="pre">True</span>
est renvoyé. Si l'itérable est vide, retournez <span class="pre">False</span>
4.callable() Si le paramètre object semble réglable, retournez
, sinon renvoie <span class="pre">True</span>
Vrai<span class="pre">False</span>
<br>False
<span class="pre">(a<span class="pre">//<span class="pre">b,<span class="pre">a<span class="pre">%<span class="pre">b)</span></span></span></span></span></span>
<span class="pre">(q,<span class="pre">a<span class="pre">%<span class="pre">b)</span></span></span></span>
5.divmod() prend deux nombres (non complexes) comme arguments et renvoie une paire de nombres composée du quotient et du reste lors de l'utilisation d'une division entière. Pour les types d'opérandes mixtes, les règles des opérateurs arithmétiques binaires s'appliquent. Pour les entiers, le résultat est le même que <em>(a</em>//<code class="docutils literal"><span class="pre">math.floor(a<span class="pre">/<span class="pre">b)</span></span></span>
b,a
b)
Idem. Pour les nombres à virgule flottante, le résultat est
a%b)
code> , où
q est généralement <span class="pre">math.floor(a</span>/
code> , mais peut être inférieur à 1
l=[1,2,4,9,-1]print(sorted(l)) #从小到大print(sorted(l,reverse=True)) #从大到小
7.eval() Extrayez les éléments de la chaîne et exécutez
8.frozenset() Collection immuable, la collection définie by Frozenset() ne peut pas ajouter ou supprimer d'éléments
9.globals() Renvoie un dictionnaire représentant la table des symboles globaux actuelle. Il s'agit toujours d'un dictionnaire du module actuel (à l'intérieur d'une fonction ou d'une méthode, il s'agit du module dans lequel elle est définie, pas du module à partir duquel elle est appelée) 10.round( ) sur les arguments Arrondi 11.sorted() Trier sans changer la liste d'origine12 .zip() La fonction zipper
l=[1,2,3,4] m=map(lambda x:x**2,l)print(list(m)) ----->[1, 4, 9, 16]crée un itérateur, agrégeant les éléments de chaque itérateur.
Renvoie un itérateur de tuples, où le i-ème tuple contient le
ifrom functools import reduce res=0for i in range(100): res+=iprint(res)
names=['alex_sb','yuanhao_sb','wupeiqi_sb','egon']print(list(filter(lambda name:name.endswith('_sb'),names)))--->['alex_sb', 'yuanhao_sb', 'wupeiqi_sb']Si un argument positionnel est fourni, il doit s'agir d'un itérable. Renvoie le plus grand élément de l'itération. Si deux arguments de position ou plus sont fournis, l'argument de position le plus grand est renvoyé.
max() peut spécifier la clé (c'est-à-dire spécifier la partie à comparer)
Le mappage 14.map()
def func(x):return x**2print(func(2))lambda x:x**2 #上边的函数就可以直接写成这种形式fonction Chaque élément de
iterable
produit le résultat 15.reduce() fusionne 16.filter() filtre et conserve les éléments dont la valeur booléenne est TruePour une introduction détaillée des fonctions intégrées, veuillez vous référer à ce qui suit :
2. Fonctions anonymes (expressions lambda)
# 1 文件内容如下,标题为:姓名,性别,年纪,薪资# # egon male 18 3000# alex male 38 30000# wupeiqi female 28 20000# yuanhao female 28 10000# # 要求:# 从文件中取出每一条记录放入列表中,# 列表的每个元素都是{'name':'egon','sex':'male','age':18,'salary':3000}的形式# # 2 根据1得到的列表,取出薪资最高的人的信息# 3 根据1到的列表,取出最年轻的人的信息# 4 根据1得到的列表,将每个人的信息中的名字映射成首字母大写的形式# 5 根据1得到的列表,过滤掉名字以a开头的人的信息# 6 使用递归打印斐波那契数列(前两个数的和得到第三个数)# 0 1 1 2 3 4 7...with open('b.txt',encoding='utf-8')as f: l=[{'name': line.split()[0], 'sex': line.split()[1], 'age': line.split()[2], 'salary': line.split()[3]} \for line in f]#2.print(max(l,key=lambda i:i['salary']))#3.print(min(l,key=lambda i:i['age']))#4.m=map(lambda x:x['name'].capitalize(),l)print(list(m))#5.print(list(filter(lambda x:not(x['name'].startswith('a')),l)))#6.def f(n):if n==0:return 0elif n==1:return 1else:if n==1000:return f(1000)else:return f(n-2)+f(n-1)for i in range(150):print(f(i))
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!