gpt4 book ai didi

python - 获取作为 *args 和 **kwargs 传递的值的名称

转载 作者:行者123 更新时间:2023-11-30 23:31:19 25 4
gpt4 key购买 nike

我正在尝试获取子类函数的 args 或 kwargs 中可能存在也可能不存在的前缀值。

原函数:

def list(self, prefix='', delimiter='', marker='', headers=None):
pass

子类化函数:

def list(self, *args, **kwargs):
# get prefix from args[0] or kwargs['prefix']
pass

我已经尝试过:

kwargs.get('prefix', args[0])

但如果没有传递参数,则会失败。

我已经尝试过:

prefix = ''

if len(args):
prefix = args[0]

if 'prefix' in kwargs:
prefix = kwargs['prefix']

if prefix != '':
# Do something with the prefix

它可以工作,但不是很优雅。

还尝试寻找一种使用 kwargs 来 zip() args 的方法。有什么想法吗?

最佳答案

这个应该按预期工作:

def list(self, *args, **kwargs):
prefix = kwargs.get('prefix', args[0] if args else '')

关于python - 获取作为 *args 和 **kwargs 传递的值的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20009882/

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