[python] Quelle est la clé triée?

sorted , list.sort()

Ces deux fonctions sont intégrées à Python qui trient la liste. S'il s'agit d'un tableau unidimensionnel, vous n'avez pas à y penser trop, mais c'est ennuyeux lorsqu'il s'agit de commandes multiples. Alors, voici l'explication en tant que méthode quand c'est multi-ordre

sorted


	a = [
      [1,7,'z'],
      [3,2,'x'],
      [1,8,'r'],
      [2,2,'s'],
      [1,9,'b'],
      [2,2,'a']
    ]
    print sorted(a, key=lambda x:x[2])

Si vous écrivez ceci key = lambda x: x [2], la liste sera triée par index = 2, ici par caractère. Cependant, je n'étais pas sûr que le passage de cette fonction lambda fonctionnerait. Apparemment, j'étais toujours coincé dans une langue qui ne pouvait pas renommer les fonctions à l'ancienne.

example


	def f1(data,function):
		p = []
		for i in data:
			p.append(function(i))
		return p
	
	def f2(num):
		return num/2.
		
	a = f1  #Variable a qui signifie fonction f1
	b = f2  #Variable b signifiant la fonction f2

    print f1(3,f2)    #Avec ce résultat
	print a(3,b)      #Ce résultat est le même

Donc, dans trié, la clé n'a pas été spécifiée pour comparer le deuxième élément, Cela signifie qu'une fonction qui renvoie les éléments à comparer a été spécifiée.

sorted


	sort(a,key=str.lower)
	sort(a,key=lambda x:x[2])
	    # for i in a:
	    #     key(i) =>Facteur de comparaison

Cela signifie que vous pouvez même ajouter vos propres fonctions élaborées.

function_x


	def function_x(something):
		'''
Quelque chose qui renvoie des résultats très élaborés et inattendus
		'''
		return result
		
	a = [
      [1,7,'z'],
      [3,2,'x'],
      [1,8,'r'],
      [2,2,'s'],
      [1,9,'b'],
      [2,2,'a']
    ]
    print sorted(a,key=function_x)

Par exemple, si vous créez une fonction qui renvoie le classement mondial du football lorsque vous lancez un nom de pays et le triez, Vous pouvez trier par nom de pays dans l'ordre de classement du football. (Pas de demande) Cela peut être utile et inopinément utile.

Recommended Posts

[python] Quelle est la clé triée?
[Python] Qu'est-ce que @? (À propos des décorateurs)
Qu'est-ce que python
À quoi sert le trait de soulignement Python (_)?
Qu'est-ce que Python
Qu'est-ce que "mahjong" dans la bibliothèque Python? ??
[Python] Qu'est-ce que Pipeline ...
[Python] Qu'est-ce que virtualenv
Qu'est-ce que wheezy dans l'image Docker Python?
[Python] Python et sécurité-① Qu'est-ce que Python?
[Python] * args ** Qu'est-ce que kwrgs?
A quoi sert l'interface ...
Qu'est-ce que la fonction de rappel?
Cours de base Python (1 Qu'est-ce que Python)
[Python] Qu'est-ce qu'une fonction zip?
[Python] Qu'est-ce qu'une instruction with?
Python pour la déclaration ~ Qu'est-ce qui est itérable ~
Qu'est-ce que le système X Window?
Quelle est la version TLS par défaut du module de requêtes python?
Python> Qu'est-ce qu'une tranche étendue?
Comment déterminer qu'une clé croisée a été entrée dans Python3
Que faire lorsque le type de valeur est ambigu en Python?
[Python] Qu'est-ce qui est hérité par l'héritage multiple?
Qu'est-ce que NaN? NaN Zoya (Python) (394 jours de retard)
Quel type de langage de programmation est Python?
Qu'est-ce que clivoa, un framework pour le traitement ETL?
[Unix] Qu'est-ce que le processus zombie / processus orphelin?
Quelle est la cause de l'erreur suivante?
Où est écrit le processus d'instanciation python?
Qu'est-ce qu'un chien? Volume d'installation Python
[python] [meta] Le type de python est-il un type?
[Apprentissage automatique] Qu'est-ce que la norme LP?
Qu'est-ce que l'espace de noms
Qu'est-ce que copy.copy ()
[Python] Qu'est-ce qu'un argument formel? Comment définir la valeur initiale
Quel est le fichier XX à la racine d'un projet Python populaire?
Python est facile
Qu'est-ce que Django? .. ..
[Introduction à Python] Quelle est la différence entre une liste et un taple?
Qu'est-ce que dotenv?
Qu'est-ce que POSIX
Qu'est-ce que Linux
[Exemple d'amélioration de Python] Quel est le site d'apprentissage recommandé pour les débutants en Python?
Qu'est-ce que SALOME?
Qu'est-ce que Linux?
Quel genre de livre est le "Python Crash Course" le plus vendu au monde?
Qu'est-ce que l'hyperopt?
Python est une instance
Qu'est-ce que Linux
[Introduction à Python] Quelle est la méthode de répétition avec l'instruction continue?
Qu'est-ce que pyvenv
Qu'est-ce que __call__
Qu'est-ce que Linux
Qu'est-ce qu'un algorithme? Introduction à l'algorithme de recherche] ~ Python ~
Quelle est la différence entre «pip» et «conda»?
Qu'est-ce que la «programmation fonctionnelle» et «orientée objet»? Édition Python