2016-08-01 3 views
5

Im twilio python library, haben wir diese Funktion Nachrichten zu erstellen:Warum gibt es in der Twilio Rest API eine Unterstreichung nach dem "von"?

from twilio.rest import TwilioRestClient

und wir schreiben können:

msg = TwilioRestClient.messages.create(body=myMsgString, from_=myNumber, to=yourNumber)

Meine Frage ist einfach: warum ein Unterstrich folgen dem from Parameter ? Oder warum ist das der Parametername? Liegt es daran, dass from sonst ein Schlüsselwort in Python ist und wir Variablen von Schlüsselwörtern mit einem Unterstreichungssuffix unterscheiden? Ist das in diesem Fall wirklich notwendig?

+2

Sie haben sich selbst geantwortet. Sie können 'from' nicht verwenden, da es sich um ein Schlüsselwort handelt. [PEP8] (https://www.python.org/dev/peps/pep-0008/#descriptive-naming-styles) schlägt vor, dies zu tun und gibt das Beispiel von 'class_'. – Holloway

Antwort

11

Dies ist, weil from wäre ein ungültiger Argument Name, was zu einem SyntaxError - es ist ein Python-Schlüsselwort.

einen nachgestellten Strich Anfügen ist der empfohlene Weg, um solche Konflikte in der PEP8 style guide erwähnt zu vermeiden:

Wenn ein Namenskonflikte des Funktionsargument mit einem reservierten Schlüsselwort, es in der Regel besser ist, ein einzelnes Hinter eher unterstreichen anhängen als Verwenden Sie eine Abkürzung oder Rechtschreibung Korruption.

+1

Hey wim, danke für deine Antwort hier! Einer meiner liebsten Fälle in der Twilio-Python-Hilfsbibliothek;) Kann ich dir ein Shirt für deinen Beitrag zur Community anbieten? Senden Sie eine E-Mail an [email protected] für Details. –

+1

Hey, ich habe [das T-Shirt] erhalten (http://i.stack.imgur.com/oQQF7.jpg). Prost! – wim

Verwandte Themen