Ravi de vous rencontrer. J'ai 19 ans et je souhaite devenir ingénieur. Cette fois, je me suis soudain demandé à quel moment je résolvais les exercices, donc
Différence entre trié et trié b> p> Je vais écrire sur. J'espère que cela aidera la solution de quelqu'un. Je suis un débutant donc c'est difficile à voir, mais pardonnez-moi s'il vous plaît.
Je voudrais écrire dans l'ordre suivant. p> -Quelle est la méthode de tri et comment l'utiliser? -Quelle est la fonction triée et comment l'utiliser? -Quelle est la différence?
Selon le magazine TechAcademy, la méthode de tri a été écrite comme suit.
"La fonction de tri est une fonction de tri de la liste. Vous pouvez trier la liste des nombres et des chaînes par ordre croissant ou décroissant. 』
Aussi, sur la façon d'utiliser
"La fonction de tri peut être utilisée sous la forme de" list name.sort () ". Vous pouvez également définir l'argument en sens inverse. Par défaut, reverse est False, donc si vous utilisez reverse sans le définir, il sera dans l'ordre croissant. Vous pouvez le faire dans l'ordre décroissant en définissant reverse = True. 』
En fait, cela semble être une méthode de tri, mais mis à part les détails.
Selon ce qui précède, la méthode de tri est une méthode qui manipule l'ordre des éléments dans une "liste", par exemple.
>>>str_list = list("qiita") >>>str_list.sort() >>>print(str_list) ['a', 'i', 'i', 'q', 't']
Ou
>>>str_list = list("qiita") >>>str_list.sort(reverse=True) >>>print(str_list) ['t', 'q', 'i', 'i', 'a']
Il semble que vous devriez dire.
D'après le blog dot "La fonction triée est l'une des fonctions intégrées de Python qui trie (trie) les éléments dans un objet qui a plusieurs éléments tels que des listes, des taples, des dictionnaires, des ensembles et des chaînes, et les renvoie dans une nouvelle liste." Est écrit, par exemple
>>>x = (5, 8, 4, 1, 3, 2, 7, 6) >>>y = sorted(x, reverse=True) >>>print(y)
Même si vous entrez
[8, 7, 6, 5, 4, 3, 2, 1]
Semble être sortie. Taper
>>>x = (5, 8, 4, 1, 3, 2, 7, 6) >>>y = tuple(sorted(x, reverse=True)) >>>print(y)
Si c'est le cas, il semble être exploité et sorti. De plus, si vous utilisez la fonction triée dans le dictionnaire
>>>sorted({1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'}) [1, 2, 3, 4, 5]
Il semble que les éléments du dictionnaire sont répertoriés et sortis.
Soit dit en passant, la plupart des réponses ont été données jusqu'à présent, je les écrirai donc sous forme de résumé. -La méthode de tri ne peut être appliquée qu'à la liste, et la liste d'origine est utilisée telle quelle pour le tri. -D'un autre côté, la fonction triée est efficace pour les itérables, et après le tri, place les éléments dans une nouvelle liste. Il y avait une telle différence. En aparté d'ici, Pour la méthode de tri et la fonction triée, si vous spécifiez key = function comme argument, Il semble que le tri soit effectué en fonction de la valeur de cette fonction comme norme de comparaison. Par exemple, selon la documentation Python 3.9
Exemple de comparaison de chaînes insensible à la casse:
>>>sorted("This is a test string from Andrew".split(), key=str.lower) ['a', 'Andrew', 'from', 'is', 'string', 'test', 'This']
Autre
>>>student_tuples = [ ('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10), ] >>>sorted(student_tuples, key=lambda student: student[2]) # sort by age [('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
Il semble que vous puissiez également l'utiliser comme décrit ci-dessus. (Capturer) Si clé = nom de la fonction, il semble que la fonction de la fonction soit d'abord exécutée pour chaque élément de l'objet itérable, puis le tri est effectué. Par exemple, dans les deux exemples ci-dessus, Dans le premier cas, il semble que chaque élément de la chaîne de caractères répertoriée en premier soit remplacé par toutes les lettres minuscules, puis trié. (Cependant, il revient à l'élément d'origine au moment de la sortie.) Par conséquent, il semble que le tri sera effectué quelle que soit la taille. Par la suite, puisque ce dernier utilise l'expression lambda, c'est-à-dire
>>>def ~~(student): return student[2]
Par conséquent, chaque élément de la liste ci-dessus (c'est-à-dire le taple ci-dessus) est affecté à l'argument réel de cette fonction anonyme, et la valeur dont le numéro d'index est 2 est renvoyée comme valeur de retour, puis utilisée comme cible de comparaison. Trier.
Une chose que je me demandais ici.
"Si les numéros d'index ci-dessus sont identiques, qu'est-ce qui sera comparé ensuite?" 』
Quelqu'un peut-il m'apprendre s'il vous plaît?
Huh. Je l'ai écrit pour la première fois, mais cela demande du temps et de la force physique. La prochaine fois, j'aimerais écrire s'il y a quelque chose qui m'intéresse. Si vous avez des erreurs, veuillez nous en informer.
Merci de rester avec nous pour un long et long voyage jusqu'au bout. Merci aussi la prochaine fois.
Recommended Posts