Python 动态传参
2024-08-24 13:49:16
def chi(zhushi, cai, fushi, tang, tiandian):
print(zhushi,cai,fushi,tang,tiandian) chi("大碗大米饭", "火爆大头菜", "把子肉", "西红柿鸡蛋汤", "烤地瓜")
chi("小碗大米饭", "火爆大头菜") # 参数不够 # 形参的顺序(重点):
# 位置 *args 默认值 **kwargs
# 以后写参数. 可以随意的进行搭配, 但是, 顺序不能串 # * 在形参位置. * 表示不定参数-接收的是位置参数
# 接收到的位置参数的动态传参: 都是元组
def chi(*food): # 在形参这里把传递过来的实参进行了聚合,聚合成了元组
print(food)
#
chi("小米粥")
chi("小米粥", "咸鸭蛋")
chi("爆米花", "咸鸭蛋", "辣白菜")
chi("小米粥", "爆米花", "咸鸭蛋", "蒜茄子") def func(*args, a, b, c):
print(a, b , c, args) func(1,2,3,4,5,6,7, a=8, b=9,c=10) # **在形参表示动态传参-关键字参数
# 关键字动态传参接收到的是字典
def func(**kwargs): # 也是聚合. ** 聚合成字典
print(kwargs)
#
# func(1,2,3,4,5,6,7) # 位置参数. 报错
func(a=1, b=2, c=3, haha="呵呵", good="not bad") # def func(**kwargs, gender="男"):
# print(gender, kwargs) # func(a=5,b=3,c=6, gender="女") # # 无敌传参
def func(*args, **kwargs): # 参数没有限制. 随便传递
print(args)
print(kwargs) func(1,2,3,4, a=3,b=5) # # 这里是形参
# # * 聚合
def chi(*food):
print(food)
#
lst = ["胡萝卜", "大白菜", "大萝卜", "草", "果冻"]
for el in lst:
chi(el)
#
chi(lst[0], lst[1], lst[2], lst[3], lst[4])
#
# # 这里是实参
# # * 打散
chi(*"你今天吃了些什么") # * 打散. 把列表, 元组, 字符串打散成位置参数进行传递
chi("胡萝卜", "大白菜", "大萝卜", "草", "果冻") def chi(**food): # 聚合, 聚合成字典
print(food)
#
dic = {"主食":'面条', "副食":"土豆泥", "汤":"疙瘩汤"}
dic1 = {}
#
chi(**dic, 甜点="冰激凌") # 打散. 打散成关键字
chi(主食="面条", 副食="土豆泥", 汤="疙瘩汤", 甜点="冰激凌") # 形参:
# *->元组, **->字典 表示聚合
# 实参:
# *->列表,字符串,元组, **->字典 表示打散
最新文章
- QT内省机制、自定义Model、数据库
- 在mvc中将session的值绑定在页面上
- MVC5+EF6 入门完整教程十一:细说MVC中仓储模式的应用
- 运用JS设置cookie、读取cookie、删除cookie
- redis HA高可用方案Sentinel和shard
- 两轮自平衡小车双闭环PID控制设计
- BZOJ1111 : [POI2007]四进制的天平Wag
- 测试V模型
- Java 存储过程调用
- C专家编程学习 1
- Linux搜狗输入法在有道云笔记上输入冗余
- WPF之UseLayoutRounding和SnapsToDevicePixels
- ios页面跳转
- SQL 2005 安装数据库镜像教程
- java文本编辑器v2.0 图形用户界面
- HBase丢失数据的故障和原因分析
- js二分查找算法
- NB-Iot的应用领域、覆盖范围,是什么
- 深度学习课程笔记(十八)Deep Reinforcement Learning - Part 1 (17/11/27) Lectured by Yun-Nung Chen @ NTU CSIE
- Full permutation
热门文章
- HDU 5961 传递
- Phpstorm配置scss不生成缓存
- [ios]ios语音识别
- Cocos2dx 3.x 屏幕适配
- Lua中元表的学习
- Java JDK5新特性-可变参数
- thinkphp5开发的网站出现”No input file specified”(php版本5.6.27)
- [.NET开发] C#使用doggleReport生成pdf报表的方法
- ArcGIS API for Silverlight/WPF 2.1学习笔记(一)——精简版
- Android之封装好的异步网络请求框架