在python中从一个函数中返回多个值

我可以从一个函数中返回多个值,并将它们全部返回到另一个函数中吗?

def function_1():
        one    = "Hello"
        two    = "how"
        three  = "are"
        four   = "you"
        return one, two, three, four

def function_2(one,two,three,four)
        print(one,two,three,four)

function_1()
function_2(one,two,three,four)

我是否可以从一个函数中返回多个值,并将每个值分配到一个特定的函数中去做一些操作?在Python中如何解决这个问题?

def function_1():
    if something:
        one    = "Hello"
        return one
    elif something:
        two    = "how"
        return two
    elif something:
        three  = "are"
        return three
    elif something:
        four   = "you"
        return four

def function_for_one(one)
    print(one)

def function_for_two(two)
    print(two)

def function_for_three(three)
    print(three)

def function_for_four(four)
    print(four)

function_1()
function_for_one(one)
function_for_two(two)
function_for_three(three)
function_for_four(four)

解决方案:

首先,你有一个小错误,在 function_1()你正在返回未定义的变量 hello, how, are, you,而不是做 return "hello", "how", "are", "you". 或者,你也可以通过以下方式返回存储这些字符串的变量 return one, two, three, four. 另外,要注意标签,你的写法是在function_1()里面定义了function_2()。

至于你的第一个问题,有几种方法。一种是在第二个函数中解析第一个函数,因为第二个函数接收的参数数与第一个函数返回的参数数相同。

function_2(function_1())

第二种方法是将第一个函数返回的值储存起来 然后将它们解析到第二个函数中,比如:

a, b, c, d = function_1()
function_2(a, b, c, d)

这样你就可以把它们分别解析成不同的函数。

function_for_one(a)
function_for_two(b)
function_for_three(c)

以此类推。

本文来自投稿,不代表实战宝典立场,如若转载,请注明出处:https://www.shizhanbaodian.com/14324.html

(0)
上一篇 1天前
下一篇 1天前

相关推荐

发表评论

登录后才能评论