Dies ist eine Ausbildung zum Datenwissenschaftler mit Python. Derjenige, der den Typ steuert, führt die Hauptklasse von Python aus, indem er alles steuert.
** PREV ** → [Python] Weg zur Schlange (2) Grundlagen von Python ** NÄCHSTER ** → [Python] Weg zur Schlange (4) Twumping Numpy
Klasse | Erläuterung | Einstufung | Instanzbeispiel |
---|---|---|---|
object | Objekttyp | Objekt | object() |
bool | Logischer Typ | Logischer Wert | True, False |
int | Ganzzahliger Typ | Numerischer Wert | 26, 0b11010, 0o32, 0x1a |
float | Gleitkomma-Typ | Numerischer Wert | 3.1415, 1.5e-3, 1/2 |
complex | Komplexer Nummerntyp | Numerischer Wert | 1j, 1.1+2.3j |
tuple | Taple-Typ | Reihenfolge | (), (1,), (True,False) |
list | Listentyp | Reihenfolge | [],[1], [True,False] |
str | Zeichenfolgentyp | Reihenfolge | 'man',"man",'Mann',"Mann" |
bytes | Byte-String-Typ | Reihenfolge | b'man', b'¥xe4¥xba¥xba' |
bytearray | Byte-Array-Typ | Reihenfolge | bytearray(b'man') |
range | Bereichstyp | Iterator | range(1,10,2) |
dict | Wörterbuchtyp | Kartierung | {}, {'y':2014,'m':12,'d':25} |
set | Kollektiver Typ | einstellen | {1,3,5,7,9} |
function | Funktionsart | Funktion | lambda x:x**2 |
Verwenden Sie "type ()".
In [1]: type('man')
Out[1]: str
Alternativ können Sie "isinstance ()" verwenden.
In [2]: isinstance('man', str)
Out[2]: True
In [3]: isinstance('man', bytes)
Out[3]: False
"isinstance (x, X)" ist True, auch wenn "type (x)" eine Unterklasse von "X" ist. Das heißt, alle Klassen sind Unterklassen der Objektklasse.
In [4]: isinstance('man', object)
Out[4]: True
In [5]: issubclass(str, object)
Out[5]: True
Im Allgemeinen kann es konvertiert werden, indem die Konvertierungsquelle in das erste Argument der Konvertierungszielklasse eingefügt wird.
In [6]: float(1) #int to float
Out[6]: 1.0
In [7]: int(-1.9) #float to int
Out[7]: -1
In [8]: complex(0) #int to complex
Out[8]: 0j
In [9]: list((1, 2, 3)) #tuple to list
Out[9]: [1, 2, 3]
In [10]: tuple([1, 2, 3]) #list to tuple
Out[10]: (1, 2, 3)
In [11]: list(range(5)) #range to list
Out[11]: [0, 1, 2, 3, 4]
In [12]: list('abc') #str to list
Out[12]: ['a', 'b', 'c']
bool Wahr und Falsch der Bool-Klasse (logischer Typ) werden durch "Wahr", "Falsch" dargestellt. Die Operatoren für Negation, logisches Produkt und logische Summe sind "nicht", "und", "oder".
In [13]: not True, True and True, True or False
Out[13]: (False, True, True)
Alle Objekte können in Bool umgewandelt werden. In Python wird die Konvertierung in implizite logische Typen in verschiedenen Situationen durchgeführt, z. B. bei bedingten Anweisungen.
In [14]: bool(0), bool(0.1), bool(()), bool([]), bool({}), bool({0})
Out[14]: (False, True, False, False, True)
Das logische Produkt und die Summe der Ganzzahlen geben die letzte Ganzzahl in der Auswertungsprozedur zurück. In [16] ist das logische Produkt und die Summe der ganzzahligen Bits.
In [15]: 3 and 6, 3 or 6, 1 and 0
Out[15]: (6, 3, 0)
In [16]: 3 & 6, 3 | 6
Out[16]: (2, 7)
int, float
Es gibt keine Obergrenze für den Typ int.
In [26]: 10 ** 30
Out[26]: 1000000000000000000000000000000
10/5
wird float
, 10 // 5
wird int
.
In [27]: 10 / 5, 10 // 5
Out[27]: (2.0, 2)
Ich suche Quotienten und Rest.
In [28]: 10 // 3, 10 % 3
Out[28]: (3, 1)
list, tuple
--list
kann Elemente und Unterspalten ändern
--tuple
kann nicht geändert werden
list Generiere eine Liste
In [29]: a = [10, 20, 30, 40, 50]
Sie können nach Index darauf verweisen.
Sie können mit -1
auf das Ende der Liste verweisen.
In [30]: a[0], a[-1]
Out[30]: (10, 50)
Natürlich können Sie es ändern.
In [31]: a[0], a[-1] = 11,51
Sie können eine Funktion namens Slicing für Sequenzen verwenden.
#String-Objekt[Startindex:Index beenden]
In [32]: a[1:4]
Out[32]: [20, 30, 40]
Sie können einen Schritt im dritten Argument des Slice angeben. Wenn Sie dies verwenden, können Sie die angegebene Nummer überspringen und darauf verweisen.
In [33]: a[::2]
Out[33]: [11, 30, 51]
tuple
Generiere Tupel
In [33]: a = (10,20,30,40,50)
Sie können auch nach Index auf "Tupel" verweisen. Das () in "Tupel" kann weggelassen werden, es sei denn, es wird falsch interpretiert.
In [34]: a[0], a[-1]
Out[34]: (10, 50)
Die Änderung führt zu einem Fehler.
In [35]: a[0] = 11
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-45-1ffcdc5ca638> in <module>()
----> 1 a[0]=11
TypeError: 'tuple' object does not support item assignment
Kann kombiniert werden.
In [36]: a, b = (1,2),(True,'Japan',(None,'dog'))
In [37]: a + b
Out[37]: (1, 2, True, 'Japan', (None, 'dog'))
Kann nicht hinzugefügt werden.
In [38]: a.append(10)
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-52-fb2e87d24477> in <module>()
----> 1 a.append(10)
AttributeError: 'tuple' object has no attribute 'append'
Sie könnten denken, dass Sie es nur auf "Liste" beschränkt haben, aber "Tupel" hat die folgenden Bedeutungen.
dict
(Wörterbuch) seintuple
sollte ursprünglich "einfach" mehrere Objekte zu einem kombinierenstr, bytes, bytearray
str
(string) bedeutet immer Unicode.
Andererseits sind "Bytes" und "Bytearray" einfache Byte-Strings.
Der Unterschied zwischen "Bytes" und "Bytearray" ist der gleiche wie der Unterschied zwischen "Tupel" und "Liste".
Die Referenzmethode der Zeichenfolge entspricht im Wesentlichen der Liste und dem Tupel.
In [53]: a, b = 'ABCDE','FG'
In [54]: a[0],a[-1],a[-2],a[1:4]
Out[54]: ('A', 'E', 'D', 'BCD')
Sie können Zeilenumbrüche mit dreifachem Anführungszeichen einfügen.
In [55]: s = '''
....: #include <stdio.h>
....: int main(){
....: printf("hello world\n");
....: return 0;
....: }
....: '''
In [56]: s
Out[56]: '\n #include <stdio.h>\n int main(){\n printf("hello world\n");\n return 0;\n}\n'
dict
In list
war index eine Ganzzahl ab 0, aber in dict
(Wörterbuchtyp) können Ganzzahl, Zeichenfolge, Tupel usw. als Schlüssel für diesen Index verwendet werden.
In [61]: exts={'py':'Python','rb':'Ruby','pl':'Perl'}
In [62]: for key in exts:
....: value=exts[key]
....: print(key,value)
pl Perl
py Python
rb Ruby
Sie können den Schlüssel und den Wert zusammen mit items ()
abrufen.
In [63]: for key,value in exts.items():
....: print(key,value)
pl Perl
py Python
rb Ruby
Verwenden Sie in, um zu sehen, ob der Schlüssel im Diktat enthalten ist.
In [64]: 'py' in exts, 'c' in exts
Out[64]: (True, False)
** NÄCHSTER ** → [Python] Weg zur Schlange (4) Twumping Numpy
Recommended Posts