Maison  >  Article  >  développement back-end  >  Utilisation de l'index de tranche Python

Utilisation de l'index de tranche Python

不言
不言original
2018-06-04 18:00:022512parcourir

Cet article présente principalement l'utilisation de l'index de tranche Python. Il analyse en détail les méthodes d'utilisation courantes et les précautions de fonctionnement de l'index de tranche Python sous forme d'exemples.

Les exemples. de cet article décrivent l'utilisation des tranches Python. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :

En Python, vous pouvez accéder à chaque élément de la séquence en utilisant de simples crochets plus un indice. Cette méthode est appelée l'opérateur de découpage, slicing There. existe trois formes d'opérateurs :

[], [:], [ ::]

La syntaxe pour accéder à un certain élément de données est la suivante :

sequence[index]

séquence est le nom de la séquence, index est le décalage correspondant de l'élément accédé, qui est un nombre positif, 0<=index<=len(sequence)-1; index négatif, sa plage est -len(sequence) <=index <= -1

Puisque Python est orienté objet, il est également accessible en ajoutant un index directement après la séquence, comme suit

print (&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;)[2]

Pour la situation d'accès à plusieurs éléments

sequence[starting_index:ending_index]

Ce qui suit existe plusieurs manières d'accéder Donnez un exemple :

sequence="abcdefgh"
print len(sequence)  #显示序列长度
print sequence    #打印完整序列
print sequence[:]
print sequence[2:3]  #切片显示,不指定步长默认为1,指定了步长(这里是setp为2)按照步长进行显示
print sequence[1:6:2]
print sequence[3]   #元素访问
print sequence[0:3]  #从首元素开始访问,访问区间为[0,3),左开you
print sequence[:3]
print sequence[2:8]  #从第二个元素一直访问到最后一个元素
print sequence[2:]
print sequence[::-1] #从最后一个元素开始访问,逆序访问,可以视为“翻转”操作
print max(sequence)
print min(sequence)
print sequence.index(&#39;c&#39;)

Ce qu'il faut noter ici, c'est l'opérateur de répétition *

sequence * copies_int

Lorsque plusieurs copies d'une séquence sont nécessaires, l'opérateur de répétition entre en jeu, copies_int doit être un entier

print sequence*3   #使用重复操作符

L'opérateur de concaténation +

sequence1 + sequence2

permet de concaténer deux séquences du même type à l'aide de +

print sequence + sequence

Mais notez que cela semble très pratique, mais cette opération n'est pas la plus rapide ni la plus efficace. Pour les chaînes, cette opération n'est pas aussi efficace que de mettre toutes les sous-chaînes dans. une liste. ou des objets itérables, puis utilisez la méthode join() pour connecter tous les contenus ensemble afin d'économiser de la mémoire ; pour les listes, il est recommandé d'utiliser une méthode de type liste extend() pour connecter deux ou plusieurs objets de liste Fusionner

str.join(sequence) #方法用于将序列中的元素以指定的字符连接生成一个新的字符串

str = "-";
seq = ("a", "b", "c"); # 字符串序列
print str.join( seq );

et le résultat est :

a-b-c

list.extend(seq)  #函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

aList = [123, &#39;xyz&#39;, &#39;zara&#39;, &#39;abc&#39;, 123];
bList = [2009, &#39;manni&#39;];
aList.extend(bList)
print "Extended List : ", aList ;

Le résultat est :

Extended List :  [123, &#39;xyz&#39;, &#39;zara&#39;, &#39;abc&#39;, 123, 2009, &#39;manni&#39;]

La syntaxe de l'index de tranche est meilleure que simple single La méthode d'indexation des éléments est beaucoup plus flexible et les valeurs d'index de début et de fin peuvent dépasser la longueur de la chaîne. Autrement dit, la valeur de l'index de début peut être inférieure à 0 et la valeur de l'index de fin peut être supérieure à la longueur de la séquence, par exemple :

print (&#39;Faye&#39;,&#39;Leanna&#39;,&#39;Daylen&#39;)[-100:100]

Le résultat est :

(&#39;Faye&#39;, &#39;Leanna&#39;, &#39;Daylen&#39;)

S'il y a une chaîne et que vous souhaitez l'afficher à travers une boucle de cette manière : coupez le dernier caractère à chaque fois, comment y parvenir ?

sequence = &#39;abcdef&#39;
i = -1
for i in range(-1,-len(sequence),-1):
  print sequence[:i]

Le résultat est :

abcde
abcd
abc
ab
a

On constate que le premier n'est pas affiché, c'est-à-dire le complet la chaîne n'est pas affichée, sauf En outre, définissez un sequence[:0] séparément, en utilisant Aucun comme valeur d'index

sequence = &#39;abcdef&#39;
for i in [None] + range(-1,-len(sequence),-1):
  print sequence[:i]

Le résultat est :

abcdef
abcde
abcd
abc
ab
a

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