gpt4 book ai didi

python - Python 函数中的动态输出

转载 作者:行者123 更新时间:2023-12-01 05:40:52 24 4
gpt4 key购买 nike

当我们使用def时,我们可以使用**kwargs和*args来定义函数的动态输入

是否有类似的返回元组,我一直在寻找行为如下的东西:

def foo(data):
return 2,1

a,b=foo(5)
a=2
b=1
a=foo(5)
a=2

但是,如果我只声明一个要解包的值,它会将整个元组发送到那里:

a=foo(5)
a=(2,1)

我可以使用“if”语句,但我想知道是否有一些不那么麻烦的东西。我还可以使用一些保持变量来存储该值,但我的返回值可能会很大,只有一些占位符。

谢谢

最佳答案

如果您需要完全概括返回值,您可以这样做:

def function_that_could_return_anything(data): 
# do stuff
return_args = ['list', 'of', 'return', 'values']
return_kwargs = {'dict': 0, 'of': 1, 'return': 2, 'values': 3}
return return_args, return_kwargs

a, b = function_that_could_return_anything(...)
for thing in a:
# do stuff

for item in b.items():
# do stuff

在我看来,只返回一个字典,然后使用 get() 访问参数会更简单:

dict_return_value = foo()
a = dict_return_value.get('key containing a', None)
if a:
# do stuff with a

关于python - Python 函数中的动态输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17584119/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com