Dynamische Eingabe von Python

Überblick

Studiennotizen für First Python 3rd Edition

Agenda

Dynamische Eingabe von Python

Python ohne Typdeklaration

Variablen erstellen

a = 3

--Variablen werden erstellt, sobald der Wert zugewiesen wird

Geben Sie Informationen ein

Umgang mit Variablen beim Ausführen eines Programms

--Alle durch das entsprechende Objekt ersetzt

WS000427.png

Müllabfuhr

Gemeinsame Referenz

a = 3
b = a

Wie ist das

WS000428.png

Auf diese Weise wird ** eine Situation, in der mehrere Variablen Verweise auf dasselbe Objekt sind **, als ** gemeinsame Referenz ** bezeichnet.

Fügen Sie dann dem vorherigen Code eine Zeile hinzu

a = 3
b = a
a = 'spam'

Das ist so Die Variable a dient als Referenz auf das neu erstellte String-Objekt 'pam', während die Variable b eine Referenz auf Objekt 3 bleibt.

WS000429.png

Gemeinsame Referenz und Objektüberschreibung

Eine Liste ist ein Array von Objekten in eckigen Klammern, die überschrieben werden können.

Im folgenden Beispiel bleibt L2 ein Verweis auf "[2, 3, 4]"

L1 = [2, 3, 4]
L2 = L1
L1 = 24

Im folgenden Beispiel wird der Wert des Referenzobjekts überschrieben.

#Variables Objekt
>>> L1 = [2, 3, 4]

#Verweisen Sie erneut auf dasselbe Objekt
>>> L2 = L1

#Elemente überschreiben
>>> L1[0] = 24

#An der Liste für L1 wurden Änderungen vorgenommen
>>> L1
[24, 3, 4]

#Es betrifft auch L2!
>>> L2
[24, 3, 4]

Wenn Sie mit der folgenden Methode kopieren, wird L2 nicht geändert und ** 2 Variablen zeigen unterschiedliche Speicherbereiche an **

#Variables Objekt
>>> L1 = [2, 3, 4]

#Machen Sie eine Kopie von L1
>>> L2 = L1[:]

#Elemente überschreiben
>>> L1[0] = 24

#An der Liste für L1 wurden Änderungen vorgenommen
>>> L1
[24, 3, 4]

#L2 ändert sich nicht
>>> L2
[2, 3, 4]

"Äquivalent" und "gleich"

>>> x = 42

#Werden 42 bald zerstört?
>>> x = 'shrubbery'

** In Python werden kleine Ganzzahlen und Zeichenfolgen mit einer geringen Anzahl von Zeichen zwischengespeichert und wiederverwendet **

** Es gibt zwei Arten von Vergleichen, ob Objekte "gleich" sind **

>>> L = [1, 2, 3]

#M und L sind Referenzen für dasselbe Objekt
>>> M = L

#Vergleich, ob beide "gleichwertig" sind
>>> L == M
True

#Vergleich, ob sie "identisch" sind
>>> L is M
True
>>> L = [1, 2, 3]

#Die Objekte, denen M und L entsprechen, sind unterschiedlich
>>> M = [1, 2, 3]

#Beide Werte sind gleich
>>> L == M
True

#Zwei Objekte sind äquivalent, aber nicht identisch
>>> L is M
False

** Dasselbe für kleinere Zahlen zu tun, kann zu unterschiedlichen Ergebnissen führen **

>>> X = 42

#Die beiden 42er sollten nicht gleich sein
>>> Y = 42
>>> X == Y
True

#Die beiden werden gleich sein, weil sie zwischengespeichert werden!
>>> X is Y
True

Recommended Posts

Dynamische Eingabe von Python
Python-Eingabe
Python
Python Selenium Dynamic Download warten
Dynamischer Proxy mit Python, Ruby, PHP
Typisierungsautomatisierungsnotiz von Python-Anfängern
Kafka Python
Python-Grundlagen ⑤
Python-Zusammenfassung
Eingebaute Python
Python-Technik
Python studieren
Python 2.7 Countdown
Python-Memorandum
Python-Tipps
Python-Funktion ①
Python-Grundlagen
Python-Memo
Ufo-> Python (3)
Installieren Sie Python
Python Singleton
Python-Grundlagen ④
Python-Memorandum 2
Python-Memo
Python Jinja2
Python-Inkrement
atCoder 173 Python
[Python] -Funktion
Python-Installation
Python installieren 3.4.3.
Versuchen Sie Python
Python iterativ
Python-Algorithmus
Python2 + word2vec
[Python] -Variablen
Python-Funktionen
Python sys.intern ()
Python-Tutorial
Python-Fraktion
Python Underbar Das ist was
Python-Zusammenfassung
Starten Sie Python
[Python] Sortieren
Hinweis: Python
Python-Grundlagen ③
Python-Protokoll ausgeben
Python-Grundlagen
[Scraping] Python-Scraping
Python-Update (2.6-> 2.7)
Python-Memo
Python-Memorandum
Python #sort
Ufo-> Python
Python nslookup
Python lernen
[Rpmbuild] Python 3.7.3.