t = (('page',1),('count',25),('skip',0))
def get_arguments(t):
page = 1
count = 25
skip = 0
基本上,迭代元组并设置这些参数的最佳方法是什么 我的功能就像这个例子?
答案 0 :(得分:4)
您还可以使用**kwargs
:
t = (('page',1),('count',25),('skip',0))
arguments = dict(t)
def get_arguments(page, count, skip):
#page = 1
#count = 25
#skip = 0
#call your function with
get_arguments(**arguments)
不要将变量命名为元组。
答案 1 :(得分:0)
tupleData = (('page',1),('count',25),('skip',0))
def get_arguments(tupleArg):
page, count, skip = zip(*tupleArg)[1]
print page, count, skip
get_arguments(tupleData)
<强>输出强>
1 25 0
答案 2 :(得分:0)
def get_arguments(page,count,skip):
print page, count, skip
get_arguments(page=1, count=25, skip=0)
答案 3 :(得分:0)
你可以这样做:
page, count, skip = [t[1] for t in tuple]
答案 4 :(得分:0)
tupleData = (('page',1),('count',25),('skip',0))
class DottedDict(dict):
def __init__(self, *a, **k):
super(DottedDict, self).__init__(*a, **k)
self.__dict__ = self
def get_arguments(tupleArg):
d = DottedDict(tupleArg)
print d.page, d.count, d.skip
get_arguments(tupleData)
原则上,如果您执行dict
等,正常的d['page']
也可以正常工作,但虚线访问更短。