Maison >développement back-end >Tutoriel Python >Partage de fonctions intégrées en Python

Partage de fonctions intégrées en Python

黄舟
黄舟original
2017-07-18 13:20:441366parcourir

Python a des fonctions intégrées très intelligentes et puissantes, qui ne sont généralement pas utilisées par les débutants. Je ne l'ai découvert qu'après avoir utilisé Python pendant un certain temps, wow, il y a une tellement bonne chose. , cette fonction est classique et a été strictement testée. Elle peut vous faire économiser beaucoup de choses à la fois. Le code est non seulement concis et facile à lire, mais vous n'avez pas non plus besoin de créer. cela à huis clos. C'est pratique pour vous et réduit les coûts.

1.sorted()

1) Pour trier une liste

sorted([100, 98, 102, 1, 40])
>>>[1, 40, 98, 100, 102]

2) Par paramètre/fonction clé

Par exemple, il y a de nombreux éléments de dictionnaire imbriqués dans une longue liste. Nous devons trier en fonction de la longueur de chaque élément

L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]
new_line=sorted(L,key=lambda x:len(x))
print(new_line)
>>>[{1: 9}, {1: 5, 3: 4}, {1: 3, 6: 3}, {1: 1, 2: 4, 5: 6}]

3) Trier la liste composée. de tuples

Par exemple, ce qui suit est une liste des âges des étudiants

students = [('wang', 'A', 15), ('li', 'B', 12), ('zhang', 'B', 10)]   
print(sorted(students, key=lambda student : student[2]))  
>>>[('zhang', 'B', 10), ('li', 'B', 12), ('wang', 'A', 15)]

4) Utilisez la fonction cmp pour trier

students = [('wang', 'A', 15), ('li', 'B', 12), ('zhang', 'B', 10)]   
print(sorted(students, cmp=lambda x,y : cmp(x[0], y[0])) )
>>>[('li', 'B', 12), ('wang', 'A', 15), ('zhang', 'B', 10)]

En fait, il faut parler attentivement du tri de Python. Il faut un article entier pour parler de son algorithme de tri. Il y a beaucoup de contenu. Si vous êtes intéressé, vous pouvez jeter un œil au code source. pour voir comment il est conçu. Je clique d'abord ici

2.map()

map peut mapper la séquence spécifiée en fonction de la fonction fournie. et une liste, et applique la fonction f à la liste. Pour chaque élément, elle renvoie ensuite une nouvelle liste Les paramètres d'entrée de la fonction map peuvent également être multiples . . Notez que cette fonction doit avoir une valeur de retour (la valeur est importante) partout).

Sinon, une nouvelle liste sera renvoyée, similaire à [Aucun, Aucun, Aucun, Aucun, Aucun, Aucun, Aucun, Aucun, Aucun]

le cas échéant Le scénario nécessite des opérations répétées sur certains éléments de la liste, ce qui peut être facilement réalisé avec map.

3.enumerate()

En Python,

itération est toujours supprimé L'élément lui-même, pas l'index de l'élément. Parfois, nous avons besoin de connaître l'index de l'élément. Par exemple, il y a des noms de sites Web dans une longue liste. Nous espérons que l'index peut également être . répertorié lors de l’impression. S'il n'y a pas une telle fonction, nous devons ajouter une variable et incrémenter la variable count lors de l'impression dans la boucle. Maintenant, avec enumerate, nous n'avons pas à nous donner de tels problèmes, nous pouvons le faire directement.

4.zip()

La fonction zip accepte n'importe quelle séquence de nombres (y compris 0 et 1) comme paramètres et renvoie une liste de tuples

x = [1, 2, 3]
y = [4, 5, 6]
z = [7, 8, 9]
xyz = zip(x, y, z)
>>print xyz
Cette fonction est particulièrement utile dans la construction. Elle est très pratique pour dicter des séquences (cette astuce est très astucieuse, vous pouvez soigneusement

la comprendre )

5 .filter()

filter La fonction accepte une fonction f et une liste La fonction de cette fonction f est de juger chaque élément et de renvoyer True ou False Cela peut

filtrer certains <.> éléments qui ne remplissent pas les conditions Renvoie ensuite la liste qui remplit les conditions

Surtout lors du traitement des fichiers,
def is_even(x):
	return x%2==0
print(filter(is_even,[1,2,3,4,5]))
>>>[2, 4]
il faut supprimer certains espaces, retours chariot et caractères vides.


6.reduce()

L'utilisation de la fonction de réduction est très similaire à celle de map. C'est aussi une fonction f et une liste, mais le paramètre d'entrée de la fonction doit être

Deux

, réduire est également appelé à plusieurs reprises pour chaque élément, et renvoie enfin la valeur finale, tandis que map renvoie une liste

Notez que

Reduce

en python3 a été supprimé de la fonction globale. Si vous devez l'utiliser, veuillez from functools import reduction. Enfin, j'insiste sur l'originalité. Si ce que j'écris convient à tout le monde C'est utile, merci de

encourager

, retweeter ou de le suivre, appuyer longuement. pour envoyer le QR code, qui est aussi un petit soutien pour moi.

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