Explication détaillée de l'utilisation de la méthode sort en python

不言
Libérer: 2018-04-09 17:24:41
original
3404 Les gens l'ont consulté

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]
Copier après la connexion

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]
Copier après la connexion

Remarque : y = x[:] copie tous les éléments de la liste x vers y via une opération de découpage. Si x est simplement attribué à y : y = x, y et x pointent toujours vers la même liste, et aucune nouvelle copie n'est générée .

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

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]
Copier après la connexion

sorted renvoie un Une copie de la commande, et le type est toujours une liste, comme suit :

print sorted('Python') #['P', 'h', 'n', 'o', 't', 'y']
Copier après la connexion

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]
Copier après la connexion

3. Paramètres facultatifs

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

Lors de l'utilisation de key, une fonction qui est. appelé par le processus de tri doit être fourni :

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;]
Copier après la connexion

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]
Copier après la connexion


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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal