Inhaltsverzeichnis
Empty (None)
Wörterbücher
Wörterbuchfunktionen
Tupel
列表切片(List Slices)
列表解析(List Comprehensions)
String Formatting
Useful Functions
Heim Backend-Entwicklung Python-Tutorial Detaillierte Einführung in Python-Typen (Typ)

Detaillierte Einführung in Python-Typen (Typ)

Jun 27, 2017 am 09:26 AM
type 类型

Empty (None)

None kann verwendet werden, um anzugeben, dass der Wert einer Variablen fehlt, ähnlich wie Null in anderen Sprachen.

Wie andere Nullwerte: 0, [] und leere Zeichenfolge, geben boolesche Variablen False statt True zurück.

if None:print("None got interpreted as True")else:print("None got interpreted as False")
Nach dem Login kopieren

Das Ergebnis ist:

None got interpreted as False
Nach dem Login kopieren

Wenn eine Funktion keinen Wert zurückgibt, gibt sie None zurück:

def some_func():print("Hi")
var=some_func()print(var)
Nach dem Login kopieren

Das Ergebnis ist:

Hi
None
Nach dem Login kopieren
Code anzeigen

Wörterbücher

Ein Wörterbuch ist eine Datenstruktur, die Werten Schlüssel zuordnet. Eine Liste kann man sich als Wörterbuch mit einer Reihe ganzzahliger Schlüssel vorstellen.

Wörterbücher können wie Listen mit eckigen Klammern indiziert werden, mit der Ausnahme, dass die eckigen Klammern keine tiefgestellten Zeichen mehr sind, sondern Schlüsselwörter

ages={"Dave":24,"Mary":42,"John":58}print(ages["Dave"])print(ages["Mary"])
Nach dem Login kopieren

Das Ergebnis ist:

24
42
Nach dem Login kopieren
Code anzeigen

Beim Indizieren eines Schlüsselworts, das kein Wörterbuch speichern kann, tritt ein Fehler auf Beliebige Daten. Ein leeres Wörterbuch ist „{}“.

Die Schlüsselwörter im Wörterbuch können nicht geändert werden. Die Verwendung eines veränderlichen Objekts als Wörterbuchschlüssel führt zu einem TypeError.

bad_dict={
    [1,2,3]:"one two three"}
Nach dem Login kopieren

Das Ergebnis ist:

TypeError: unhashable type: 'list'
Nach dem Login kopieren
Code anzeigen

Wörterbuchfunktionen

Wörterbuchtasten können unterschiedliche Werte zugewiesen werden. Wenn kein Schlüsselwort vorhanden ist, erstellen Sie ein neues Schlüsselwort:

squares={1:1,2:4,3:"error",4:16}
squares[8]=64squares[3]=9print(squares)
Nach dem Login kopieren

Das Ergebnis ist:

{1: 1, 2: 4, 3: 9, 4: 16, 8: 64}
Nach dem Login kopieren
Code anzeigen

Anzeigen, ob ein Schlüsselwort im Wörterbuch mit in vorhanden ist oder nicht, genau wie in der Liste.

nums={1:"one",2:"two",3:"three"}print(1 in nums)print("three"in nums)print(4 not in nums)
Nach dem Login kopieren

Das Ergebnis ist:

True
False
True
Nach dem Login kopieren
Code anzeigen

get ist eine sehr einfach zu verwendende Wörterbuchmethode, die genauso funktioniert wie ein Index, aber wenn das Schlüsselwort nicht im Wörterbuch gefunden wird, wird None anstelle eines Fehlers zurückgegeben

paris={1:"apple","orange":[2,3,4],
    True:False,
    None:"True"}print(paris.get("orange"))print(paris.get(7))print(paris.get(12345,"not in dictionary"))
Nach dem Login kopieren

Der zweite Parameter von get bedeutet, dass dieser Wert zurückgegeben wird, wenn das Schlüsselwort nicht gefunden werden kann.

Das Ergebnis ist:

paris={1:"apple","orange":[2,3,4],
    True:False,
    None:"True"}print(paris.get("orange"))print(paris.get(7))print(paris.get(12345,"not in the dicrionary"))
Nach dem Login kopieren
Code anzeigen

Tupel

Tupel sind Listen sehr ähnlich, können aber nicht geändert werden, indem Sie Klammern verwenden oder nicht...:

words=("spam","eggs","sausages",)
Nach dem Login kopieren
words="spam","eggs","sausages",
Nach dem Login kopieren

空元组用()新建。

元组的运行速度比列表快

其他使用方法和列表类似。

列表切片(List Slices)

列表切片是一种检索列表值的高级方法。基本的切片方法是用两个被冒号分开的整数来索引列表。这样可以从旧列表返回一个新列表。

squares=[0,1,4,9,16,25,36,49,64,81]print(squares[2:6])print(squares[3:8])print(squares[0:1])
Nach dem Login kopieren

结果是:

[4, 9, 16, 25]
[9, 16, 25, 36, 49]
[0]
Nach dem Login kopieren
View Code

跟range的参数相似,第一的下标的值会包括,但不包括第二个下标的值。

如果第一个下标省略,默认从头开始,

如果第二个下标省略,默认到结尾结束。

切片同样可以用于元组。

切片也有第三个参数,决定了步长。第一二个分别决定了开头与结尾。

squares=[0,1,4,9,16,25,36,49,64,81]
print(squares[:6:2])
print(squares[3::3])
print(squares[::3])
Nach dem Login kopieren

结果是:

[0, 4, 16]
[9, 36, 81]
[0, 9, 36, 81]
Nach dem Login kopieren

参数是复数的话就倒着走。-1是倒数第一,-2是倒数第二,第三个参数为负就会倒着切,这时候第一个参数和第二个参数就要倒着看了,也就是第二个参数变成了开始,第一个变成了结尾(因此-1会使整个列表倒序)

squares=[0,1,4,9,16,25,36,49,64,81]print(squares[:-1])print(squares[::-3])print(squares[-3::2])
Nach dem Login kopieren

结果是:

[0, 1, 4, 9, 16, 25, 36, 49, 64]
[81, 36, 9, 0]
[49, 81]
Nach dem Login kopieren
View Code

列表解析(List Comprehensions)

这是一种快速创建遵循某些规则的列表的方法:

cubes=[i**3 for i in range(5)]print(cubes)
Nach dem Login kopieren

结果是:

[0, 1, 8, 27, 64]
Nach dem Login kopieren
View Code

也可以包含if statement 加强限定条件。

evens=[i**2 for i in range(10) if i**2 % 2==0]print(evens)
Nach dem Login kopieren
Nach dem Login kopieren

结果是:

[0, 4, 16, 36, 64]
Nach dem Login kopieren
Nach dem Login kopieren
View Code
evens=[i**2 for i in range(10) if i**2 % 2==0]print(evens)
Nach dem Login kopieren
Nach dem Login kopieren

结果是:

[0, 4, 16, 36, 64]
Nach dem Login kopieren
Nach dem Login kopieren
View Code

range的范围过大会超出内存的容量引发MemoryError

String Formatting

为了使string和non-string结合,可以把non-string转化为string然后再连起来。

string formatting提供了一种方式,把non-string嵌入到string里,用string的format method来替换string里的参数。

nums=[4,5,6]
msg="Numbers:{0} {1} {2}".format(nums[0],nums[1],nums[2])print(msg)
Nach dem Login kopieren

format里的参数和{}里的参数是对应的。{}的参数是format()里参数的下标

参数被命名这种情况也是可以的:

a="{x},{y}".format(x=5,y=12)print(a)
Nach dem Login kopieren

结果是:

5,12
Nach dem Login kopieren
View Code

Useful Functions

Python 内置了许多有用的函数

join ,用一个string充当分隔符把一个由string组成的列表连起来。

print(",".join(["spam","eggs","ham"]))
Nach dem Login kopieren

结果是:

spam,eggs,ham
Nach dem Login kopieren
View Code

replace,用一个string 取代另一个。

print("Hello ME".replace("ME","world"))
Nach dem Login kopieren

结果是:

Hello world
Nach dem Login kopieren
View Code

startwith和endwith,判断是否是由……开头或结束:

print("This is a sentence.".startswith("This"))print("This is a sentence.".endswith("sentence."))
Nach dem Login kopieren

结果是:

True
True
Nach dem Login kopieren
View Code

lower和upper可以改变string的大小写

print("This is A sentence.".upper())print("THIS IS a SENTENCE..".lower())
Nach dem Login kopieren

结果是:

THIS IS A SENTENCE.
this is a sentence.
Nach dem Login kopieren
View Code

split的作用于join 相反,他可以按某个string为分隔符将一串string分开并成为列表的形式。

print("apple,eggs,banana".split(","))
Nach dem Login kopieren

结果是:

['apple', 'eggs', 'banana']
Nach dem Login kopieren

 有关数学的一些函数有:最大值max,最小值min,绝对值abs,约等数round(第二个参数可以决定保留几位小数),对列表里的数求和用sum等:

print(min(1,2,3,4,5,6,7))print(max(1,2,3,4,5,6,7))print(abs(-98))print(round(78.632453434,4))print(sum([2.12121,23232323]))
Nach dem Login kopieren

结果是:

1
7
98
78.6325
23232325.12121
Nach dem Login kopieren
View Code

all和any可以把列表当成参数,然后返回True或 False,

nums=[55,44,33,22,11]if all([i <56 for i in nums]):print("All smaller than 56.")
Nach dem Login kopieren

 

nums=[55,44,33,22,11]if any([i <22 for i in nums]):print("at least one is smaller than 22.")
Nach dem Login kopieren

all和any的区别是,all需要所有的值都满足,any只需要有一个满足就行了。

枚举(enumerate),字面意思,把列表中的值按顺序一个一个列出来。

nums=[55,44,33,22,11]for v in enumerate(nums):print(v)
Nach dem Login kopieren

结果是:

(0, 55)
(1, 44)
(2, 33)
(3, 22)
(4, 11)
Nach dem Login kopieren
View Code

 

Das obige ist der detaillierte Inhalt vonDetaillierte Einführung in Python-Typen (Typ). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

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)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So ändern Sie den Netzwerktyp in Windows 11 in „Privat' oder „Öffentlich'. So ändern Sie den Netzwerktyp in Windows 11 in „Privat' oder „Öffentlich'. Aug 24, 2023 pm 12:37 PM

Das Einrichten eines drahtlosen Netzwerks ist üblich, aber die Auswahl oder Änderung des Netzwerktyps kann verwirrend sein, insbesondere wenn Sie die Konsequenzen nicht kennen. Wenn Sie Ratschläge dazu suchen, wie Sie den Netzwerktyp in Windows 11 von öffentlich auf privat oder umgekehrt ändern können, lesen Sie weiter, um einige nützliche Informationen zu erhalten. Was sind die verschiedenen Netzwerkprofile in Windows 11? Windows 11 verfügt über eine Reihe von Netzwerkprofilen, bei denen es sich im Wesentlichen um Einstellungssätze handelt, mit denen verschiedene Netzwerkverbindungen konfiguriert werden können. Dies ist nützlich, wenn Sie zu Hause oder im Büro über mehrere Verbindungen verfügen, sodass Sie nicht jedes Mal alles neu einrichten müssen, wenn Sie eine Verbindung zu einem neuen Netzwerk herstellen. Private und öffentliche Netzwerkprofile sind zwei gängige Typen in Windows 11, aber im Allgemeinen

Beheben Sie den Ubuntu-Fehler beim Mounten der mobilen Festplatte: unbekannter Dateisystemtyp exfat Beheben Sie den Ubuntu-Fehler beim Mounten der mobilen Festplatte: unbekannter Dateisystemtyp exfat Jan 05, 2024 pm 01:18 PM

Beim Mounten einer mobilen Festplatte durch Ubuntu tritt ein Fehler auf: mount: unlimitedfilesystemtype'exfat'. Die Verarbeitungsmethode lautet wie folgt: Ubuntu13.10 oder exfat-fuse installieren: sudoapt-getinstallexfat-fuseUbuntu13.04 oder niedriger sudoapt-add-repositoryppa:relan /exfatsudoapt-getupdatesudoapt-getinstallfuse- exfatCentOS Linux Fehler beim Mounten des USB-Datenträgers im Exfat-Format zum Laden von extfa in CentOS

Wozu dient das Type-Schlüsselwort in Go? Wozu dient das Type-Schlüsselwort in Go? Sep 06, 2023 am 09:58 AM

Die Verwendung des Type-Schlüsselworts in Go umfasst das Definieren neuer Typaliase oder das Erstellen neuer Strukturtypen. Detaillierte Einführung: 1. Verwenden Sie das Schlüsselwort „type“, um einen neuen Typ zu erstellen, sondern nur einen neuen Namen für den vorhandenen Typ bereitzustellen Die Lesbarkeit des Codes macht den Code klarer. 2. Verwenden Sie das Schlüsselwort „type“, um einen neuen Strukturtyp zu erstellen, der zum Definieren benutzerdefinierter Typen mit mehreren Feldern verwendet werden kann.

Dynamische Arrays in Python implementieren: vom Anfänger bis zum Experten Dynamische Arrays in Python implementieren: vom Anfänger bis zum Experten Apr 21, 2023 pm 12:04 PM

Teil 1 Lassen Sie uns über die Natur der Python-Sequenztypen sprechen. In diesem Blog sprechen wir über die verschiedenen „Sequenz“-Klassen und die drei häufig verwendeten integrierten Datenstrukturen – Liste, Tupel und Zeichen ). Ich weiß nicht, ob Sie es bemerkt haben, aber diese Klassen haben eine offensichtliche Gemeinsamkeit. Sie können zum Speichern mehrerer Datenelemente verwendet werden. Die wichtigste Funktion ist: Jede Klasse unterstützt den Indexzugriff (Index) auf die Elemente der Sequenz. wie zum Beispiel die Verwendung von SyntaxSeq[i]​. Tatsächlich wird jede der oben genannten Klassen durch eine einfache Datenstruktur wie ein Array dargestellt. Leser, die mit Python vertraut sind, wissen jedoch möglicherweise, dass diese drei Datenstrukturen einige Unterschiede aufweisen: Tupel und Zeichenfolgen können beispielsweise nicht geändert werden, Listen hingegen schon.

Wie erstelle ich ein Videomatrix-Konto? Welche Arten von Matrixkonten gibt es? Wie erstelle ich ein Videomatrix-Konto? Welche Arten von Matrixkonten gibt es? Mar 21, 2024 pm 04:57 PM

Mit der Beliebtheit von Kurzvideoplattformen ist Video-Matrix-Account-Marketing zu einer aufstrebenden Marketingmethode geworden. Durch die Erstellung und Verwaltung mehrerer Konten auf verschiedenen Plattformen können Unternehmen und Einzelpersonen Ziele wie Markenwerbung, Fanwachstum und Produktverkäufe erreichen. In diesem Artikel wird erläutert, wie Sie Video-Matrix-Konten effektiv nutzen und verschiedene Arten von Video-Matrix-Konten vorgestellt. 1. Wie erstelle ich ein Videomatrix-Konto? Um ein gutes Video-Matrix-Konto zu erstellen, müssen Sie die folgenden Schritte befolgen: Zunächst müssen Sie klären, was das Ziel Ihres Video-Matrix-Kontos ist, sei es für die Markenkommunikation, das Fanwachstum oder den Produktverkauf. Klare Ziele helfen dabei, entsprechende Strategien zu entwickeln. 2. Wählen Sie eine Plattform: Wählen Sie eine geeignete Kurzvideoplattform basierend auf Ihrer Zielgruppe. Zu den aktuellen Mainstream-Kurzvideoplattformen gehören Douyin, Kuaishou, Huoshan Video usw.

Was ist die Art des Rückgabewerts der Golang-Funktion? Was ist die Art des Rückgabewerts der Golang-Funktion? Apr 13, 2024 pm 05:42 PM

Go-Funktionen können mehrere Werte unterschiedlichen Typs zurückgeben. Der Rückgabewerttyp wird in der Funktionssignatur angegeben und über die Return-Anweisung zurückgegeben. Beispielsweise kann eine Funktion eine Ganzzahl und einen String zurückgeben: funcgetDetails()(int,string). In der Praxis kann eine Funktion, die die Fläche eines Kreises berechnet, die Fläche und einen optionalen Fehler zurückgeben: funccircleArea(radiusfloat64)(float64,error). Hinweis: Wenn die Funktionssignatur keinen Typ angibt, wird ein Nullwert zurückgegeben. Zur Verbesserung der Lesbarkeit wird empfohlen, eine Return-Anweisung mit einer expliziten Typdeklaration zu verwenden.

Best Practices für Typhinweise in Python Best Practices für Typhinweise in Python Apr 23, 2023 am 09:28 AM

Es ist großartig, eine Zeit lang dynamische Sprache zu verwenden, und der Code wird im Krematorium rekonstruiert. Ich glaube, Sie müssen diesen Satz gehört haben. Obwohl das Schreiben von Code ein wenig Zeit in Anspruch nimmt, lohnt es sich auf lange Sicht sehr. In diesem Artikel erfahren Sie, wie Sie die Typhinweise von Python besser verstehen und verwenden können. 1. Typhinweise sind nur auf Syntaxebene gültig (eingeführt seit PEP3107) und werden zum Hinzufügen von Typen zu Variablen, Parametern, Funktionsparametern und deren Rückgabewerten, Klasseneigenschaften und Methoden verwendet. Die Variablentypen von Python sind dynamisch und können zur Laufzeit geändert werden, um Typhinweise zum Code hinzuzufügen. Dies wird nur auf Syntaxebene unterstützt und hat keinen Einfluss auf die Ausführung des Codes . Daher der Typ

C++-Funktionstypen und -merkmale C++-Funktionstypen und -merkmale Apr 11, 2024 pm 03:30 PM

C++-Funktionen haben die folgenden Typen: einfache Funktionen, konstante Funktionen, statische Funktionen und virtuelle Funktionen; zu den Funktionen gehören: Inline-Funktionen, Standardparameter, Referenzrückgaben und überladene Funktionen. Beispielsweise verwendet die Funktion „calculeArea“ π, um die Fläche eines Kreises mit einem bestimmten Radius zu berechnen und gibt sie als Ausgabe zurück.

See all articles