Vertiefte Kenntnisse der Python-Datentypen und -Anwendungen

Python bietet einen umfangreichen Satz integrierter Datentypen, mit denen Sie verschiedene Datentypen in Ihrem Programm verarbeiten können. Zu den wichtigsten numerischen Typen gehören Ganzzahlen, Gleitkommazahlen und komplexe Zahlen. Ganzzahlen stellen ganze Zahlen dar und eignen sich für präzise Zählungen und Berechnungen.

Gleitkommazahlen stellen reelle Zahlen mit dezimaler Genauigkeit dar, was für wissenschaftliche und statistische Berechnungen wichtig ist. Komplexe Zahlen erweitern Zahlen in die komplexe Ebene und werden in vielen wissenschaftlichen und mathematischen Anwendungen verwendet.

Python verfügt über viele integrierte Datentypen, mit denen Sie Daten auf leistungsstarke Weise speichern und bearbeiten können. Die Auswahl geeigneter Datentypen ist für das Schreiben von effizientem Python-Code sehr wichtig. Dieser umfassende Leitfaden bietet anhand von Codebeispielen eine detaillierte Einführung in verschiedene Python-Datentypen.

Numerischer Typ

Mit numerischen Datentypen in Python können Sie numerische Daten wie Ganzzahlen, Gleitkommazahlen und komplexe Zahlen verarbeiten. Schauen wir uns jeden numerischen Typ einzeln an.

Ganzzahl(int)

Ganzzahlen sind ganze Zahlen wie -2, -1, 0, 1, 2, 3 usw. Sie können positiv, negativ oder 0 sein. In Python sind ganze Zahlen unveränderlich. Einige Beispiele: 

x = 10    # positive integer
y = -5    # negative integer 
print(type(x)) # <class 'int'>

Wir können mathematische Operationen mit ganzen Zahlen wie Addition, Subtraktion, Multiplikation usw. durchführen. 

a = 12
b = 4
print(a + b) # 16
print(a - b) # 8
print(a * b) # 48

Ganzzahlen können in andere Typen wie Gleitkommazahlen, komplexe Zahlen usw. umgewandelt werden. 

num = 10
print(type(num)) # <class 'int'> 
num2 = float(num)
print(type(num2)) # <class 'float'>

Gleitkommazahl (Float)

Gleitkommazahlen stellen reelle Zahlen dar, z. B. -1,5, -0,4, 0,0, 1,25, 9,8 usw. Sie enthalten Dezimalpunkte. Sehr nützlich bei wissenschaftlichen und statistischen Berechnungen, bei denen Präzision erforderlich ist. Einige Beispiele:

a = 1.5
b = -0.4
print(type(a)) # <class 'float'>

Gleitkommazahlen unterstützen mathematische Operationen wie Addition, Subtraktion usw.

x = 3.0
y = 5.5 
print(x + y) # 8.5
print(x - y) # -2.5 
print(x * y) # 16.5

Sie können in andere Typen wie int, complex usw. konvertiert werden.

a = 1.2
print(type(a)) # <class 'float'>
b = int(a) 
print(type(b)) # <class 'int'>

Plural

Komplexe Zahlen werden in der Form x + yj geschrieben, wobei x der Realteil und y der Imaginärteil ist. Sie sind in wissenschaftlichen und mathematischen Anwendungen sehr nützlich.

x = 5 + 3j
print(type(x)) # <class 'complex'>

Wir können Operationen wie Addition und Multiplikation mit komplexen Zahlen durchführen.

a = 2+3j
b = 5+4j
print(a + b) # 7+7j 
print(a * b) # -7+26j

Sie können in andere Typen wie int, float usw. konvertiert werden.

x = 5 + 3j
print(type(x)) # <class 'complex'>
y = float(x)
print(type(y)) # <class 'float'>

Boolescher Typ

Der boolesche Typ repräsentiert die logischen Werte True und False. Wird für bedingte Tests und Logik verwendet. Zum Beispiel:

x = True
y = False
print(type(x)) # <class 'bool'>

Logische Ausdrücke und Bedingungen können mit booleschen Operatoren wie and, or und not kombiniert werden.

a = True
b = False
print(a and b) # False 
print(a or b) # True
print(not a) # False

Andere Datentypen können basierend auf ihren Wahrheitswerten in boolesche Werte umgewandelt werden.

x = 5
print(bool(x)) # True 
y = 0
print(bool(y)) # False

Sequenztyp

Sequenztypen ermöglichen die geordnete Speicherung von Datensammlungen. Lernen wir sie einzeln kennen:

string(str)

Eine Zeichenfolge stellt eine Folge von Unicode-Zeichen dar, z. B. Buchstaben, Zahlen, Leerzeichen usw. In Python sind sie unveränderlich. Einige Beispiele zum Erstellen von Zeichenfolgen:

s1 = 'Hello'
s2 = "World"
print(type(s1)) # <class 'str'>

Mithilfe der Indizierung können wir auf einzelne Zeichen zugreifen:

s = 'python'
print(s[0]) # p
print(s[3]) # h

Strings unterstützen Operationen wie Verkettung, Slicing, Länge usw.

s1 = 'Hello'
s2 = 'World'
print(s1 + ' ' + s2) # Hello World
print(len(s1)) # 5

Zur Formatierung können Formatbezeichner wie %s verwendet werden:

name = 'John'
print('My name is %s' % name) # My name is John

Liste

Eine Liste ist eine geordnete Sammlung von Werten, die veränderbar (veränderbar) ist. Ermöglicht die Speicherung verschiedener Datentypen.

nums = [1, 2, 3]
fruits = ['apple', 'mango', 'banana']
print(type(nums)) # <class 'list'>

Wir können über Indizes auf Elemente zugreifen. Listen sind veränderbar.

nums[0] = 5 
print(nums) # [5, 2, 3]

Listen unterstützen Operationen wie Verkettung, Slicing, Länge usw.

fruits = ['apple', 'banana', 'mango']
print(len(fruits)) # 3
print(fruits[1:]) # ['banana', 'mango']

Tupel

Tupel sind geordnete Sammlungen von Werten, die unveränderlich sind (nicht geändert werden können). Ermöglicht die Speicherung verschiedener Datentypen.

point = (2, 3) # 括号不是必需的,但建议使用
colors = ('red', 'blue', 'green')
print(type(point)) # <class 'tuple'>

Wir können über Indizes auf Elemente zugreifen, aber wir können keine Tupel ändern.

point[0] = 5 #错误:无法修改元组

Tupel unterstützen Operationen wie Verkettung, Slicing, Länge usw.

colors = ('red', 'blue', 'green')
print(len(colors)) # 3
print(colors[1:]) # ('blue', 'green')

Reichweite

Bereich stellt eine unveränderliche Folge von Zahlen dar. Wird normalerweise zum Durchlaufen einer Zahlenfolge verwendet.

nums = range(5) # 0到4
print(list(nums)) # [0, 1, 2, 3, 4]

range wird häufig in for-Schleifen verwendet:

for i in range(3):
    print(i)
# 输出:
# 0
# 1
# 2

Wir können auch einen Bereich mit Start-, End- und Schrittgröße erstellen.

nums = range(3, 8, 2)
print(list(nums)) # [3, 5, 7]

Sammlungstyp

Eine Menge ist eine ungeordnete Sammlung eindeutiger Werte. Sie unterstützen Vorgänge wie Mitgliedschaftstests, Mengenmathematik und mehr.

versammeln

Die Sammlung enthält nur eindeutige Werte. Elemente können hinzugefügt und entfernt werden.

colors = {'red', 'blue', 'green'}
print(type(colors)) # <class 'set'>

Sammlungselemente können auf Mitgliedschaft getestet und hinzugefügt/entfernt werden. Sammlungen sind veränderlich.

'red' in colors # True
colors.add('yellow')
colors.remove('blue')

Mengenmathematische Operationen wie Vereinigung und Schnittmenge können zwischen Mengen durchgeführt werden.

set1 = {1, 2, 3}
set2 = {3, 4, 5}
print(set1 | set2) # {1, 2, 3, 4, 5}
print(set1 & set2) # {3}

unveränderliche Sammlung

Unveränderliche Sammlungen sind eine unveränderliche Variante von Python-Sammlungen. Elemente können nicht hinzugefügt oder entfernt werden.

colors = frozenset(['red', 'blue', 'green'])
print(type(colors)) # <class 'frozenset'>
colors.add('yellow') # AttributeError

Unveränderliche Sammlungen können sowohl als Wörterbuchschlüssel als auch als Mengenoperationen verwendet werden.

Zuordnungstyp

Kartentypen ermöglichen die Speicherung von Daten als Schlüssel-Wert-Paare. Wörterbücher sind der wichtigste Zuordnungstyp in Python.

Wörterbuch

Ein Wörterbuch besteht aus Schlüssel-Wert-Paaren, die in geschweifte Klammern {} eingeschlossen sind. Wird zum Speichern verwandter Daten verwendet.

student = {
    'name': 'John',
    'age': 20,
    'courses': ['Math', 'Science']
}
print(type(student)) # <class 'dict'>

Auf Wörterbuchelemente kann per Schlüssel zugegriffen und diese geändert werden. Wörterbücher sind veränderlich.

student['name'] = 'Mark' # 更新值
print(student['courses']) # ['Math', 'Science']

Zu den gängigen Wörterbuchoperationen gehören Länge, Hinzufügen/Entfernen von Schlüsseln, Iteration usw.

print(len(student)) # 3
student['email'] = '[email protected]' # 添加键值
for key in student:
    print(key, student[key]) # 打印每个项

binärer Typ

Der binäre Typ in Python wird zur Verarbeitung binärer Daten wie Bytes, Byte-Arrays usw. verwendet.

Byte

Bytes stellen eine unveränderliche Folge von Bytes dar. Beispiel:

data = b'hello'
print(type(data)) # <class 'bytes'>

Bytes unterstützen Operationen wie Indizierung, Länge, Verkettung usw., sind jedoch unveränderlich.

print(data[0]) # 104
print(len(data)) # 5
data2 = data + b'world' # 无法修改,只能连接

Byte-Array

Ein Byte-Array stellt eine variable Folge von Bytes dar. Sie können vor Ort geändert werden.

data = bytearray(b'hello')
print(type(data)) # <class 'bytearray'>
data[0] = 106 # 可变的

Byte-Arrays unterstützen typische Sequenzoperationen wie Indizierung, Verknüpfung usw.

print(data[0]) # 106
data2 = data + bytearray(b'world')

Erinnerungsansicht

Memoryview-Objekte ermöglichen den direkten Zugriff auf die internen Daten von Objekten, die das Pufferprotokoll unterstützen, ohne dass ein Kopieren erforderlich ist. Für erweiterte Optimierung.

data = memoryview(b'hello')
print(data[0]) # 104

Memoryview unterstützt das Slicing und Bearbeiten ohne Kopieren von Puffern. Erweiterte Nutzung für Leistung.

data[1:4] = b'i' # 在原地编辑
print(data) # b'hiello'

Keiner Typ

Der Typ „Keine“ stellt einen fehlenden Wert dar. Ähnlich wie null in anderen Sprachen.

x = None
print(type(x)) # <class 'NoneType'>

None wird häufig als Platzhalter für optionale oder fehlende Werte verwendet.

def print_if_not_none(x):
    if x is None:
        print('x is None')
    else:
        print(x)

Der Bediener kann prüfen, ob etwas None ist.

x = None
print(x is None) # True

Kurz gesagt, Python verfügt über eine Vielzahl integrierter Datentypen, darunter numerische Werte, Text, Mengen, Karten und mehr. Die Auswahl des geeigneten Datentyps trägt dazu bei, den Speicher effizient zu nutzen und die Leistung zu verbessern. Die Manipulation von Datentypen ist ein wichtiger Teil der Python-Programmierung.

Wir hoffen, dass Ihnen dieser Überblick ein gutes Verständnis der verschiedenen in Python verfügbaren Datentypen vermittelt hat, zusammen mit zahlreichen Codebeispielen, die ihre Verwendung veranschaulichen.

· ENDE ·

GLÜCKLICHES LEBEN

7937e6b02f33990d6583a6a939feda40.png

Dieser Artikel dient nur zum Lernen und zur Kommunikation. Bei Verstößen wenden Sie sich bitte an den Autor, um ihn zu löschen.

Ich denke du magst

Origin blog.csdn.net/weixin_38739735/article/details/132930249
Empfohlen
Rangfolge