3 Stimmen

SOAPpy - reserviertes Wort in benannter Parameterliste

Ich verwende SOAPpy, um auf einen SOAP-Webservice zuzugreifen. Dieser Aufruf der Funktion findPathwaysByText funktioniert einwandfrei:

server.findPathwaysByText (query= 'WP619', species = 'Mus musculus')

Bei diesem Aufruf der Funktion login ist dies jedoch nicht der Fall:

server.login (user='amarillion', pass='*****')

Da pass ein reserviertes Wort ist, wird Python dies nicht ausführen. Gibt es einen Workaround?

5voto

brian-brazil Punkte 28151

Sie könnten es versuchen:

d = {'user':'amarillion', 'pass':'*****' }
server.login(**d)

Damit wird das angegebene Wörterbuch so übergeben, als wären es Schlüsselwortargumente (die **)

1voto

Eli Courtwright Punkte 174547

Sie können sagen

server.login(user='amarillion', **{'pass': '*****'})

Die Doppel-Asterix-Syntax gilt hier für Schlüsselwortargumente. Hier ist ein einfaches Beispiel, das zeigt, was passiert:

def f(a, b):
    return a + b

kwargs = {"a": 5, "b": 6}
return f(**kwargs)        # same as saying f(a=5, b=6)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X