Heim > Artikel > Backend-Entwicklung > So verwenden Sie komplexe Datentypen in Python
Sequenzerweiterungstypen umfassen: Zeichenfolge, Tupel und Liste.
Zu den Operationen, die an einer Sequenz ausgeführt werden können, gehören Indizierung, Slicing, Addition, Multiplikation und Überprüfung von Mitgliedern.
Darüber hinaus verfügt Python über integrierte Methoden zur Bestimmung der Länge einer Sequenz und zur Bestimmung der größten und kleinsten Elemente.
Liste: Liste ist eine Erweiterung des Sequenztyps, die sehr häufig verwendet wird
Liste ist ein Sequenztyp, der geändert werden kann wird nach der Erstellung
Verwenden Sie eckige Klammern [] oder list() zum Erstellen und verwenden Sie Kommas, um Elemente zu trennen
Jeder Elementtyp in der Liste kann unterschiedlich sein, es gibt keine Längenbeschränkung
hobby_list = [hobby, 'run', 'girl'] print(id(hobby_list)) # 4558605960 print(type(hobby_list)) # print(hobby_list) # ['read', 'run', 'girl']
Wenn Möchten Sie eine Liste mit einer Länge von 10 initialisieren
list_empty = [None]*10 print(list_empty) # [None, None, None, None, None, None, None, None, None, None]
Verwenden Sie die Funktion range(), um eine Liste zu erstellen:
hobby_list = list(range(5)) # [0, 1, 2, 3, 4]
hobby_list = ['read', 'run',['girl_name', 18, 'shanghai'] ] print(hobby_list[2][1])# 取出girl的年龄 18
Python erstellt eine zweidimensionale Liste und schreibt die erforderlichen Parameter hinein Spalten und Zeilen, d.
list_2d = [[0 for i in range(5)] for i in range(5)] list_2d[0].append(3) list_2d[0].append(5) list_2d[2].append(7) print(list_2d) # [[0, 0, 0, 0, 0, 3, 5], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 7], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
4. Listenänderung
Verwenden Sie die Methode append(), um ein Element oben im Stapel hinzuzufügen. Verwenden Sie die Methode pop(), um das Element oben im Stapel zu entfernen, ohne einen Index anzugeben.
append: Fügen Sie ein Element hinzu. Zum Beispiel:
# 以下实例展示了3X4的矩阵列表: matrix = [ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], ] # 以下实例将3X4的矩阵列表转换为4X3列表: transposed=[[row[i] for row in matrix] for i in range(4)] print(transposed) # [[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]] # 以下实例也可以使用以下方法来实现: transposed = [] for i in range(4): transposed.append([row[i] for row in matrix]) print(transposed) # [[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]
3. Listenverständnisse
Jedes Listenverständnis beginnt mit for, gefolgt von einem Ausdruck und dann null oder mehr for- oder if-Klauseln. Die generierte Liste wird durch die Ausdrücke definiert, die den for- und if-Anweisungen im Kontext folgen. Wenn der Ausdruck ein Tupel ableiten soll, müssen Sie Klammern verwenden.
[Ausdruck für Variable in Liste]
Beispiel:
hobby_list = ['read', 'run', 'girl'] # 索引序号 0 1 2 print(hobby_list[1])# 取出第二个爱好 <code>run
-Anweisungen.
Die zweite Aussage links ist die äußerste Ebene, gehen Sie eine Ebene nach rechts, und die erste Aussage links ist die letzte Ebene. Seine Ausführungsreihenfolge lautet: Liste und die neue Liste müssen die ursprüngliche Reihenfolge der Liste beibehalten
hobby_list = ['read', 'run', 'girl'] hobby_list[0] = 'write'
6. Tupel (Tupel): (a1, a2)
stack = [3, 4, 5] stack.append(6) stack.append(7) print(stack) # [3, 4, 5, 6, 7] print(stack.pop()) # 7 print(stack) # [3, 4, 5, 6] print(stack.pop()) # 6 print(stack.pop()) # 5 print(stack) # [3, 4]
print([i for i in range(10)] ) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] print([i ** 2 for i in range(10)]) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] print([0 for i in range(5)]) #[0, 0, 0, 0, 0] name_list = ['nick', 'sean', 'jason', 'tank'] for n in [name if name == 'nick' else name + '_a' for name in name_list] : print(n) # 'nick', 'sean_a', 'jason_a', 'tank_a' li = [1, 2, 3, 4, 5, 6, 7, 8, 9] print( [x ** 2 for x in li]) # [1, 4, 9, 16, 25, 36, 49, 64, 81] print( [x ** 2 for x in li if x > 5]) # [36, 49, 64, 81] print(dict([(x, x * 10) for x in li])) # {1: 10, 2: 20, 3: 30, 4: 40, 5: 50, 6: 60, 7: 70, 8: 80, 9: 90} #生成字典 vec1 = [2, 4, 6] vec2 = [4, 3, -9] sq = [vec2[i] + vec2[i] for i in range(len(vec))] # 实现列表相加 print(sq) # [6, 7, -3] testList = [1, 2, 3, 4] def mul2(x): return x * 2 print([mul2(i) for i in testList]) #使用复杂表达式或嵌套函数: # [2, 4, 6, 8]
Die Elementwerte in Tupeln dürfen nicht geändert werden, aber wir können Tupel verbinden und kombinieren, wie im folgenden Beispiel gezeigt:
[x*y for x in range(1,5) if x > 2 for y in range(1,4) if y < 3]
for x in range(1,5) if x > 2 for y in range(1,4) if y < 3 x*y
Das obige ist der detaillierte Inhalt vonSo verwenden Sie komplexe Datentypen in Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!