Day_01------函数入门
1创建一个函数
def add(f, b):
d = f + b
return d
2调用函数(参数的传入)
result = add(12, 3)
print(result)
3函数说明文档
def add(f, b):
"""
这里就是说明文档,里面写入函数的作用跟传入参数的类型
:param f: int
:param b: int
:return d: int
"""
d = f + b
return d
4函数的注解(帮助我们理解函数)help()
help(add)
# add(f, b)
# :param f: int
# :param b: int
# :return d: int
Day_02 函数进阶
编译第一个自己的函数
#定义一个函数(去除重复数据)
def quit_repeat(list_a):
#函数的简单介绍
"""
This is a function that deduplicates data.
The types of data you can pass in are list,tuples and string.
:param list_a:
:return:
"""
#功能代码块
list_1 = []
list_2 = []
for i in list_a:
if i not in list_1:
list_1.append(i)
else:
list_2.append(i)
#输出结果
print(f"{list_a}经过去重以后是{list_1},重复的是{list_2}")
#debug测试
a = (1, 1, 2, 2, 3, 4, 3, 4)
a = [1, 1, 2, 2, 3, 4, 3, 4]
a = "listlist"
quit_repeat(a)
全局变量与局部变量
全局变量为一整个代码中该变量的值是固定的,局部变量为某一局部地区的变量,有可能与局部变量不同
未声明全局变量
data = 200
def function_data():
data = 100
print("内部", data)
function_data()
print("外部", data)
#外部 200
#内部 100
申明全局变量
data = 200
def function_data():
global data
data = 100
printf("内部", data)
function_data()
print("外部", data)
#外部 100
#内部 100
参数的传入
位置传参(传入位置不同,结果也不一样)
def add(a, b):
print(f"{a}+{b}={a+b}")
return 0
add(1, 2) #1+2=3
add(2, 1) #2+1=3
关键字传参(利用变量的方法传参,(关键字传参必须写在最后面))
def add(a, b):
print(f"{a}+{b}={a + b}")
return 0
add(a=1, b=2) # 1+2=3
add(a=2, b=1) # 2+1=3
不定长传参(传入的参数个数不确定)
def add(a, b, *args):
print(F"{a}+{b}={a + b}")
return 0
add(1,2) #1+2=3
data = add(1,2,3,34,6)
print(data) #(1, 2, 3, 34, 6)
数据的打包与拆包
打包:将所有数据赋值给一个变量,整体赋值
#列表打包
a = [1, 2, 3, 4, 4]
print(a) # [1, 2, 3, 4, 4]
#函数打包
def function_pack(*args):
return args
data = funcyion_pack(1,2,3,4,4)
print(data) #(1, 2, 3, 4, 4)
拆包:把一个整体中的数据分别赋值给多个变量(有多少数据就要有多少变量)
#列表拆包
a,b,c,d =[1, 2, 3, 4]
print(a) #1
print(b) #2
print(c) #3
print(d) #4
#########################################################
#函数拆包
def function_solve(*args):
return args
a, b, c, d = function_solve(1, 2, 3, 4)
print(a) #1
print(b) #2
print(c) #3
print(d) #4
#拆包应用
massage = [["小明", 20], ["小强", 18], ["晓东", 19]]
for i in massage:
name, age = i[0:]
print(name, age)
# 小明 20
# 小强 18
# 晓东 19