Python,将一个元组元组返回到函数内的本地元素中

时间:2013-09-29 18:38:56

标签: python

t = (('page',1),('count',25),('skip',0))

def get_arguments(t):
 page = 1
 count = 25
 skip = 0

基本上,迭代元组并设置这些参数的最佳方法是什么 我的功能就像这个例子?

5 个答案:

答案 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']也可以正常工作,但虚线访问更短。