今天加班了,到家之后都快8点了,emm衣服又没洗上
把昨天晚上写的存稿发到百家号上去就开始敲
参数这块今天是完工了,预计函数明天也可以搞定了
不早了,睡觉(困困困)
收集参数
把没有位置,不能和定义时的参数,放入一个特定的数据结构中
语法
def func(*args):
func_body
按照list使用方式访问args得到传入的参数
调用:
func(p1, p2, p3, …)
参数名args不是必须这么写,但是推荐直接用args,约定俗称
参数名args前需要由星号写
收集参数可以和其他参数并存
In [2]:
表格
1
收集参数代码
2
函数模拟一个人自我介绍,但具体内容不清楚
3
把args看成一个list(表格)
4
def stu (*args):
5
print(“hello 大家好, 我的自我介绍,简单说两句:”)
6
print(type(args)) # type函数是用来检测变量的类型
7
for item in args:
8
print(item)
9
10
stu(“lijiapeng”, 18, “吉林长春”, “xinyu”, “单身”)
11
12
stu("BOSS J ")
hello 大家好, 我的自我介绍,简单说两句:
<class ‘tuple’>
lijiapeng
18
吉林长春
xinyu
单身
hello 大家好, 我的自我介绍,简单说两句:
<class ‘tuple’>
BOSS J
In [4]:
1
收集参数案例
2
说明收集参数可以不带任何实参调用,此时收集参数为空tuple
3
4
stu()
hello 大家好, 我的自我介绍,简单说两句:
<class ‘tuple’>
收集参数之关键字参数
把关键字参数按字典格式存入收集参数
语法:
def func( **kwargs):
func_body
调用:
func(p1=a1, p2=a2, p3=a3, …)
kwargs一般约定俗称
调用的时候,把多余关键字参数放入kwargs
访问kwargs需要按字典格式访问
In [5]:
BOSS J
1
收集参数案例
2
自我介绍
3
若使用关键字参数,会出现问题
4
def stu( kwargs):
5
# 在函数体内对于kwargs的使用不带星号
6
print(“hello 大家好,我先自我介绍一下:”)
7
print(type(kwargs))
8
#对字典的访问,Python2和Python3有区别
9
for k,v in kwargs.items():
10
print(k, "*", v)
11
12
stu(name=“lijipeng”, age=19, addr=“吉林长春”, lover=“馨予”)
13
14
print("*" * 50)
15
16
stu(name="BOSS J ")
hello 大家好,我先自我介绍一下:
<class ‘dict’>
name *** lijipeng
age *** 19
addr *** 吉林长春
lover *** 馨予
hello 大家好,我先自我介绍一下:
<class ‘dict’>
name *** BOSS J