return使用一个函数输出多个函数

时间:2015-10-01 12:16:16

标签: python

我有一个功能齐全的代码,有三个函数,每个函数都返回它自己的输出。我的任务是创建一个函数,它可以调用所有其他函数并返回所有函数的输出。我怎么做? 我的代码如下:

def func(x, y):
    return x * x + y * y, x * y

def generate_data(size):
    nx = 5
    mx = 0.5
    mux, sigmax = nx, mx/3
    ny = 3
    my = 0.9
    muy, sigmay = ny, my/3
    result1=[]
    result2=[]
    for i in range(size):
        result = func(random.gauss(mux, sigmax), random.gauss(muy, sigmay))
        result1.append(result[0])
        result2.append(result[1])
    return result1, result2

def analysis(ls):

    avg = np.mean(ls)
    std = np.std(ls)
    pre = 3 * std


    return avg, std, pre

说,例如:我需要创建一个函数

def My_func()

并且此函数应具有其他函数并返回其输出

2 个答案:

答案 0 :(得分:3)

正如您在每个现有功能中所做的那样,您可以在一行中返回多个结果。

def My_func(x, y, size, ls):
    return analysis(ls), generate_data(size), func(x,y)

答案 1 :(得分:0)

您可以立即归还。就像这样:

return analysis(x,y), generate_data(size), func(ls)

要获得该值,您必须解压缩

Valanalysis,Valgenerate_data,valfunc=My_func(x, y,size,ls)