2017-09-27 9 views
-3

Für den folgenden Code ist "neu" von Python vordefiniert? Der Code ist verwirrend und ich habe Schwierigkeiten, ihn zu verstehen. Kann es jemand erklären?Wie verfolgen Sie Änderungen in Python?

int_range = widgets.IntSlider() 

def on_value_change(change): 
    print(change['new']) 

int_range.observe(on_value_change, names='value') 
display(int_range) 
+1

Nein, der 'neue' Schlüssel im' change' Dictionary ist nicht von Python vordefiniert. Es wurde von den Autoren der Bibliothek [hier] (http://ipywidgets.readthedocs.io/en/stable/examples/Widget%20Events.html#Traitlet-events) ausgewählt. – Jonesinator

Antwort

0

Jonesinator hat die richtigen Informationen. Ich denke, dass es viel mehr Code gibt, der hier nicht angezeigt wird. Zum Beispiel ist "Widgets" nicht definiert und führt dazu, dass das Skript einen Fehler verursacht. (Gleiches für IntSlider ...)

Die Tatsache, dass es in Klammern ist, sagt Ihnen, dass es ein Wert für einen Iterator ist, z. B. das Ziehen einer Zahl aus einer Liste oder eines Schlüssels aus einem Wörterbuch.

Persönlich denke ich, dass "neu" eine schlechte Wortwahl ist. Es ist kein reserviertes Wort, also ist es technisch verwendbar, aber es gibt bessere Möglichkeiten, Schlüssel für Wörterbücher zu erstellen. Sogar neuer_Wert wäre besser.

Verwandte Themen