如何从python中的For循环返回值?

时间:2016-01-29 05:21:47

标签: python function for-loop dictionary return

我有一个功能:

 def getvalues():
       global avalue
       global bvalue
       dictt = getresults()
       for key , value in dictt.iteritems():
            avalue = key
            bvalue = dictt[key]
            print avalue , bvalue

这将打印avalue,bvalue的值 输出:

C123 1
C245 2
C456 2
C565 3
C654 1

但是,将值返回到for循环之外并不会迭代。就像这样:

 def getvalues():
       global avalue
       global bvalue
       dictt = getresults()
       for key , value in dictt.iteritems():
            avalue = key
            bvalue = dictt[key]
       return avalue , bvalue

我需要avalue,bvalue才能在这个函数之外使用。这怎么办? 如果我使用return我得到输出为

C654 1

我需要与上面相同的输出以及我可以在其他功能中使用的所有avalue,bvalue

1 个答案:

答案 0 :(得分:3)

def getvalues():
    values = []
    dictt = getvalues()
    for key , value in getvalues.iteritems():
         values.append((key, getvalues[key])) 
    return values