Heim  >  Artikel  >  Backend-Entwicklung  >  Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

王林
王林nach vorne
2023-04-16 14:46:031076Durchsuche

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Sequenzobjekt (Sequenz)

„Sequenz“ ist eine Datenspeichermethode, die häufig in der Programmierung verwendet wird. In anderen Programmiersprachen wird eine „Sequenz“ oft als „Array“ bezeichnet, eine Datenstruktur, die zum Speichern verwandter Datenelemente verwendet wird. Nahezu jede Programmiersprache stellt „Sequenz“-Datenstrukturen bereit, beispielsweise eindimensionale und mehrdimensionale Arrays in C und Basic.

Der Unterschied zwischen Sequenz und Array:

  • Array bietet einen kontinuierlichen Speicherplatz, der denselben Datentyp speichern kann.
  • Obwohl Spalten fortlaufende Speicherplätze sind, können sie unterschiedliche Datentypen speichern und können auch als „fortgeschrittenere Arrays“ verstanden werden.

【Sequenzobjekt】

Häufig verwendete Sequenzobjekte in Python

  • Listenliste (variabler Datentyp).
  • Tupel (unveränderlicher Datentyp).
  • Sets (variabler Datentyp).
  • Wörterbuch (variabler Datentyp).
  • String String (unveränderlich).
  • Bereich( ).

1. Liste Liste (Typ)

  • Liste (Liste) ist der am häufigsten verwendete Datentyp in Python.
  • Listen können die Datenstrukturimplementierung der meisten Sammlungsklassen vervollständigen. Es unterstützt Zeichen, Zahlen, Zeichenfolgen und kann sogar Listen enthalten (d. h. verschachtelt).
  • Listen sind mit „[ ]“ gekennzeichnet und sind der häufigste zusammengesetzte Datentyp in Python.

So erstellen Sie eine Liste

Syntax: Listenobjektname = [Element 1, Element 2, ..., Element N].

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Beispiel: Zwei Möglichkeiten, ein Listenobjekt zu erstellen.

Methode 1: Standardmethode

列表对象= [元素1,元素2,元素3, ...元素N, ]
>>> list1 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9,]
>>> list1
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> list2 = [‘a’, ’b’, ‘c’, ‘d’, ‘e’, ‘f’, ]
>>> list2
[‘a’, ’b’, ‘c’, ‘d’, ‘e’, ‘f’]
>>> list3 = [‘a’, 1 , True , ‘Hello’, ]
>>> list3
[‘a’, 1 , True , ‘Hello’]

Beispiel: Zwei Möglichkeiten, ein Listenobjekt zu erstellen.

Methode 2: Verwenden Sie die integrierte Funktion „range0“

  • Python3-Liste) Die Funktion ist ein Objektiterator, der das von range() zurückgegebene iterierbare Objekt in eine Liste konvertieren kann, und der zurückgegebene Variablentyp ist eine Liste.

Syntax:

列表对象 = list(range(stop))
>>> list1 = list(range(10))
>>> list1
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> list2 = list(range(5, 10))
>>> list2
[5, 6, 7, 8, 9]
>>> list3 = list(range(0, 10, 2))
>>> list3
[0, 2, 4, 6, 8]

Python3-Range()-Funktion

  • Python3-Range0-Funktion gibt ein iterierbares Objekt und keinen Listentyp zurück, sodass die Liste beim Drucken nicht gedruckt wird.

Erstellungssyntax

① range( stop )
② range(start, stop [, step])

Parameterbeschreibung:

  • Start: Die Zählung beginnt von Anfang an. Der Standardwert beginnt bei 0. Beispiel: Bereich(5) entspricht Bereich(0, 5).
  • Stopp: Zählt bis einschließlich Stopp. Beispiel: Bereich(0, 5) ist [0, 1, 2, 3, 4] ohne 5.
  • Schritt: Schrittgröße, Standard ist 1. Beispiel: Bereich (0, 5) entspricht Bereich (0, 5, 1).

Wie greife ich auf die Liste zu?

Sie können auch [head subscript: tail subscript: step] verwenden, um die Werte in der Liste auszuschneiden, und Sie können die entsprechende Liste abfangen.

  • Der Index von links nach rechts beginnt standardmäßig mit 0 und der Index von rechts nach links beginnt standardmäßig mit -1. Der Index kann leer sein, um den Anfang oder das Ende anzuzeigen.

Codedemonstration: ch03-demol-it-slicepy

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Laufende Ergebnisse:

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Kann das erste Element in der mList geändert werden?

Listenaktualisierung

  • Sogenanntes Update bezieht sich auf die Neuzuweisung, Löschung, Hinzufügung und andere damit verbundene Vorgänge von Listenelementen.

Codedemonstration: cho3-dem2-istupdate.py

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Laufende Ergebnisse:

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Listenoperatoren

  • In der Einführung in Strings haben wir bereits etwas über die Funktionen von +- und *-Zeichen und gelernt Listenverwendung Ähnlich gibt es auch Operationen wie len() und in.

Codedemonstration: ch03-demo03-list-operation.py

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Laufergebnisse:

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

Funktionen in der Liste

Um Listenobjekte besser bedienen zu können, bietet Python auch viele Funktionen:

① len(list) : 获取列表元素的个数;
② max(list) : 获取列表中的最大值;
③ min(list) : 获取列表中的最小值;
④ list(seq) : 将元组对象转换成列表对象。

Die Liste bietet auch eine große Anzahl von Methoden:

① .append(obj) :在列表末尾添加一个元素;
② .count(obj) : 统计某个元素在列表中出现的次数;
③ .index(obj) : 从列表中找出某个值第一个匹配的索引位置;
④ .insert(index, obj) : 向指定位置前序添加一个元素
⑤ .remove(obj) : 移除一个指定的元素;
⑥ .reverse() : 反向列表中的元素;
⑦ .sort() : 对列表进行排序;

Der Unterschied zwischen List[] und list[:]

  • '[] „Identifizierung ist eine typische Referenzoperation und Adressübertragungsoperation.
  • “[: ]" Identität ist eine typische Zuweisungsoperation und Wertübergabeoperation.

Beispielcode:

List_1 = [ 1, 2, 3, 4]
List_2 = list_1

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

List_1 = [ 1, 2, 3, 4]
List_2 = list_1[:]

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

.

2、元组(Tuple)类型

  • Tuple(元组)类似于List(列表)。
  • 元组不能二次赋值(元组内的元素不允许更新),相当于只读列表。
  • 元组用"() "标识。内部元素用逗号隔开。

如何创建元组?

语法:

元组对象名称 = ( 元素1, 元素 2, ……, 元素N )。

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

元组的特点

元组与列表的所有操作基本类似,唯一不一样的地方是,元组的元素不允许被修改。

示例代码:

>>> tup1 = tuple(range(5))
>>> tup1
(0, 1, 2, 3, 4)
>>> tup2 = (5, 6, 7,)
>>> tup2
(5, 6, 7)

特别说明:

>>> tup1 = s(1)
>>> type(tup1)
>>> tup1 =(1,)
>>> tup1

3、字典( Dictionary)类型

  • 字典(dictionary)是除列表以外python之 中最灵活的内置数据结构类型。key:value
  • 字典当中的元素是通过键来存取的 ,而不是通过偏移存取。
  • 字典用"{}”标识。字典由索引(key)和它对应的值value组成,是一个典型的"k-v值”数据结构。

如何创建字典?

语法:

  • 字典对象名称 = { }。
  • 字典对象名称 = { key1 : value1, key2 : value2, …. , keyN : valueN}。

字典( Dictionary) k-v值在内存中的表现形式

Python 字典

  • k-v结构- 般情况下在操作访问的时候都会使用key索弓进行每个元素的读取操作。
  • 由于key索引键 会被频繁访问,因此索引键key存放在Stack栈内存中,而value值则存储在Heap堆内存中。

内存表现形式:

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

如何访问字典:

语法:

  • 字典对象名称[ key ] #访问key对应的value值。
  • 字典对象名称.keys #访问当前字典所有key索引键。
  • 字典对象名称.values #访问当前字典所有valeus值。

代码演示: ch03-demo04.py

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

运行结果:

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

如何修改字典?

字典更新指的是对字段元素的重新赋值、删除、添加等相关操作。

相关方法:

  • update( ) # 添加一个新元素或更新已有元素。
  • pop( ) # 删除指定元素。

代码演示: cho3-demo05.py

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

运行结果 :

Python beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut

4、集合Set

  • 集合是一个无序不重复元素的集。基本功能包括关系测试和消除重复元素。
  • 可以用大括号({)创建集合。 注意:如果要创建一个空集合,你必须用set)而不是{} ;后者创建一个空的字典。

集合的创建

obj1 = {1, 2, 3, 4, 5}
obj2 = ({6, 7, 8, 9})

集合Set的关系操作(交.并、补)

s = set([3,5,9,10]) #创建- -个数值集合
t = set("Hello") #创建一个唯一 字符的集合
a=t|s # t和s的并集,
b=t&s # t和s的交集
C=t-S #求差集(项在t中,但不在s中)
d=t^s #对称差集(项在域s中,不会同时出现在二者中)

基本操作:

t.add('x") #添加一项
s.update([10,37,42]) #在s中添加多项

Das obige ist der detaillierte Inhalt vonPython beherrscht und ist mit den Datentypen Liste, Vorfahr, Wörterbuch und Menge vertraut. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen