Memo Nr. 4, dass Python-Anfänger "Detaillierte Erklärung der Python-Grammatik" lesen

Rückennummer

is


#Gibt true für dasselbe Objekt zurück
>>> a = b = [1, 2, 3]
>>> a is b
True

#In diesem Fall ist das Ergebnis von is falsch, da es sich um ein anderes Objekt handelt.
>>> a = [1, 2, 3]
>>> b = [1, 2, 3]
>>> a is b
False
>>> a == b
True

#Das Ergebnis von is wird anhand der ID des Objekts beurteilt
>>> id(a)
4353816328
>>> id(b)
4353060616

>>> a = b = [1, 2, 3]
>>> id(a)
4353816392
>>> id(b)
4353816392

Bedingter Operator (ternärer Operator)


>>> x = 1
>>> 100 if x == 1 else 200
100

>>> x = 2
>>> 100 if x == 1 else 200
200
>>> x == 1 and 100 or 200   #Umschreiben von und und oder
200

Automatische Typkonvertierung von numerischen Berechnungsergebnissen


>>> 1 + 1.0  #ganze Zahl+Gleitkommazahl
2.0          #Das Ergebnis ist eine Gleitkommazahl
>>> 1 + 1j   #ganze Zahl+Komplexe Zahl
(1+1j)       #Das Ergebnis ist eine komplexe Zahl

Numerische Berechnungsmethode


>>> divmod(20, 6)
(3, 2)  #Der Quotient und der Rest der Division werden in Tapple zurückgegeben. Es sieht bequem aus.

>>> pow(3, 4)     # 3 **Gleich wie 4
81
>>> pow(3, 4, 5)  # 3 ** 4 %Wie 5, aber schneller
1

int([x, byte])


#Gibt 0 ohne Argumente zurück
>>> int()
0

#Wenn Sie eine Gleitkommazahl übergeben, wird diese auf 0 gerundet
>>> int(10.5)
10
>>> int(-10.5)
-10

#Sie können die Basis angeben, wenn Sie eine Zeichenfolge übergeben
>>> int('100')    #Wenn der Radix weggelassen wird, handelt es sich um eine Dezimalzahl
100
>>> int('100', 2)
4
>>> int('100', 8)
64
>>> int('100', 10)
100
>>> int('100', 16)
256

#Wenn der Radix 0 ist, wird er als ganzzahliges Literal konvertiert.
>>> int('100', 0)
100
>>> int('0b100', 0)
4
>>> int('0o100', 0)
64
>>> int('0x100', 0)
256

#Konvertiert jedes Zeichen, das als Zahl in der Unicode-Zeichendatenbank betrachtet wird
>>> int('V', 32)
31
>>> int('100', 2)
4

Binär → Ganzzahliges Objekt


>>> int.from_bytes(b'\x00\xff', byteorder = 'big')  #Da es sich um eine Klassenmethode handelt, rufen Sie sie als int-Typ-Methode auf
255
# signed =True, um die Byte-Zeichenfolge als vorzeichenbehaftete Ganzzahl mit einem 2-Komplement zu konvertieren
>>> int.from_bytes(b'\xfe\xff\xff\xff', byteorder = 'little', signed=True)
-2

Ganzzahlige Objektmethode


#Ruft eine Zeichenfolge mit ganzzahligen Werten ab
>>> (255).to_bytes(2, byteorder = 'big')
b'\x00\xff'
#Umgerechnet als Komplement von 2
>>> (-2).to_bytes(4, 'little', signed = True)
b'\xfe\xff\xff\xff'

#Gibt die Anzahl der Bits zurück, die zum Konvertieren einer Zahl in eine Binärzahl erforderlich sind (ohne Vorzeichenbits).
>>> (100000000).bit_length()
27

Logischer Werttyp


#Abgeleitet vom Integer-Typ ist True tatsächlich 1 für Integer und False 0 für Integer.
>>> int(True)
1
>>> int(False)
0

#Kann dieselben Operationen wie normale Ganzzahlen ausführen
>>> True + False
1
>>> True * False
0
>>> False - 1
-1
>>> True + 1
2
>>> True / 2
0.5

Logisches Wertobjekt


#Das logische Wertobjekt ist ein Objekt vom Typ Bool
#Es gibt immer nur ein True-Objekt und ein False-Objekt
>>> bool(0)
False
>>> bool(1)
True
>>> bool([100])
True
>>> bool([])
False
>>> bool()
False

Bitinversion


# ~x ist-1*(x+1)Gibt einen ganzzahligen Wert zurück (Keine Bitoperation in Python)
>>> ~5
-6
>>> ~(-6)
5
>>> '{:08b}'.format(5 & 0xff)
'00000101'
>>> '{:08b}'.format(-6 & 0xff)
'11111010'

Unendlichkeit / Nichtzahl in Gleitkomma-Arithmetik


#Wenn der Gleitkommawert größer als der gültige Bereich ist
>>> 1e200 * 1e200
inf  #Unendlichkeit wird als inf angezeigt
>>> -1e200 * 1e200
-inf

#Das Ergebnis ist aufgrund von Operationen mit unendlichen Werten eine Nicht-Zahl (keine Zahl).:NaN)
>>> 0 * 1e1000
nan

#Der Wert ist inf,Die Gleitkommazahl von nan ist float()Mit Methode erstellen
>>> float('nan')        #Nicht numerisch
nan
>>> float('inf')        #Unendlichkeit
inf
>>> float('-inf')       #Negative Unendlichkeit
-inf
>>> float('infinity')   # 'infinity'Unendlich
inf

Gleitkomma-Objektmethode


#Gibt ein Tupel von zwei ganzzahligen Werten zurück, deren Verhältnis dem Wert des Objekts entspricht. Der zweite Wert ist immer positiv.
>>> (0.5).as_integer_ratio()
(1, 2)
>>> (-2.5).as_integer_ratio()
(-5, 2)

# inf,Die folgende Ausnahme wird für nan ausgelöst
>>> float('inf').as_integer_ratio()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
OverflowError: Cannot pass infinity to float.as_integer_ratio.

>>> float('nan').as_integer_ratio()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: Cannot pass NaN to float.as_integer_ratio.


#Geben Sie den Wert des Objekts als Zeichenfolge im Hexadezimalformat aus
# [sign]['0x']integer['.'fraction]['p'exponent]Im Format erstellt
>>> 1.0.hex()
'0x1.0000000000000p+0'


#Gibt True zurück, wenn der Wert nach dem Dezimalpunkt Null ist und ein anderer ganzzahliger Wert als inf oder nan ist
>>> (-2.0).is_integer()
True
>>> (3.2).is_integer()
False
>>> float('inf').is_integer()
False
>>> float('nan').is_integer()
False

Dezimal Gleitkommazahl


#Berechnungen mit Gleitkommazahlen sind im Allgemeinen ungenau
>>> 0.3 - 0.2
0.09999999999999998

#Python bietet ein Dezimalmodul für die Dezimal-Gleitkomma-Arithmetik
#Im Gegensatz zu Float-Operationen werden alle Berechnungen von der Software durchgeführt, sodass die Leistung beeinträchtigt wird.
>>> import decimal
>>> print(decimal.Decimal('0.3') - decimal.Decimal('0.2'))
0.1

# inf, nan
>>> from decimal import Decimal
>>> Decimal('inf')
Decimal('Infinity')

>>> Decimal('nan') + 1   #Das Ergebnis der Operation mit nan ist nan,
Decimal('NaN')
>>> Decimal('sNaN') + 1  #Ausnahmen können mit einem speziellen Wert ausgelöst werden, der als Signalisierung von NaN bezeichnet wird
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
decimal.InvalidOperation: [<class 'decimal.InvalidOperation'>]

Recommended Posts

Memo Nr. 4, dass Python-Anfänger "Detaillierte Erklärung der Python-Grammatik" lesen
Memo Nr. 3, dass Python-Anfänger "Detaillierte Erklärung der Python-Grammatik" lesen
Memo Nr. 1, dass Python-Anfänger "Detaillierte Erklärung der Python-Grammatik" lesen
Memo Nr. 2, dass Python-Anfänger "Detaillierte Erklärung der Python-Grammatik" lesen
Memo Nr. 7, dass Python-Anfänger "Detaillierte Erklärung der Python-Grammatik" lesen
Memo Nr. 6 für Python-Anfänger zum Lesen von "Detaillierte Erklärung der Python-Grammatik"
Memo Nr. 5, dass Python-Anfänger "Detaillierte Erklärung der Python-Grammatik" lesen
Grundlegende Python-Grammatik für Anfänger
~ Tipps für Python-Anfänger mit Liebe von Pythonista ③ ~
Memo, um nach KPI mit Python zu fragen
Anfänger lesen "Einführung in TensorFlow 2.0 für Experten"
[Python] Bilder mit OpenCV lesen (für Anfänger)
Der schnellste Weg für Anfänger, um Python zu beherrschen
Für Anfänger, um eine Anaconda-Umgebung aufzubauen. (Memo)
Python für Super-Anfänger Super-Anfänger Python # Einfach loszuwerden
Python Lehrbuch für Anfänger
Versuchen Sie, RPN mit Python zu berechnen (für Anfänger)
Python grundlegende Grammatik Memo
Einführung in die Programmierung (Python) TA Tendenz für Anfänger
Wie man Python für Anfänger schneller macht [numpy]
[Für Anfänger] Wie man Programmierung studiert Private Memo
OpenCV für Python-Anfänger
[Für Anfänger] Wie man den Befehl say mit Python benutzt!
So konvertieren Sie den Python # -Typ für Super-Anfänger von Python: str
[Für Anfänger] So studieren Sie den Python3-Datenanalysetest
[Für Anfänger] Lernen Sie in 5 Stunden kostenlos die grundlegende Python-Grammatik!
Python # So überprüfen Sie Typ und Typ für Super-Anfänger
Python-Memo (für mich): Array
Lernablauf für Python-Anfänger
Python-Grammatik-Grundnotiz (1)
Persönliches Python-Code-Memo
Python3-Umgebungskonstruktion (für Anfänger)
3 Gründe für die Programmierung Anfänger sollten mit Python beginnen
Python-Grundgrammatik (Verschiedenes) Memo (3)
Python #Funktion 2 für Super-Anfänger
Python-Grundgrammatik (Verschiedenes) Memo (2)
100 Pandas klopfen für Python-Anfänger
[Python] Beispielcode für die Python-Grammatik
Python #Funktion 1 für Super-Anfänger
Python #Liste für Super-Anfänger
Python-Grundgrammatik (Verschiedenes) Memo (4)
Einführung in Python For, While
Tipps für Python-Anfänger, um das Scikit-Image-Beispiel für sich selbst zu verwenden 4 Verwenden Sie die GUI
[R] [Python] Memo zum Lesen mehrerer CSV-Dateien in mehreren Zip-Dateien
TensorFlow-Lernmethode für Profis der freien Künste und Python-Anfänger
Tipps zum Codieren kurz und einfach in Python zu lesen
So konvertieren Sie den Python # -Typ für Python-Superanfänger: int, float
[Für Anfänger] Skript innerhalb von 10 Zeilen (4. Verbindung von Python zu sqlite3)
Tipps für Python-Anfänger, um das Scikit-Image-Beispiel für sich selbst zu verwenden
[Python] Einführung in die Diagrammerstellung mit Corona-Virendaten [Für Anfänger]
Python-Übungen für Anfänger # 2 [für Anweisung / while-Anweisung]
Minimale Grammatiknotizen zum Schreiben von Python
Python für Super-Anfänger Super-Anfänger Python # Wörterbuch Typ 1
Python #index für Super-Anfänger, Slices
<Für Anfänger> Python-Bibliothek <Für maschinelles Lernen>
Python #len Funktion für Super-Anfänger
Web Scraping für Anfänger in Python (1)
[Nanonets] Wie poste ich Memo [Python]
Führen Sie unittest in Python aus (für Anfänger)
Web Scraping für Anfänger in Python (4) -1