Python-Tutorial: Slicing, Iteration, Listengenerierung

Scheibe

Der Sequenztyp ist ein Typ einer Datenstruktur, deren Elemente nacheinander platziert werden. Mit dieser Methode kann ein bestimmtes Datenelement durch Subskription erhalten werden, oder ein Satz von Sequenzelementen kann durch Angabe des Indexbereichs erhalten werden. Diese Art des Zugriffs auf die Sequenz wird als Slicing bezeichnet.

  • Datentypen, die in Scheiben geschnitten werden können: Liste, Tupel, Zeichenfolge.
  • Der Abschnitt des Schneidvorgangs wird links geschlossen und rechts geöffnet.
  • Operatoren für den Schneidevorgang: [] [:] [::]
    L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']

#Nehmen Sie die ersten drei Daten in
L-Druck (L [0: 3]) # ['Michael', 'Sarah', 'Tracy']

#从索引 1 开始,取出 2 个元素出来:
print(L[1:3])

#倒数索引取元素:
print(L[-2:-1])
print(L[-1:])  
print(L[-2:])  

#原样复制
print(L[:]) 

#从头到尾间隔20取数
L1 = list(range(100))
print(L1[::20]) 

Ergebnisse der:

['Michael', 'Sarah', 'Tracy']
['Sarah', 'Tracy']
['Bob']
['Jack']
['Bob', 'Jack']
['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack']
[0, 20, 40, 60, 80]

Wiederholung

Durchlaufen Sie bei einer gegebenen Liste oder einem Tupel die Liste oder das Tupel durch eine for-Schleife. Diese Durchquerung ist eine Iteration.
Übliche Objekte, die iteriert werden können, sind: Zeichenfolgen, Listen, Tupel und Wörterbücher.

Durch das Wörterbuch iterieren

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
d={
    
    'python':1,'php':2,'java':3}

#默认迭代的是key
print("字典默认迭代key:")
for i in d:
    print(i)

print("字典自定义迭代key:")    
#自定义迭代key
for key in d.keys():
    print(key)

print("字典自定义迭代value:")  
#迭代value
for value in d.values():
    print(value)

print("字典自定义同时迭代key和value:")  
#同时迭代key,value
for k , v in d.items():
    print(k,v)

Ergebnisse der:

字典默认迭代key:
php
java
python
字典自定义迭代key:
php
java
python
字典自定义迭代value:
2
3
1
字典自定义同时迭代key和value:
php 2
java 3
python 1

Durchlaufen Sie die Liste

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
#对于一个列表
lanage=['python','php','java','c++']

# 第一种:
print("list迭代第一种方法:")
for x in range(len(lanage)):
    print(x,lanage[x])
# 第二种:
print("list迭代第二种方法:")
for i ,value in enumerate(lanage):
    print(i,value)

#在同一行输出:
print("list迭代同一行输出:")
for i ,value in enumerate(lanage):
    print(i,value ,end=',')

Ergebnisse der:

list迭代第一种方法:
0 python
1 php
2 java
3 c++
list迭代第二种方法:
0 python
1 php
2 java
3 c++
list迭代同一行输出:
0 python,1 php,2 java,3 c++,

Listenerstellung

Der effizienteste und schnellste Weg, Berechnungen und Operationen an den Daten in der Liste durchzuführen, um eine neue Liste zu generieren, ist die Listengenerierung.

# 使用列表生成式对列表数平方

b = range(1, 11)
c = [x*x for x in b]
print(c)

执行结果:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

Mit wenn Urteil

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
# 提取大于0的数
c = [1, 3, -3, 4, -2, 8, -7, 6]
d = [x for x in c if x > 0]
print(d)

执行结果:

[1, 3, 4, 8, 6]

Mehrere Parameter

L = [m + n for m in 'ABC' for n in 'XYZ']
print(L) 

执行结果:

['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']

Ich denke du magst

Origin blog.csdn.net/qdPython/article/details/112613720
Empfohlen
Rangfolge