2017-09-23 5 views
2

Meine Python-Version ist 3.4, unten ist die Fehlermeldung.Python SyntaxError: ungültige Syntax

Traceback (most recent call last): 
    File "test.py", line 1, in <module  
    from avs_client import AlexaVoiceServiceClient 
    File "/home/mstts/Documents/Amazon/alexa-voice-service-client/avs_client/__init__.py", line 1, in <module  
    from avs_client.avs_client.client import AlexaVoiceServiceClient 
    File "/home/mstts/Documents/Amazon/alexa-voice-service-client/avs_client/avs_client/client.py", line 5, in <module  
    from avs_client.avs_client import authentication, connection, device, ping 
    File "/home/mstts/Documents/Amazon/alexa-voice-service-client/avs_client/avs_client/connection.py", line 64 
    **authentication_headers, 
    ^
SyntaxError: invalid syntax 

Und unten ist Code-Segment, das den Fehler auslöst.

Vielen Dank für jeden, der so freundlich sein könnte, mich wissen zu lassen, was ich falsch mache und warum das großartig wäre!

+1

Ist 'authentication_headers' ein Wörterbuch? Was ist dann los mit: 'headers = {'Content-Type': multipart_data.content_type}' und 'headers.update (authentication_headers)'? – ozgur

+1

fügen Sie Ihren vollständigen Code –

+0

@Ozgur Vatansever, funktioniert die Änderung. Aber warum ** ist hier nicht Arbeit? –

Antwort

1

Diese zusätzliche Entpackungssyntax für Dictionary-Literale wurde in Python 3.5 eingeführt (siehe PEP-448); In früheren Versionen ist es ein Syntaxfehler. Wenn Sie nicht aktualisieren können, müssen Sie die Header in zwei Schritten erstellen müssen, z.B .:

headers = {'Content-Type': multipart_data.content_type} 
headers.update(**authentication_headers) 

als in the comments von Ozgur vorgeschlagen.

Verwandte Themen