python中*args和**kwargs学习
2024-08-24 00:17:30
*args 和 **kwargs 经常看到,但是一脸懵逼 ,今天终于有收获了
"""
python 函数的入参经常能看到这样一种情况 *args 或者是 **kwargs
但是它们到底是啥意思呢?
代码能说明一切
""" def hello(*args, **kwargs):
print(args) # ('小明', 25, '男', '中国银行')
print(kwargs) # {} hello('小明', 25, '男', '中国银行') print('*' * 50) def hello(*args, **kwargs):
print(args) # ()
print(kwargs) # {'name': '小明', 'age': 25, 'gender': '男', 'company': '中国银行'} hello(name='小明', age=25, gender='男', company='中国银行') print('*' * 50) def hello(name, *args, **kwargs):
'''
将第一个入参映射到name头上去了
:param name:
:param args:
:param kwargs:
:return:
'''
print(name) # 小光
print(args) # (40, '男', '中国银行')
print(kwargs) # {} hello('小光', 40, '男', '中国银行') print('*' * 50) def hello(name, *args, **kwargs):
'''
将第一个入参映射到name头上去了
'''
print(name) # 小光
print(args) # (40, '男', '中国银行')
print(kwargs) # {} hello(name='小光', 40, '男', '中国银行') # 这样编译都不会通过 print('*' * 50) def hello(name, *args, **kwargs):
'''
将第一个入参映射到name头上去了
'''
print(name) # 小光
print(args) # ()
print(kwargs) # {'age': 40, 'gender': '男', 'company': '中国银行'} hello(name='小光', age = 40, gender= '男', company = '中国银行') # 要搞就只能这样搞
至于 ,如何灵活的使用,还有待于工作中的摸索.....
最新文章
- 判断网站地址是否是http开头
- PHP执行定时任务
- [dts]Device Tree格式解析
- PB小技巧集锦
- openstack vm image
- debian install &; configure(2)-drivers-nvidia
- java 无法割符日期字符串转yyyy-MM-dd hh:mm:ss
- springmvc上传图片,发送邮件
- Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3)(A.B.C,3道暴力题,C可二分求解)
- sqlserver存储过程及mybatis调用——待续
- Redis这些知识点,是必须知道的!
- Java数据结构与算法 - 外部存储
- python的四种内置数据结构
- 根据需要扩展java中的ThreadPoolExecutor
- MySQL行级锁测试
- Linux设置口令复杂度和口令定期更换策略
- snmp信息的查询命令snmpwalk
- Linux CentOS 6.5 使用自带jdk修改环境变量
- 《JavaScript高级程序设计(第三版)》-3
- day 3 创建窗口,移动-函数版
热门文章
- (转)用C#实现实现简单的 Ping 的功能,用于测试网络是否已经连通
- nacos 使用 servlet 异步处理客户端配置长轮询
- Win7下64位机安装SQL2000
- unity 2d 版的lookAt
- 数论-欧拉函数-LightOJ - 1370
- 1.关于狗书《Flask Web开发 基于Python的web开发应用实战》身份验证的改进
- airtest自动化中的poco+python连接手机实现ui自动化
- MyBatis基础面试题
- SpringBoot(五) -- SpringBootWeb登录示例
- MySQL-第十三篇使用ResultSetMetaData分析结果集