5

twilio python 库中,我们有这个功能来创建消息:

from twilio.rest import TwilioRestClient

我们可以写:

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

我的问题很简单:为什么下划线跟在from参数后面?或者为什么是参数名称?是不是因为from是 Python 中的关键字,我们用下划线后缀将变量与关键字区分开来?在这种情况下真的有必要吗?

4

1 回答 1

12

这是因为这from将是一个无效的参数名称,导致SyntaxError- 它是一个 python 关键字。

建议使用尾随下划线来避免PEP8 样式指南中提到的此类冲突:

如果函数参数的名称与保留关键字发生冲突,通常最好在结尾附加一个下划线,而不是使用缩写或拼写错误。

于 2016-08-01T22:07:15.910 回答