[Python] Grundlegende Grammatik --- 1, Grunddaten

Kapitel 1 Grammatikgrundlagen

Definition von Software

Bezieht sich auf eine Sammlung von Computerdaten und Anweisungen, die in einer bestimmten Reihenfolge angeordnet sind.

Daten: Einige Daten , die der Computer erkennen kann. Auf der Festplatte: avi, doc, txt, py, im Speicher: Konstanten, Variablen, Funktionen, Objekte, Klassen.

Anleitung : Die Schritte zum Bearbeiten dieser Daten, um die erforderlichen Berechnungen durchzuführen.

Software-Betriebsprozess

    Der von Python geschriebene Code wird als Quellcode bezeichnet. Kann der Quellcode vom Computer direkt erkannt werden? Kompilieren Sie den Quellcode in Maschinencode, den der Computer erkennen kann, und der Computer führt dann den Maschinencode aus.

Zwei Betriebsarten der Software:

  • Betriebsmodus der grafischen Oberfläche

  • Befehlszeilenbetriebsmodus

Hochrangige Programmiersprachen sind in zwei Kategorien unterteilt:

  • Statisch kompilierter Typ: C, C ++, Java

    • Kompilieren: Der Quellcode muss vollständig in eine Maschinencodedatei kompiliert werden. Anschließend muss die Maschinencodedatei ausgeführt und das Programm ausgeführt werden

    • Statisch: Variablen müssen eindeutige Datentypdefinitionen haben

  • Dynamisch interpretiert: Python, JavaScript, Mathlab, Ruby, Go

    • Erläuterung: Es ist nicht erforderlich, den Code vollständig in Maschinencode umzuwandeln, einen Quellcode zu lesen, einen Satz zu kompilieren und einen Satz auszuführen

    • Dynamisch: Variablen haben keine eindeutige Datentypdefinition, jede Datentypvariable kann gespeichert werden

1.1 Grunddaten

Ganzzahl int

Normalerweise als Ganzzahl bezeichnet, ist sie Null, positiv und negativ, ohne Dezimalpunkt.

Wenn wir Zahlen ausdrücken, können wir auch die hexadezimale Form von zwei, acht, zehn, hexadezimal verwenden

>>> print(10)
10
>>> print(1001)
1001
>>> print(0b1001)
9
>>> print(0o1234)
668
>>> print(0x9C1A)
39962
>>> print(0x9W2Y)
  File "<stdin>", line 1
    print(0x9W2Y)
             ^
SyntaxError: invalid syntax

Hinweis: Das gedruckte Ergebnis ist immer dezimal

     Die Ganzzahllänge von Python beträgt 32 Bit-4 Byte und ist normalerweise eine kontinuierliche Zuweisung der Speicherplatz-ID () -Funktion

>>> id(0)
2034812832
>>> id(1)
2034812848
>>> id(2)
2034812864

      Wenn Python die Umgebung initialisiert, teilt es einen Bereich im Speicher, der für den Zugriff auf ganzzahlige Objekte vorgesehen ist. Natürlich ist dieser Speicherplatz nicht unendlich und die Daten, die gespeichert werden können, sind begrenzt.

>>> id(251)
2034816848
>>> id(260)
13647712
>>> id(-10)
13647696

Kleiner ganzzahliger Objektpool

    Wenn Python initialisiert wird, wird automatisch ein kleiner ganzzahliger Objektpool erstellt, der für uns praktisch ist, um eine spätere Generierung aufzurufen und zu vermeiden. Er enthält nur -5 ~ 256. Diese Nummern sind unsere am häufigsten verwendeten Nummern, sodass sie von Python im Voraus in den Speicher geladen werden. Bei der Verwendung von Ganzzahlen wird diese immer neu erstellt, wenn sie nicht zwischen -5 und 256 liegt.

>>> id(-5)
2034812752
>>> id(-6)
13647728
>>> id(256)
2034816928
>>> id(257)
13647648
>>> id(300)
13647696
>>> id(300)
13647712
>>> id(300)
13647680

Gleitkomma-Typ float

Gleitkommazahlen sind Dezimalstellen. Wenn die Dezimalstellen zu lang sind, können sie auch in wissenschaftlicher Notation ausgedrückt werden.

>>> print(3.14)
3.14
>>> print(1.298765e10)
12987650000.0
>>> print(0.89e-5)
8.9e-06
>>> print(1.23e-8)
1.23e-08

Komplex

Eine komplexe Zahl besteht aus Real- und Imaginärteilen a + bj

>>> print(1+2)
3
>>> print(1+2j)
(1+2j)
>>> (1+2j)*(1-2j)
(5+0j)
>>> complex(1,2)*complex(1,-2)
(5+0j)

Bool

Richtig und falsch, 0 und 1, positiv und negativ, sind alle boolesche Typen im traditionellen Sinne

In Python gibt es nur zwei Boolesche Typen: True und False

Boolesche Typen können nur in logischen Operationen und Vergleichsoperationen existieren

>>> True + False
1
>>> True - False
1
>>> 3 > 2
True
>>> 2 < 1
False
>>> 3 > 2 and 2 < 1
False

Keine 空 值 NoneType

Der Nullwert kann nicht als Zahl 0 verstanden werden, er ist die leere Menge φ, wir verwenden ihn hauptsächlich zum Erstellen von Sequenzen und zur objektorientierten Programmierung.

>>> None + 1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
>>> [None] * 10  # 创建一个长度为10的列表 没有数据 但有空间
[None, None, None, None, None, None, None, None, None, None]

String str

Es gibt drei Arten von Zeichenfolgen: einfaches Anführungszeichen, doppeltes Anführungszeichen, dreifaches Anführungszeichen (normalerweise in Kommentaren verwendet)

>>> print("HelloWorld")
HelloWorld
>>> print('你好')
你好
>>> print(" '' ")
 ''
>>> print(' "" ')
 ""
>>> print(' ' ')
  File "<stdin>", line 1
    print(' ' ')
               ^
SyntaxError: EOL while scanning string literal
>>> print(' \' ')
 '

 

Fluchten

  • \\: Backslash

  • \':Apostroph

  • \":Anführungszeichen

  • \n: Wickeln

  • \t: Horizontale Registerkarte

>>> print(' \' ')
 '
>>> print("\")
  File "<stdin>", line 1
    print("\")
             ^
SyntaxError: EOL while scanning string literal
>>> print("\\")
\

Variable

Variable : Der Betrag, um den sich der Wert während der Ausführung des Programms ändert.

Konstante: Der Betrag, um den sich der Wert während der Programmausführung nicht ändert. (Literal, Daten, die direkt im Code erscheinen)

Unabhängig davon, ob es sich um eine Variable oder eine Konstante handelt, wird beim Erstellen ein Speicherplatz im Speicher geöffnet, um deren Wert zu speichern.

# Java中基本数据类型变量a,b 和 引用数据类型变量c d e
int a = 3;
int b = 8;
Object c = new Object();
Object d = new Object();
Object e = c;

In Python ist alles ein Objekt!

>>> a = 1
>>> b = 1
>>> c = 1
>>> a == b
True
>>> id(1)
2034812848
>>> id(a)
2034812848
>>> id(b)
2034812848
>>> d = a
>>> d == b
True

 

>>> num1 = 300
>>> num2 = 300
>>> num3 = 300
>>> id(num1)
13647712
>>> id(num2)
13647696
>>> id(num3)
13647680
>>> num1 == num2
True

 Sie können die Adresse nicht blind vergleichen, sondern auch vergleichen, ob der Inhalt der beiden Objekte gleich ist.

Im Variablenraum kann nur die Adresse eines bestimmten Datenobjekts gespeichert werden, und die Variable ist nur eine Referenz auf das Objekt

Variablen müssen zugewiesen werden, bevor sie aufgerufen werden können.

>>> print(num4)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'num4' is not defined

Variablen können fortlaufend zugewiesen werden:

>>> a=b=c=10
>>> a
10
>>> b
10
>>> c
10
>>> a,b,c =10,20,30
>>> a
10
>>> b
20
>>> c
30
>>> a=b=c=1000
>>> id(a)
13647776
>>> id(b)
13647776
>>> id(c)
13647776
>>> a=1000
>>> b=1000
>>> c=1000
>>> id(a)
13647792
>>> id(b)
13647648
>>> id(c)
13647824

 Die Variable selbst in Python unterliegt keiner Datentypbeschränkung, ist lediglich eine Referenz auf ein Objekt und speichert die Speicheradresse der Objektdaten

Es werden nur Datentypen zwischen Datenobjekten unterschieden.

 

Kennung

Der sogenannte Bezeichner ist der Name, den wir Variablen, Konstanten, Funktionen, Klassen usw. geben.

Folgende Bestimmungen:

  • Das erste Zeichen muss ein Buchstabe oder ein Unterstrich sein_

    • Obwohl Python Chinesisch unterstützt, können wir auch Chinesisch zum Benennen verwenden, dies wird jedoch nicht empfohlen

    • Die Wörter, die mit einem Unterstrich beginnen, haben in der objektorientierten Programmierung privat eine besondere Bedeutung

  • Die anderen Teile des Bezeichners bestehen aus Buchstaben, Zahlen und Unterstrichen

  • Bezeichner unterscheiden zwischen Groß- und Kleinschreibung

  • Variablennamen sind alle Kleinbuchstaben und Konstantennamen sind alle Großbuchstaben (in Python gibt es keine Konstante PI = 3.14 und es handelt sich im Wesentlichen um eine Variable).

  • Der Funktionsname ist klein geschrieben und unterstrichen, was dem Variablennamen entspricht

  • Der Klassenname verwendet die Methode zur Benennung von Großkamelfällen: Wenn der Name aus mehreren Wörtern besteht, wird der erste Buchstabe jedes Wortes großgeschrieben

变量的命名不要使用关键字和内置函数的名称!

>>> True = 2
  File "<stdin>", line 1
SyntaxError: cannot assign to True
>>> if = 3
  File "<stdin>", line 1
    if = 3
       ^
SyntaxError: invalid syntax

 

Stichwort

Bezieht sich auf Wörter, die von höheren Programmiersprachen eine besondere Bedeutung erhalten haben.

>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

Kann auch keine eingebauten Funktionen verwenden (ändern Sie den Namen der eingebauten Funktionen für andere Zwecke)

>>> id(2)
2034812864
>>> id = 3
>>> id + 1
4
>>> id(4)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'int' object is not callable

In Python ist alles ein Objekt und Funktionen selbst sind Objekte!

>>> id(2)
2034812864
>>> id(id)
45545184
>>> abc = id
>>> abc(1)
2034812848
>>> id(1)
2034812848
>>> id = 10
>>> print(id)
10
>>> abc(id)
2034812992

Wie viele integrierte Funktionen gibt es?

>>> dir(__builtins__)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FileExistsError', 'FileNotFoundError', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError', 'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'ModuleNotFoundError', 'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError', 'RecursionError', 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'WindowsError', 'ZeroDivisionError', '_', '__build_class__', '__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package__', '__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'breakpoint', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod', 'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip']

Kommentar

Hinweis: Eine vom Programm verwendete Textinformation wird nicht als Teil des Programms betrachtet.

  • Einzeiliger Kommentar : # Kommentarinhalt

  • Mehrzeilige Kommentare : Mehrere einzeilige Kommentare

  • Dokumentnotiz : "" Der Inhalt der Notiz kann die Funktionsinformationen der Klasseninformation erklären. "" "

Ich denke du magst

Origin blog.csdn.net/trichloromethane/article/details/107800214
Empfohlen
Rangfolge