gpt4 book ai didi

python - 在交替字母练习中使用 **kwargs

转载 作者:太空宇宙 更新时间:2023-11-03 20:47:17 24 4
gpt4 key购买 nike

您好,我想知道为什么在这个示例中使用 **kwargs 不起作用。我正在遵循 Alternating letter in python 中给出的答案

def myfunc(**kwargs):
return "".join(w.upper() if i%2 else w.lower() for i,w in enumerate(kwargs))

我尝试将该函数调用为 myfunc("skyscraper") 但收到错误:

TypeError: myfunc() takes 0 positional arguments but 1 was given

这可能是一些简单但对我来说并不明显的事情。在练习中说我不允许使用 print 语句和返回字符串的函数谢谢

最佳答案

您需要将关键字参数传递给函数,例如myfunc(arg="skyscraper"),然后使用函数中关键字参数的名称来提取值。

例如

def myfunc(**kwargs):
#arg is the name of the argument, you extract the value from the kwargs dictionary
return "".join(w.upper() if i%2 else w.lower() for i,w in enumerate(kwargs['arg']))

#Call myfunc using kwargs
print(myfunc(arg="skyscraper"))

输出将是

sKyScRaPeR

关于python - 在交替字母练习中使用 **kwargs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56498465/

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