Maison développement back-end Tutoriel Python Partager diverses compétences opérationnelles de liste en Python

Partager diverses compétences opérationnelles de liste en Python

Apr 24, 2017 pm 01:55 PM
list python

J'apprends le langage Python récemment. J'ai essentiellement appris la syntaxe de base de Python. Je pense que la position de Python dans le traitement des données est indissociable de son opération de liste.

J'ai appris les opérations de base pertinentes et pris des notes ici.

'''
Python --version Python 2.7.11
Quote : https://docs.python.org/2/tutorial/datastructures.html#more-on-lists
Add by camel97 2017-04
'''
list.append(x) #在列表的末端添加一个新的元素
Add an item to the end of the list; equivalent to a[len(a):] = [x].
Copier après la connexion

list.extend(L)#Fusionner les éléments des deux listes ensemble

Étendez la liste en ajoutant tous les éléments de la liste donnée équivalent à un[ ; len(a):] = L.

list.insert(i, x)#Insérer l'élément à la position spécifiée (la position est la précédente de l'élément d'index i)
Insérer un élément à une position donnée. Le premier argument est l'index de l'élément avant lequel insérer, donc a.insert(0, x) s'insère au début de la liste, et a.insert(len(a), x) est Équivalent à a.append(x).

list.remove(x)#Supprimez le premier élément de valeur x dans la liste (c'est-à-dire que s'il y a deux x dans la liste, seul le premier x sera être supprimé)

Supprimer le premier élément de la liste dont la valeur est x C'est une erreur s'il n'y a pas un tel élément.

list.pop([i])#. Supprimer la liste Le i-ième élément dans et renvoie cet élément. Si le paramètre i n'est pas donné, le dernier élément de la liste sera supprimé par défaut
Supprimez l'élément à la position donnée dans la liste et renvoyez-le. Si aucun index n'est spécifié, a.pop() supprime et renvoie. le dernier élément de la liste. (Les crochets autour du i dans la signature de la méthode indiquent que le paramètre est facultatif, et non que vous devez taper des crochets à cette position. Vous verrez fréquemment cette notation dans la référence de la bibliothèque Python.)

list.index(x)#Renvoyer l'index dans la liste du premier élément dont la valeur est x C'est une erreur s'il n'y a pas un tel élément.

list.count. (x)#Renvoyer le nombre d'éléments avec la valeur x dans la liste

Renvoyer le nombre de fois que x apparaît dans la liste.

démo :

result:

#-*-coding:utf-8-*-
L = [1,2,3]   #创建 list 
L2 = [4,5,6]
print L
L.append(6)   #添加
print L
L.extend(L2) #合并
print L
L.insert(0,0) #插入
print L
L.remove(6)   #删除
print L
L.pop()     #删除
print L
print L.index(2)#索引
print L.count(2)#计数
L.reverse()   #倒序
print L
Copier après la connexion

list.sort(cmp=None, key=None, reverse=False)

[1, 2, 3]
[1, 2, 3, 6]
[1, 2, 3, 6, 4, 5, 6]
[0, 1, 2, 3, 6, 4, 5, 6]
[0, 1, 2, 3, 4, 5, 6]
[0, 1, 2, 3, 4, 5]
2
1
[5, 4, 3, 2, 1, 0]
Copier après la connexion
 Trier les éléments de la liste sur place (les arguments peuvent être utilisés pour le tri personnalisation, voir sorted() pour leur explication).

1. Trier une liste. La valeur par défaut est de trier de petit à grand

2.reverse est une valeur booléenne. La valeur par défaut est False. S'il est défini sur True, alors les éléments de cette liste seront comparés en fonction de la valeur booléenne. résultat opposé. (Ordre inverse).

L = [2,5,3,7,1]
L.sort()
print L
==>[1, 2, 3, 5, 7]
L = ['a','j','g','b']
L.sort()
print L
==>['a', 'b', 'g', 'j']
Copier après la connexion
# reverse est une valeur booléenne. S'il est défini sur True, alors les éléments de la liste sont triés comme si chaque comparaison était inversée.

3. .key est une fonction qui spécifie la clé de tri, généralement une expression lambda ou une fonction spécifiée

L = [2,5,3,7,1]
L.sort(reverse = True)
print L
==>[7, 5, 3, 2, 1]
L = ['a','j','g','b']
L.sort(reverse = True)
print L
==>['j', 'g', 'b', 'a']
Copier après la connexion
#key spécifie une fonction d'un argument utilisée pour extraire une clé de comparaison de chaque élément de la liste : key = str .lower. La valeur par défaut est Aucun (comparez directement les éléments).

4.cmp ​​​​est une fonction qui spécifie deux paramètres. Il détermine la méthode de tri.

#-*-coding:utf-8-*-
#创建一个包含 tuple 的 list 其中tuple 中的三个元素代表名字 , 身高 , 年龄
students = [('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)]
print students
==>[('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)]
students.sort(key = lambda student:student[0])
print students
==>[('Dave', 180, 10), ('John', 170, 15), ('Tom', 160, 12)]#按名字(首字母)排序
students.sort(key = lambda student:student[1])
print students
==>[('Tom', 160, 12), ('John', 170, 15), ('Dave', 180, 10)]#按身高排序
students.sort(key = lambda student:student[2])
print students
==>[('Dave', 180, 10), ('Tom', 160, 12), ('John', 170, 15)]#按年龄排序
Copier après la connexion
#cmp spécifie une fonction de comparaison personnalisée de deux arguments (éléments itérables) qui doit renvoyer un nombre négatif, zéro ou positif selon que le premier #argument est considéré comme plus petit, égal ou plus grand que le second argument : cmp=lambda x,y : cmp(x.lower(), y.lower()). La valeur par défaut est Aucune.

cmp permet aux utilisateurs de personnaliser la relation de taille. Habituellement, nous pensons 1 &Lt 2 et un &Lt b.

#-*-coding:utf-8-*-
students = [('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)]
print students
==>[('John', 170, 15), ('Tom', 160, 12), ('Dave', 180, 10)]
#指定 用第一个字母的大写(ascii码)和第二个字母的小写(ascii码)比较
students.sort(cmp=lambda x,y: cmp(x.upper(), y.lower()),key = lambda student:student[0])
print students
==>[('Dave', 180, 10), ('Tom', 160, 12), ('John', 170, 15)]
#指定 比较两个字母的小写的 ascii 码值
students.sort(cmp=lambda x,y: cmp(x.lower(), y.lower()),key = lambda student:student[0])
print students
==>[('Dave', 180, 10), ('John', 170, 15), ('Tom', 160, 12)]
#cmp(x,y) 是python内建立函数,用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
Copier après la connexion
Nous pouvons désormais personnaliser la fonction pour trier la liste selon les règles spécifiées en personnalisant la relation de taille (par exemple, 2 < a < 1 < b).

Cela est souvent utile lorsque nous sommes confrontés à des problèmes particuliers.

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Comment résoudre le problème des autorisations rencontré lors de la visualisation de la version Python dans le terminal Linux? Apr 01, 2025 pm 05:09 PM

Solution aux problèmes d'autorisation Lors de la visualisation de la version Python dans Linux Terminal Lorsque vous essayez d'afficher la version Python dans Linux Terminal, entrez Python ...

Comment copier efficacement la colonne entière d'une dataframe dans une autre dataframe avec différentes structures dans Python? Comment copier efficacement la colonne entière d'une dataframe dans une autre dataframe avec différentes structures dans Python? Apr 01, 2025 pm 11:15 PM

Lorsque vous utilisez la bibliothèque Pandas de Python, comment copier des colonnes entières entre deux frames de données avec différentes structures est un problème courant. Supposons que nous ayons deux dats ...

Pourquoi mon code ne peut-il pas faire renvoyer les données par l'API? Comment résoudre ce problème? Pourquoi mon code ne peut-il pas faire renvoyer les données par l'API? Comment résoudre ce problème? Apr 01, 2025 pm 08:09 PM

Pourquoi mon code ne peut-il pas faire renvoyer les données par l'API? En programmation, nous rencontrons souvent le problème du retour des valeurs nulles lorsque l'API appelle, ce qui n'est pas seulement déroutant ...

Les annotations des paramètres Python peuvent-elles utiliser des chaînes? Les annotations des paramètres Python peuvent-elles utiliser des chaînes? Apr 01, 2025 pm 08:39 PM

Utilisation alternative des annotations des paramètres Python Dans la programmation Python, les annotations des paramètres sont une fonction très utile qui peut aider les développeurs à mieux comprendre et utiliser les fonctions ...

Comment les scripts Python effacent-ils la sortie en position de curseur à un emplacement spécifique? Comment les scripts Python effacent-ils la sortie en position de curseur à un emplacement spécifique? Apr 01, 2025 pm 11:30 PM

Comment les scripts Python effacent-ils la sortie en position de curseur à un emplacement spécifique? Lors de l'écriture de scripts Python, il est courant d'effacer la sortie précédente à la position du curseur ...

Python multiplateform de bureau de bureau de bureau: quelle bibliothèque GUI est la meilleure pour vous? Python multiplateform de bureau de bureau de bureau: quelle bibliothèque GUI est la meilleure pour vous? Apr 01, 2025 pm 05:24 PM

Choix de la bibliothèque de développement d'applications de bureau multiplateforme Python De nombreux développeurs Python souhaitent développer des applications de bureau pouvant s'exécuter sur Windows et Linux Systems ...

Dessin graphique de sablier Python: comment éviter les erreurs variables non définies? Dessin graphique de sablier Python: comment éviter les erreurs variables non définies? Apr 01, 2025 pm 06:27 PM

Précision avec Python: Source de sablier Dessin graphique et vérification d'entrée Cet article résoudra le problème de définition variable rencontré par un novice Python dans le programme de dessin graphique de sablier. Code...

Comment compter et trier efficacement de grands ensembles de données de produit dans Python? Comment compter et trier efficacement de grands ensembles de données de produit dans Python? Apr 01, 2025 pm 08:03 PM

Conversion et statistiques de données: traitement efficace des grands ensembles de données Cet article introduira en détail comment convertir une liste de données contenant des informations sur le produit en une autre contenant ...

See all articles