x, = ... - ist das nachgestellte Komma der Komma-operator?
Ich verstehe nicht, was macht das Komma nach der variable Linien, bedeutet: http://matplotlib.org/examples/animation/simple_anim.html
line, = ax.plot(x, np.sin(x))
Wenn ich Entferne Komma und die variable "Zeile" wird die variable "Zeile" dann das Programm unterbrochen ist. Vollständigen code aus der url, die oben gegeben:
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
fig = plt.figure()
ax = fig.add_subplot(111)
x = np.arange(0, 2*np.pi, 0.01) # x-array
line, = ax.plot(x, np.sin(x))
def animate(i):
line.set_ydata(np.sin(x+i/10.0)) # update the data
return line,
#Init only required for blitting to give a clean slate.
def init():
line.set_ydata(np.ma.array(x, mask=True))
return line,
ani = animation.FuncAnimation(fig, animate, np.arange(1, 200), init_func=init,
interval=25, blit=True)
plt.show()
Laut http://docs.python.org/3/tutorial/datastructures.html#tuples-and-sequences Komma nach variable scheint verknüpft werden, um Tupel mit nur einem Element.
Ihre Letzte Zeile trifft den Nagel auf den Kopf. Was es davon ausgegangen, dass Sie bereits wissen, ist, dass, wenn Sie eine Zuordnung zwischen iterables die Elemente aufgereiht sind. So
Ich kann nichts mehr hinzuzufügen zu den Antworten unten, aber ich dachte, ich würde hinzufügen, ein ordentliches Ergebnis: der Komma-operator gibt auch Python die Möglichkeit zu wechseln, variable Werte in eine ausdrucksstarke, klare Linie (habe das in Die Quick Python Book):
x,y,z=1,2,3
ist ein Pythonic Art und Weise des Schreibens x=1;y=2;z=3
.Ich kann nichts mehr hinzuzufügen zu den Antworten unten, aber ich dachte, ich würde hinzufügen, ein ordentliches Ergebnis: der Komma-operator gibt auch Python die Möglichkeit zu wechseln, variable Werte in eine ausdrucksstarke, klare Linie (habe das in Die Quick Python Book):
x2,x1 = x1,x2
.
InformationsquelleAutor inzzz | 2013-04-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
ax.plot()
gibt eine Tupel mit eine element. Durch das hinzufügen der Komma, um die Zuordnung der target-Liste, Fragen Sie Python zum entpacken der return-Wert ein und ordnen Sie jeder Variablen mit dem Namen Links in der Reihe.Meisten oft sehen Sie, dass es angewendet wird bei Funktionen mit mehr als einem Rückgabewert:
Der linken Seite können jedoch eine beliebige Anzahl von Elementen, und vorausgesetzt, es ist ein Tupel oder eine Liste von Variablen, die das Auspacken stattfindet.
In Python, es ist das Komma, das macht etwas ein Tupel:
Den Klammern sind optional, in den meisten Orten. Sie umschreiben könnte der ursprüngliche code mit Klammer ohne änderung der Bedeutung:
Oder verwenden Sie Liste syntax zu:
Oder, Sie könnten Neufassung der es um Linien, die nicht Verwendung Tupel entpacken:
oder
Für vollständige details auf, wie Zuordnungen arbeiten mit Bezug zum Auspacken finden Sie in der Zuweisungsanweisungen Dokumentation.
line = ax.plot(x, np.sin(x))[0]
außer der
line, = ...
syntax wird eine exception werfen, wenn die Rechte Seite 0 oder mehr als 1 element in der wiederholenden ist, während der Verwendung der Indizierung wird nur eine Ausnahme werfen, wenn es 0 Elemente.InformationsquelleAutor Martijn Pieters
Wenn Sie
packen Sie eine Liste oder Tupel der Länge.
z.B.
Folge
x == 1
, währendgibt
x == [1]
InformationsquelleAutor Elmar Peise