Description détaillée des structures de données intégrées de Python

高洛峰
Libérer: 2017-03-13 18:08:40
original
1453 Les gens l'ont consulté

Cet article vous donne un résumé des 5 structures de données intégrées et des exemples d'opérations dans Python Il est très détaillé. Les amis qui en ont besoin peuvent s'y référer.

1. Liste (Liste)

La liste est une structure de données dans laquelle une série d'éléments peut être stockée. Les éléments de la liste doivent être séparés par des virgules et placés entre crochets pour indiquer qu’il s’agit d’une liste. L'exemple suivant est utilisé pour montrer quelques opérations de base de la liste :


# 定义一个 list 对象 class_list:
class_list = ['Michael', 'Bob', 'Tracy']
# 获得一个 class_list 的长度
print 'class have', len(class_list), 'students'
# 访问class_list中的对象
print 'The 3rd student in class is', class_list[2]
# 往 class_list 中插入对象
class_list.append('Paul')
# 从 class_list 中删除一个项目
del class_list[0]
# 对 class_list 进行排序
class_list.sort()
# 遍历整个class_list中的项目
print 'These students are :',
for student in class_list:
  print student,
Copier après la connexion

Le résultat de sortie est :

la classe a 3 élèves
Le Le 3ème élève de la classe est Tracy
Ces élèves sont : Bob Paul Tracy

Il y a quelques points à noter à propos du code ci-dessus :

Vous pouvez ajouter n'importe quel type d'objet à class_list. Autrement dit, les éléments d’une liste ne doivent pas nécessairement être du même type. Vous pouvez même insérer une liste dans class_list. La fonction
sort agit sur elle-même au lieu de renvoyer une copie, ce qui est différent du type string, car les chaînes ne peuvent pas être modifiées.
Le paramètre de mot-clé de fin de la fonction d'impression est utilisé pour spécifier la sortie une fois la saisie terminée. La valeur par défaut est un caractère de nouvelle ligne. Le code ci-dessus utilise un caractère d'espace pour remplacer le caractère de nouvelle ligne.

2. Tuple

Tuple n'est pas très différent de la liste en termes d'utilisation et de concept. la liste. Cela signifie qu'une fois qu'un tuple est défini, il ne peut pas être modifié : les objets ne peuvent pas être ajoutés ou supprimés, et les objets du tuple ne peuvent pas non plus être modifiés. Les éléments d'un

tuple doivent également être séparés par des virgules et les éléments doivent être mis entre parenthèses pour indiquer qu'il s'agit d'un tuple. Ces parenthèses sont facultatives, ce qui signifie qu'un tuple peut être défini des deux manières suivantes :

t = 'Adam', 'Lisa', 'Bart'
t = ('Adam', 'Lisa ', 'Bart')
Mais omettre la paire de parenthèses n'est pas forcément une bonne habitude. De plus, lorsque le tuple n'a qu'un seul élément, il doit y avoir une virgule après le premier élément. Dans ce cas, t = ('Adam',) doit être défini comme ceci. Cela peut sembler une contrainte étrange, mais sans la virgule, le tuple défini sans parenthèses devient t = 'Adam', ce qui est évidemment ambigu.

3. Dictionnaire

Un dictionnaire peut être considéré comme un ensemble de paires clé-valeur (clé-valeur) rassemblées. Les clés doivent être uniques et chaque clé est associée à une valeur. La clé doit être un objet immuable (tel qu'un tuple, un type numérique, une chaîne). Notez également que les paires clé-valeur dans le dictionnaire ne sont en aucun cas ordonnées.

La définition d'un dictionnaire doit être au format d={key1 : value1, key2 : value2, key3 : value3}. Les clés et les valeurs sont séparées par des deux-points, les paires clé-valeur sont séparées par des virgules et toutes les paires clé-valeur sont placées entre accolades. Certaines opérations de base sont les suivantes :


# 字典的定义
d = {
  'Adam': 95,
  'Lisa': 85,
  'Bart': 59
}
# 通过键来获取值
print "Adam's score is", d['Adam']
# 删除一个键值对
del d['Bart']
# 遍历字典
for name, score in d.items():
  print '{0} is {1}'.format(name, score)
# 往字典中增加一个键值对
d['Paul'] = 72
# 判断字典中是否存在某键,也可以用 if ab.has_key('Lisa')
if 'Lisa' in d:
  print "Lisa's address is", d['Lisa']
Copier après la connexion

Le résultat de sortie est :


Adam's score is 95
Lisa is 85
Adam is 95
Lisa's address is 85
Copier après la connexion

Quatre, Séquences

Les trois structures de données intégrées présentées ci-dessus sont toutes des séquences, et l'opération d'indexation est une opération de base de la séquence. Les objets de la séquence sont accessibles directement via l'opération d'indice. Bien que l'opération d'indice ait été démontrée ci-dessus, les files d'attente et les tuples sont indicés avec des nombres, et les dictionnaires sont indicés avec des mots-clés. L'indice de la séquence

commence à 0. Dans l'exemple ci-dessus, seul l'indice est un nombre positif. En fait, l'indice peut également être un nombre négatif, tel que -1,-2,-3. ... Les indices négatifs représentent les positions dans la direction opposée. Par exemple, class_list[-1] renvoie le dernier élément de class_list.

La séquence prend en charge non seulement les indices négatifs mais également les indices doubles. Cette paire d'indices doubles représente un intervalle. Par exemple, class_list[0:3] renvoie une copie de la sous-séquence de l'indice 1 à l'indice 3 dans class_list. Notez que cet intervalle est une paire d’intervalles semi-fermés et semi-ouverts. Cette opération est appelée opération de découpage. Si le deuxième index de l’opération de découpage dépasse la plage de la séquence, l’opération de découpage se terminera à la fin de la séquence. Les deux indices de l'opération de découpage ont des valeurs par défaut. La valeur par défaut du premier est 0 et la taille du second correspond à la longueur de la séquence.

Vous pouvez également fournir un troisième paramètre pour l'opération de découpage. Le troisième paramètre représente la taille du pas de l'opération de découpage. Sa valeur par défaut est 1. La taille du pas représente la distance entre les éléments, tels que nom[0:10:3]. Ce qui est renvoyé est la sous-séquence composée des indices 0, 3, 6 et 9 dans nom.

5. Ensemble (Ensemble)

Une collection est une collection non ordonnée d'objets simples. Les ensembles conviennent lorsque vous vous souciez uniquement de savoir si un objet existe dans une collection, quel que soit l'ordre dans lequel il existe ou le nombre de fois qu'il apparaît. Fonctions de base : déterminer s'il est membre d'un ensemble, si un ensemble est un sous-ensemble d'un autre ensemble, obtenir l'intersection de deux ensembles, etc. Exemple :


s = set(['Adam', 'Lisa', 'Bart', 'Paul'])
# 判断对象是否在集合中
if 'Bart' in s:
  print "Bart is in ?", 'Bart' in s
# 使用copy函数来拷贝一个set
sc = s.copy()
# 往集合中添加对象
sc.add('Bill')
# 从集合中删除对象
sc.remove('Adam')
# 求两个集合的交集,也可以使用 s.intersection(sc)
print s & sc
Copier après la connexion

Résultat de sortie :


Bart is in ? True
set(['Lisa', 'Paul', 'Bart'])
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!