2016-12-07 1 views
-2
import numpy as np  
a = np.arange(6).reshape(2,3) 
np.meshgrid(*[np.arange(x) for x in a.shape]) 

Was ist die Rolle des Sternchens vor dem Parameter?Was ist die Rolle des Sternchens vor dem Parameter?

code

warum funktioniert es? Welche Dosis bedeutet das Hinzufügen eines Sternchens vor dem Listenverständnis als Parameter?

+1

Bitte aktualisieren Sie Ihre Frage mit einem tatsächlichen Codeschnipsel, nicht ein externes Bild. – Soviut

+0

@Soviut - Ich denke nicht, dass es wichtig ist. Es ist sowieso ein übliches Duplikat. – TigerhawkT3

+0

@ TigerhawkT3 Dies ist das erste Mal, dass ich Fragen in stackoverfolw gestellt habe, Entschuldigung für eine doppelte Frage – DamonD

Antwort

-2

In Python, * entrollt eine Liste.

Auf diese Weise können Sie eine Liste als eine Reihe von Argumenten verwenden.

some_args = ['first', False, 3] 

do_something(*some_args) 

In Ihrem Fall wird im Folgenden ein Listenverständnis abgewickelt.

*[np.arange(x) for x in a.shape] 
+0

Dies beantwortet nicht einmal die Frage, die über Funktionsaufrufe, nicht Funktionsdefinitionen war. – TigerhawkT3

+0

Ich denke, ich verstehe Ihren Standpunkt! Danke – DamonD

+0

@ TigerhawkT3 Sie haben Recht, ich habe meine Antwort aktualisiert. – Soviut

Verwandte Themen