python 传递字典转换成变量

[size=medium]在接触新浪、腾讯微博开放API的python接口时,我发现了一个很实用但稍显复杂的python特性——可以给一个函数传递灵活的变量,通过传递字典名前面加两个*。比如字典kw= {"username":"testname", "passwd":"123"}传递**kw到函数参数中,通过循环for k, v in kw.iteritems():并利用setattr(self, k, v)给对象进行变量赠加并同时进行赋值。

如下例子:[/size]



class TEST:
def __init__(self, url, **kw):
http_url = url
for k, v in kw.iteritems():
setattr(self, k, v)
http_url = http_url + k + "=" + v + "&"
http_url = http_url[:-1]
print http_url

params = {"username":"testname", "passwd":"123"}
test = TEST(url="http://localhost/index.php?", **params)
print test.username
print test.passwd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值