我试图使用网络服务发送短信,这就是网络服务文档的建议:
response = client.service.SendSMS( fromNum = '09999999' ,
toNum = '0666666666666',
messageContent = 'test',
messageType = 'normal',
user = 'myusername',
pass = '123456' ,
)
公平地说他们没有python文件只有php / asp所以我已经从他们的php示例中转换了这个但是和我不同,有些人可能知道pass
是python的保留关键字
所以我不能有变量名pass
becuz我得到语法错误!
有没有办法解决这个问题,或者我应该切换到另一个网络服务?我希望我们可以将变量名称放在引号或其他内容
答案 0 :(得分:8)
您可以使用**dictionary
调用语法将任意字符串作为关键字参数传递:
response = client.service.SendSMS( fromNum = '09999999' ,
toNum = '0666666666666',
messageContent = 'test',
messageType = 'normal',
user = 'myusername',
**{'pass': '123456'}
)
如果需要,可以将所有关键字参数移动到字典中,并在应用之前将该字典分配给变量。
答案 1 :(得分:5)
也许尝试这样:
sms_kwargs = {
'toNum': '0666666666666',
'messageContent': 'test',
'messageType': 'normal',
'user': 'myusername',
'pass': '123456'
}
response = client.service.SendSMS(**sms_kwargs)