Python的函数参数类型有哪些,必传参数是什么
Admin 2022-07-25 群英技术资讯 509 次浏览
# coding:utf-8 # Author:YangXiaoPeng def demo01(a,b): print(a, type(a)) print(b, type(b)) # demo01(1) #TypeError missing 1 required positional argument: 'b' 缺少一个未知的参数,demo01必须传2个参数 # demo01(1, 2, 3) #TypeError demo01() takes 2 positional arguments but 3 were given, demo01函数有2个位置参数,但是接收到了3个; # 必传参数 : 调用函数时必须传入的参数,函数定义时只定义参数名 # 传入的参数个数必须与形参的数量一致 demo01(1, 2) # yes demo01(1, [1, 2]) # yes demo01([2, 3], (1, 2)) # yes demo01(1, {2, 3, 4}) # yes demo01(2, {"code":'1001', "name":"zhang", "age":18}) # yes
# coding:utf-8 # Author:YangXiaoPeng def demo01(a,b): print(a, type(a), end="__") print(b, type(b)) # 第一个关键字出入的参数位置之前的参数比逊选择关键字传参;如下面的示例中,第一个关键字传参的变量是a,a在函数定义的第二个位置,那么第二个位置之前的参数都必须以关键字传参的形式传参。 # demo01(1, a=2) # demo01() got multiple values for argument 'a' demo01(a=1, b=2) # yes demo01(1, b=2) # yes demo01(b=1, a=2) # yes demo01(b=1, a=[1, 2]) # yes demo01(b=[2, 3], a=(1, 2)) # yes demo01(b=1, a={2, 3, 4}) # yes demo01(b=2, a={"code":'1001', "name":"zhang", "age":18}) # yes
# coding:utf-8 # Author:YangXiaoPeng ## 默认参数 def demo02(City = "LongNan"): print("City是默认参数,默认值是:中国,当前值是:", City) # 不传入参数 demo02() # 传入参数 demo02("Beijing")
# coding:utf-8 # Author:YangXiaoPeng ## 不定长参数 def demo03(*args): print(args,type(args)) # 传入的参数会生成一个元组类型的变量供函数内部使用 demo03(1) demo03("code") demo03(1,"code")
# coding:utf-8 # Author:YangXiaoPeng # *args 后面的形参,必须以关键字参数进行传参, def demo04(a, b, *args,c): print("a传入的参数值是:{},b传入的参数值是:{}, args传入的参数是:{}, c出入的参数是:{}".format(a, b, args,c)) # 传入的参数不能少于必传参数的个数,a,b,c三个为必传参数 # demo04(1, 2) # TypeError # demo04(1, 2, 3) # TypeError demo04(1, 2, c=3)
# coding:utf-8 # Author:YangXiaoPeng def demo05(**kwargs): print("kwargs传入的参数是:{}".format(kwargs),type(kwargs)) kwargs = {"code":'1002', "name":"zhang"} # demo05(kwargs) # TypeError # **修饰的参数必须以关键字的参数方式传参,Python解释器会将传入的关键字和关键字的值生成一个字典供函数内部使用 demo05(**kwargs) # kwargs传入的参数是:{'code': '1002', 'name': 'zhang'} <class 'dict'> demo05(code='1002',name="zhang") # kwargs传入的参数是:{'code': '1002', 'name': 'zhang'} <class 'dict'>
# coding:utf-8 # Author:YangXiaoPeng # **修饰的参数必须是最后一个 """ # SyntaxError: invalid syntax def demo06(a, b, *args, c, **kwargs, d): pass """ def demo06(a, b, *args, c, **kwargs): print("a传入的参数值是:{},b传入的参数值是:{}, args传入的参数是:{}".format(a, b, args),end='') print(",c传入的参数是:{},kwargs传入的参数是:{}".format(c,kwargs)) demo06(1, 2, 3, 4, 5, c=3, code='1002', name="zhang", d=3)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章介绍了Python中的基本数据类型,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
这篇文章主要介绍了教你怎么用Python实现多路径迷宫,文中有非常详细的代码示例,对正在学习python的小伙伴们有非常好的帮助,需要的朋友可以参考下
在我们执行python程序的时候,经常会遇到一个函数因为各种原因,程序进入了停止状态,或者卡死那里,这时候我们可以预估函数的执行时间,然后给函数设置一个最大执行时间,当超过这个执行时间的时候,函数会自动终止
这篇文章给大家分享的是有关python合并excel表的操作,合并excel表是比较常用的操作了,小编觉得挺实用的,因此分享给大家做个参考,接下来一起跟随小编看看吧。
在编写代码的时候,经常会出现写的代码存在一些问题,但是比较难以发现具体存在的问题在哪里,需要将带代码恢复到指定的版本,下面这篇文章主要给大家介绍了关于pycharm中代码回滚到指定版本的两种实现方法,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008