Maison  >  Article  >  développement back-end  >  Partagez des exemples d'utilisation du tri en python

Partagez des exemples d'utilisation du tri en python

零下一度
零下一度original
2017-05-25 11:12:222009parcourir

Cet article présente principalement la méthode de tri en python. Les amis qui en ont besoin peuvent s'y référer

La méthode sort() en Python est utilisée pour le tri des tableaux. exemples :

1. Formulaire de base
La liste a sa propre méthode de tri, qui trie la liste sur place. Puisqu'il s'agit d'un tri sur place, il est évident qu'il s'agit de tuples. ne peut pas avoir cette méthode, car les groupes de tuples ne peuvent pas être modifiés.

x = [4, 6, 2, 1, 7, 9]
x.sort()
print x # [1, 2, 4, 6, 7, 9]

Si vous avez besoin d'une copie triée tout en gardant la liste originale inchangée, comment y parvenir

x =[4, 6, 2, 1, 7, 9]
y = x[ : ]
y.sort()
print y #[1, 2, 4, 6, 7, 9]
print x #[4, 6, 2, 1, 7, 9]

Remarque : y = x[:] en divisant The ? L'opération slice copie tous les éléments de la liste x vers y. Si x est simplement attribué à y : y = x, y et x pointent toujours vers la même liste, et aucune nouvelle copie n'est produite .

Une autre façon d'obtenir une copie d'une liste triée est d'utiliser la fonction sorted :

x =[4, 6, 2, 1, 7, 9]
y = sorted(x)
print y #[1, 2, 4, 6, 7, 9]
print x #[4, 6, 2, 1, 7, 9]

sorted renvoie une copie ordonnée, et le type est toujours un list , comme suit :

print sorted('Python') #['P', 'h', 'n', 'o', 't', 'y']

2. Fonction de comparaison personnalisée

Vous pouvez définir votre propre fonction de comparaison puis la transmettre à la méthode de tri via les paramètres :

def comp(x, y):
if x < y:
return 1
elif x > y:
return -1
else:
return 0

nums = [3, 2, 8 ,0 , 1]
nums.sort(comp)
print nums # 降序排序[8, 3, 2, 1, 0]
nums.sort(cmp) # 调用内建函数cmp ,升序排序
print nums # 降序排序[0, 1, 2, 3, 8]

3. Paramètres facultatifs

La méthode de tri a également deux paramètres facultatifs : key et reverse

1. Lors de l'utilisation de key, vous devez fournir une fonction appelée par le processus de tri :

x = [&#39;mmm&#39;, &#39;mm&#39;, &#39;mm&#39;, &#39;m&#39; ]
x.sort(key = len)
print x # [&#39;m&#39;, &#39;mm&#39;, &#39;mm&#39;, &#39;mmm&#39;]

2. Pour inverser par ordre décroissant, vous devez fournir une valeur booléenne :

y = [3, 2, 8 ,0 , 1]
y.sort(reverse = True)
print y #[8, 3, 2, 1, 0]
【Recommandations associées】

1.

Explication détaillée de la façon d'utiliser sort() en Python

2. l'utilisation de valeurs() dans le tutoriel d'exemple Python

3

Exemple d'utilisation de sort_values ​​​​isin dans pandas DataFrame

.

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