suchen
HeimBackend-EntwicklungPython-TutorialDetaillierte Einführung in die Wissenspunkte zur Python3-Datenstruktur

Dieser Artikel vermittelt Ihnen relevantes Wissen über Python. Er stellt hauptsächlich Probleme im Zusammenhang mit Datenstrukturen vor, einschließlich Zahlen, Zeichenfolgen, Listen, Tupeln, Wörterbüchern usw. Ich hoffe, dass er für alle hilfreich ist.

Detaillierte Einführung in die Wissenspunkte zur Python3-Datenstruktur

Empfohlenes Lernen: Python-Video-Tutorial

Zahl Zahl

  • Integer-Typ (int) – normalerweise Ganzzahl oder Ganzzahl genannt, ist eine positive oder negative Ganzzahl ohne Dezimalpunkt. Python3-Ganzzahlen haben keine Größenbeschränkung und können als Long-Typen verwendet werden. Boolean ist ein Untertyp von Integer.

  • Gleitkommatyp (Float) – Der Gleitkommatyp besteht aus einem ganzzahligen Teil und einem Dezimalteil und kann auch in wissenschaftlicher Notation ausgedrückt werden (2,5e2 = 2,5 x 102 = 250).

  • Pluralzahl ( ( komplex )) – Eine komplexe Zahl besteht aus einem Realteil und einem Imaginärteil, die durch a + bj oder komplex(a,b) dargestellt werden können. Der Realteil a und der Imaginärteil b der komplexen Zahl sind beide gleitend Punkttypen.

Zahlentypkonvertierung

  • int(x) Wandelt x in eine Ganzzahl um.

  • float(x) Wandelt x in eine Gleitkommazahl um.

  • complex(x) Wandle x in eine komplexe Zahl um, wobei der Realteil x und der Imaginärteil 0 ist.

  • complex(x, y) Wandelt x und y in eine komplexe Zahl um, wobei der Realteil x und der Imaginärteil y ist. x und y sind numerische Ausdrücke.

Zahlenoperation

# + - * / %(取余) **(幂运算)
# 整数除法中,除法 / 总是返回一个浮点数,
# 如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 //
print(8 / 5)  # 1.6
print(8 // 5)  # 1
# 注意:// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系
print(8 // 5.0)  # 1.0
# 使用 ** 操作来进行幂运算
print(5 ** 2)  # 5的平方 25

String str

Abfrage von string

  • index(): Finden Sie das erste Vorkommen des Teilstrings substr. Wenn der gesuchte Teilstring nicht vorhanden ist, lösen Sie die Ausnahme ValueErrorrindex () aus

  • rindex (): Finden Sie das letzte Vorkommen der Teilzeichenfolge substr. Wenn die gesuchte Teilzeichenfolge nicht vorhanden ist, wird eine ValueError()-Ausnahme ausgelöst

  • find(): Finden Sie die Position der Teilzeichenfolge substr erscheint einmal. Wenn der gesuchte Teilstring nicht existiert, wird -1 zurückgegeben.

  • rfind(): Findet die Position, an der der Teilstring zuletzt erschien wird zurückgegeben.

s = 'hello, hello'
print(s.index('lo'))  # 3
print(s.find('lo'))  # 3
print(s.find('k'))  # -1
print(s.rindex('lo'))  # 10
print(s.rfind('lo'))  # 10

String Case Conversion

  • upper(): Konvertiert alle Zeichen in der Zeichenfolge in Großbuchstaben

  • lower(): Konvertiert alle Zeichen in der Zeichenfolge in Kleinbuchstaben

  • swapcase(): Wandelt alle Großbuchstaben in der Zeichenfolge in Kleinbuchstaben um und wandelt alle Kleinbuchstaben in Großbuchstaben um

  • capitalize(): Wandelt das erste Zeichen in Großbuchstaben um und wandelt die übrigen Zeichen in Kleinbuchstaben um

  • Titel (): Wandeln Sie das erste Zeichen jedes Wortes in Großbuchstaben um und wandeln Sie die restlichen Zeichen jedes Wortes in Kleinbuchstaben um Der zweite Parameter gibt den Füller an. Wenn die eingestellte Breite kleiner als die tatsächliche Breite ist, wird die ursprüngliche Zeichenfolge zurückgegeben.

ljust(): linksbündig, der erste Parameter gibt die Breite an Parameter Jeder Parameter gibt den Füller an, und der Standardwert ist ein Leerzeichen. Wenn die eingestellte Breite kleiner als die tatsächliche Breite ist, wird die ursprüngliche Zeichenfolge zurückgegeben.

  • rjust(): rechtsbündig, der erste Parameter gibt die Breite an , der zweite Parameter gibt den Füller an, der Standardwert ist ein Leerzeichen. Wenn die eingestellte Breite kleiner als die tatsächliche Breite ist, wird die ursprüngliche Zeichenfolge zurückgegeben

  • zfill(): rechtsbündig, links mit 0 aufgefüllt . Diese Methode empfängt nur einen Parameter, der verwendet wird, um die Breite der Zeichenfolge anzugeben. Wenn die angegebene Breite kleiner oder gleich der Länge der Zeichenfolge ist, wird die Zeichenfolge selbst zurückgegeben

  • Split
  • split(): Von der linken Seite der Zeichenfolge trennen
  • rsplit(): Von der linken Seite der Zeichenfolge trennen Beginnen Sie mit der Aufteilung von rechts

  • Das standardmäßige Aufteilungszeichen ist ein Leerzeichen, und das Rückgabewert ist eine Liste.

Geben Sie das Teilungszeichen für die Teilung der Zeichenfolge über den Parameter sep an.

Geben Sie die maximale Anzahl von Teilungen an, wenn Sie die Zeichenfolge über den Parameter maxsplit aufteilen. Nach der maximalen Anzahl von Teilungen werden die verbleibenden Teilzeichenfolgen separat verwendet als Teil

    s = 'hello, Python'
    print(s.upper())  # HELLO, PYTHON
    print(s.lower())  # hello, python
    print(s.swapcase())  # HELLO, pYTHON
    print(s.capitalize())  # Hello, python
    print(s.title())  # Hello, Python
  • Slicing
    • s = 'hello,Python'
      '''居中对齐'''
      print(s.center(20, '*'))  # ****hello,Python****
      '''左对齐 '''
      print(s.ljust(20, '*'))  # hello,Python********
      print(s.ljust(5, '*'))  # hello,Python
      '''右对齐'''
      print(s.rjust(20, '*'))  # ********hello,Python
      '''右对齐,使用0进行填充'''
      print(s.zfill(20))  # 00000000hello,Python
      print('-1005'.zfill(8))  # -0001005
    • String-urteilsbezogen
    • isidentifier(): Bestimmen, ob die angegebene Zeichenfolge zulässig ist Identifier
    • isspace(): Bestimmen, ob die angegebene Zeichenfolge vollständig aus Leerzeichen besteht ( Wagenrücklauf, Zeilenvorschub, horizontaler Tabulator) isalpha(): Bestimmen Sie, ob die angegebene Zeichenfolge vollständig aus Buchstaben besteht

      isdecimal( ): Bestimmen Sie, ob die angegebene Zeichenfolge vollständig aus Dezimalzahlen bestehtisnumeric(): Bestimmen Sie, ob die Die angegebene Zeichenfolge besteht vollständig aus Zahlen

      isalnum(): Bestimmen Sie, ob die angegebene Zeichenfolge ausschließlich aus Buchstaben und Zahlen besteht Verkettung

      • join()
      s = 'hello word Python'
      print(s.split())  # ['hello', 'word', 'Python']
      s1 = 'hello|word|Python'
      print(s1.split(sep='|'))  # ['hello', 'word', 'Python']
      print(s1.split('|', 1))  # ['hello', 'word|Python'] # 左侧开始
      print(s1.rsplit('|', 1))  # ['hello|word', 'Python'] # 右侧开始
    • Formatierte Zeichenfolgenausgabe
    • % Platzhalter: vor der Ausgabe Hinzufügen %, Klammern und Kommas für mehrere Parameter verwenden
    • %s Zeichenfolge
    • %i oder %d Ganzzahl

      -% f Gleitkommazahl

      {} Platzhalter: Rufen Sie die Methode format() auf

        f -string: Schreiben Sie die Variable in {}
      s = 'hello,world'
      print(s[:5])  # hello 从索引0开始,到4结束
      print(s[6:])  # world 从索引6开始,到最后一个元素
      print(s[1:5:1])  # ello 从索引1开始,到4结束,步长为1
      print(s[::2])  # hlowrd 从开始到结束,步长为2
      print(s[::-1])  # dlrow,olleh 步长为负数,从最后一个元素(索引-1)开始,到第一个元素结束
      print(s[-6::1])  # ,world 从索引-6开始,到最后一个结束
      Legen Sie die Breite und Genauigkeit der Zahl fest

      s = 'hello,Python,Python,Python'
      print(s.replace('Python', 'Java'))  # 默认全部替换 hello,Java,Java,Java
      print(s.replace('Python', 'Java', 2))  # 设置替换个数 hello,Java,Java,Python
      String-Kodierung
      lst = ['hello', 'java', 'Python']
      print(','.join(lst))  # hello,java,Python
      print('|'.join(lst))  # hello|java|Python
      Liste
      • Merkmale der Liste

      Geordnete Reihenfolge
        • Indexzuordnung nur A-Daten
      • 可以存储重复数据

      • 任意数据类型混存

      • 根据需要动态分配和回收内存

      列表的创建

      • []:使用中括号
      • list():使用内置函数list()
      • 列表生成式
        • 语法格式:[i*i for i in range(i, 10)]

        • 解释:i表示自定义变量,i*i表示列表元素的表达式,range(i, 10)表示可迭代对象

          print([i * i for i in range(1, 10)])# [1, 4, 9, 16, 25, 36, 49, 64, 81]

      列表元素的查询

      1. 判断指定元素在列表中是否存在
      in / not in
      1. 列表元素的遍历
      for item in list:
      	print(item)
      1. 查询元素索引
      list.index(item)
      1. 获取元素
      list = [1, 4, 9, 16, 25, 36, 49, 64, 81]print(list[3])  # 16print(list[3:6])    # [16, 25, 36]

      列表元素的增加

      • append():在列表的末尾添加一个元素

      • extend():在列表的末尾至少添加一个元素

      • insert0:在列表的指定位置添加一个元素

      • 切片:在列表的指定位置添加至少一个元素

      列表元素的删除

      • rerove():一次删除一个元素,
        重复元素只删除第一个,
        元素不存在抛出ValceError异常

      • pop():删除一个指定索引位置上的元素,
        指定索引不存在抛出IndexError异常,
        不指定索引,删除列表中最后一个元素

      • 切片:一次至少删除一个元素

      • clear0:清空列表

      • del:删除列表

      列表元素的排序

      • sort(),列表中的所有元素默认按照从小到大的顺序进行排序,可以指定reverse= True,进行降序排序,是对原列表的操作。
      list.sort()
      • sorted(),可以指定reverse—True,进行降序排序,原列表不发生改变,产生新的列表。
      sorted(list)

      知识点总结

      Detaillierte Einführung in die Wissenspunkte zur Python3-Datenstruktur

      元组 tuple

      元组的特点

      Python的元组与列表类似,不同之处在于元组的元素不能修改。

      元组使用小括号,列表使用方括号

      元组的创建

      • 直接使用小括号(), 小括号可以省略
      t = ('Python', 'hello', 90)
      • 使用内置函数tuple(), 若有多个元素必须加小括号
      tuple(('Python', 'hello', 90))
      • 只包含一个元素的元组,需要使用小括号和逗号
      t = (10,)

      知识点总结

      Detaillierte Einführung in die Wissenspunkte zur Python3-Datenstruktur

      字典 dict

      字典的特点

      • 以键值对的方式存储,key唯一
      • key必须是不可变对象
      • 字典是可变序列
      • 字典是无序序列 (注意:自Python3.7本后,dict 对象的插入顺序保留性质已被声明为 Python 语言规范的正式部分。即,Python3.7之后,字典是有序序列,顺序为字典的插入顺序)

      字典的创建

      • {}:使用花括号
      • 使用内置函数dict()
      • zip():字典生成式
      items = ['fruits', 'Books', 'Others']
      prices = [12, 36, 44]
      d = {item.upper(): price for item, price in zip(items, prices)}
      print(d)    # {'FRUITS': 12, 'BOOKS': 36, 'OTHERS': 44}

      字典元素的获取

      • []:[]取值
        scores[‘张三’],若key不存在,抛出keyError异常
      • get():get()方法取值,若key不存在,返回None,还可以设置默认返回值

      字典元素的新增

      user = {"id": 1, "name": "zhangsan"}
      user["age"] = 25
      print(user)  # {'id': 1, 'name': 'zhangsan', 'age': 25}

      字典元素的修改

      user = {"id": 1, "name": "zhangsan", "age": 25}
      user["age"] = 18
      print(user)  # {'id': 1, 'name': 'zhangsan', 'age': 18}

      字典元素的删除

      • del :删除指定的键值对或者删除字典
      user = {"id": 1, "name": "zhangsan"}del user["id"]print(user)	# {'name': 'zhangsan'}del user
      • claer():清空字典中的元素
      user = {"id": 1, "name": "zhangsan"}user.clear()print(user)  # {}

      获取字典视图

      • keys():获取字典中所有key
      • values():获取字典中所有value
      • items():获取字典中所有key,value键值对

      字典元素的遍历

      • 遍历key,再通过key获取value
      scores = {'张三': 100, '李四': 95, '王五': 88}for name in scores:
          print(name, scores[name])
      • 通过items()方法,同时遍历key,value
      scores = {'张三': 100, '李四': 95, '王五': 88}for name, score in scores.items():
          print(name, score)

      知识点总结

      Detaillierte Einführung in die Wissenspunkte zur Python3-Datenstruktur

      集合 set

      集合的特点

      • 集合是可变序列
      • 集合是没有value的字典
      • 集合中元素不重复
      • 集合中元素是无序的

      集合的创建

      • {}
      s = {'Python', 'hello', 90}
      • 内置函数set()
      print(set("Python"))print(set(range(1,6)))print(set([3, 4, 7]))print(set((3, 2, 0)))print(set({"a", "b", "c"}))# 定义空集合:set()print(set())
      • 集合生成式
      print({i * i for i in range(1, 10)})# {64, 1, 4, 36, 9, 16, 49, 81, 25}

      集合的操作

      1. 集合元素的判断操作
      • in / not in
      1. 集合元素的新增操作
      • add():一次添中一个元素
      • update(:)添加多个元素
      1. 集合元素的删除操作
      • remove():删除一个指定元素,如果指定的元素不存在抛出KeyError
      • discard(:)删除一个指定元素,如果指定的元素不存在不抛异常
      • pop():随机删除一个元素
      • clear():清空集合

      集合间的关系

      1. 两个集合是否相等:可以使用运算符 == 或 != 进行判断,只要元素相同就相等

      2. 一个集合是否是另一个集合的子集:issubset()

      s1 = {10, 20, 30, 40, 50, 60}s2 = {10, 30, 40}s3 = {10, 70}print(s2.issubset(s1))  
      # Trueprint(s3.issubset(s1))  # False
      1. 一个集合是否是另一个集合的超集:issuperset()
      print(s1.issuperset(s2))  # Trueprint(s1.issuperset(s3))  # False
      1. 两个集合是否无交集:isdisjoint()
      s1 = {10, 20, 30, 40, 50, 60}s2 = {10, 30, 40}s3 = {20, 70}print(s1.isdisjoint(s2))  
      # False 有交集print(s3.isdisjoint(s2))  # True  无交集

      集合的数学操作

      1. 交集: intersection() 与 &等价,两个集合的交集
      s1 = {10, 20, 30, 40}s2 = {20, 30, 40, 50, 60}print(s1.intersection(s2))  # {40, 20, 30}print(s1 & s2)  # {40, 20, 30}
      1. 并集: union() 与 | 等价,两个集合的并集
      print(s1.union(s2))  # {40, 10, 50, 20, 60, 30}print(s1 | s2)  # {40, 10, 50, 20, 60, 30}
      1. 差集: difference() 与 - 等价
      print(s2.difference(s1))  # {50, 60}print(s2 - s1)  # {50, 60}
      1. 对称差集:symmetric_difference() 与 ^ 等价
      print(s2.symmetric_difference(s1))  # {10, 50, 60}print(s2 ^ s1)  # {10, 50, 60}

      知识点总结

      Detaillierte Einführung in die Wissenspunkte zur Python3-Datenstruktur

      列表、元组、字典、集合总结

      推荐学习:python教程

      Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in die Wissenspunkte zur Python3-Datenstruktur. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    • Stellungnahme
      Dieser Artikel ist reproduziert unter:CSDN. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
      Python: Spiele, GUIs und mehrPython: Spiele, GUIs und mehrApr 13, 2025 am 12:14 AM

      Python zeichnet sich in Gaming und GUI -Entwicklung aus. 1) Spielentwicklung verwendet Pygame, die Zeichnungen, Audio- und andere Funktionen bereitstellt, die für die Erstellung von 2D -Spielen geeignet sind. 2) Die GUI -Entwicklung kann Tkinter oder Pyqt auswählen. Tkinter ist einfach und einfach zu bedienen. PYQT hat reichhaltige Funktionen und ist für die berufliche Entwicklung geeignet.

      Python vs. C: Anwendungen und Anwendungsfälle verglichenPython vs. C: Anwendungen und Anwendungsfälle verglichenApr 12, 2025 am 12:01 AM

      Python eignet sich für Datenwissenschafts-, Webentwicklungs- und Automatisierungsaufgaben, während C für Systemprogrammierung, Spieleentwicklung und eingebettete Systeme geeignet ist. Python ist bekannt für seine Einfachheit und sein starkes Ökosystem, während C für seine hohen Leistung und die zugrunde liegenden Kontrollfunktionen bekannt ist.

      Der 2-stündige Python-Plan: ein realistischer AnsatzDer 2-stündige Python-Plan: ein realistischer AnsatzApr 11, 2025 am 12:04 AM

      Sie können grundlegende Programmierkonzepte und Fähigkeiten von Python innerhalb von 2 Stunden lernen. 1. Lernen Sie Variablen und Datentypen, 2. Master Control Flow (bedingte Anweisungen und Schleifen), 3.. Verstehen Sie die Definition und Verwendung von Funktionen, 4. Beginnen Sie schnell mit der Python -Programmierung durch einfache Beispiele und Code -Snippets.

      Python: Erforschen der primären AnwendungenPython: Erforschen der primären AnwendungenApr 10, 2025 am 09:41 AM

      Python wird in den Bereichen Webentwicklung, Datenwissenschaft, maschinelles Lernen, Automatisierung und Skripten häufig verwendet. 1) In der Webentwicklung vereinfachen Django und Flask Frameworks den Entwicklungsprozess. 2) In den Bereichen Datenwissenschaft und maschinelles Lernen bieten Numpy-, Pandas-, Scikit-Learn- und TensorFlow-Bibliotheken eine starke Unterstützung. 3) In Bezug auf Automatisierung und Skript ist Python für Aufgaben wie automatisiertes Test und Systemmanagement geeignet.

      Wie viel Python können Sie in 2 Stunden lernen?Wie viel Python können Sie in 2 Stunden lernen?Apr 09, 2025 pm 04:33 PM

      Sie können die Grundlagen von Python innerhalb von zwei Stunden lernen. 1. Lernen Sie Variablen und Datentypen, 2. Master -Steuerungsstrukturen wie wenn Aussagen und Schleifen, 3. Verstehen Sie die Definition und Verwendung von Funktionen. Diese werden Ihnen helfen, einfache Python -Programme zu schreiben.

      Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden?Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer-Anfänger-Programmierbasis in Projekt- und problemorientierten Methoden?Apr 02, 2025 am 07:18 AM

      Wie lehre ich innerhalb von 10 Stunden die Grundlagen für Computer -Anfänger für Programmierungen? Wenn Sie nur 10 Stunden Zeit haben, um Computer -Anfänger zu unterrichten, was Sie mit Programmierkenntnissen unterrichten möchten, was würden Sie dann beibringen ...

      Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet?Wie kann man vom Browser vermeiden, wenn man überall Fiddler für das Lesen des Menschen in der Mitte verwendet?Apr 02, 2025 am 07:15 AM

      Wie kann man nicht erkannt werden, wenn Sie Fiddlereverywhere für Man-in-the-Middle-Lesungen verwenden, wenn Sie FiddLereverywhere verwenden ...

      Was soll ich tun, wenn das Modul '__builtin__' beim Laden der Gurkendatei in Python 3.6 nicht gefunden wird?Was soll ich tun, wenn das Modul '__builtin__' beim Laden der Gurkendatei in Python 3.6 nicht gefunden wird?Apr 02, 2025 am 07:12 AM

      Laden Sie Gurkendateien in Python 3.6 Umgebungsbericht Fehler: ModulenotFoundError: Nomodulennamen ...

      See all articles

      Heiße KI -Werkzeuge

      Undresser.AI Undress

      Undresser.AI Undress

      KI-gestützte App zum Erstellen realistischer Aktfotos

      AI Clothes Remover

      AI Clothes Remover

      Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

      Undress AI Tool

      Undress AI Tool

      Ausziehbilder kostenlos

      Clothoff.io

      Clothoff.io

      KI-Kleiderentferner

      AI Hentai Generator

      AI Hentai Generator

      Erstellen Sie kostenlos Ai Hentai.

      Heißer Artikel

      R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
      3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
      R.E.P.O. Beste grafische Einstellungen
      3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
      R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
      3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
      WWE 2K25: Wie man alles in Myrise freischaltet
      4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

      Heiße Werkzeuge

      MinGW – Minimalistisches GNU für Windows

      MinGW – Minimalistisches GNU für Windows

      Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

      WebStorm-Mac-Version

      WebStorm-Mac-Version

      Nützliche JavaScript-Entwicklungstools

      SecLists

      SecLists

      SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

      Dreamweaver Mac

      Dreamweaver Mac

      Visuelle Webentwicklungstools

      Sicherer Prüfungsbrowser

      Sicherer Prüfungsbrowser

      Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.