TypeError: missing 1 required keyword-only argument-python中的报错问题

如下图所示,报错为TypeError: JayChou() missing 1 required keyword-only argument: ‘c’
在这里插入图片描述
翻译过来是:TypeError:JayChou()缺少1个仅限关键字的参数:“c”

报错代码:

#coding=utf-8

def JayChou(a, *b, c):
    print(a)
    print(b)
    print(c)
JayChou(1, 555, 5768, 55451)

由上代码可知,我在不定长参数b后面加了一个c,出现在b后面应该是加了两个**号的以字典导入的参数。针对c的位置,有3种解决办法解决这个报错:

  1. 将“c”移到“*b”之前,如代码
#coding=utf-8

def JayChou(a, c, *b):
    print(a)
    print(b)
    print(c)
JayChou(1, 555, 5768, 55451)


运行结果
在这里插入图片描述
2. 删除“c
代码

def JayChou(a, *b):
    print(a)
    print(b)
JayChou(1, 555, 5768, 55451)

运行结果
在这里插入图片描述
3. 将”c”作为以两个“**”的参数写入,以字典的形式导入
代码

#coding=utf-8

def JayChou(a, *b, **c):
    print(a)
    print(b)
    print(c)
JayChou(1, 555, x=5768, y=55451)

运行结果
在这里插入图片描述
希望能够对你有帮助!

原创文章 96 获赞 330 访问量 2万+

猜你喜欢

转载自blog.csdn.net/hanhanwanghaha/article/details/105920371
今日推荐