ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python函数参数中单独的*的含义

2022-04-05 12:35:55  阅读:237  来源: 互联网

标签:func2 bb python 含义 haha 函数参数 test hehe cc


函数中形参列表出现一个单独的*,如下所示:

test_func2(aa, *, bb, cc='hello'): 这表示*号后面的形参只能以关键字形式进行传参,不接受位置传参
就只能接受 bb='xxx', cc='xxx', 不能接受其他的命名关键字参数了

def test_func1(aa, bb, cc='hello'):
    print('11111 ', aa)
    print('22222 ', bb)
    print('33333 ', cc)
    
 
def test_func2(aa, *, bb, cc='hello'):
    print('11111 ', aa)
    print('22222 ', bb)
    print('33333 ', cc)
    
 
test_func1('haha', 'hehe', 'heihei')
11111  haha
22222  hehe
33333  heihei
 
 
 
test_func2('haha', 'hehe', 'heihei')
Traceback (most recent call last):
 
  File "<ipython-input-5-ec0696934d76>", line 1, in <module>
    test_func2('haha', 'hehe', 'heihei')
 
TypeError: test_func2() takes 1 positional argument but 3 were given
 
 
test_func2('haha', bb='hehe')
11111  haha
22222  hehe
33333  hello
 
test_func2('haha', bb='hehe', cc='heihei')
11111  haha
22222  hehe
33333  heihei

参考链接

标签:func2,bb,python,含义,haha,函数参数,test,hehe,cc
来源: https://www.cnblogs.com/rainboy1227/p/16101856.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有