python 9 days
函数的初始
1,重复代码较多
2,可读性差
l1 = [1, 2, 3, 1, 6, 9, 10]
count = 0
for i in l1:
count += 1
print(count)
print(len(l1))
def my_len():
pass 函数体
def关键字 空格 函数名(与变量设置相同): 英文的冒号函数体
执行函数 :函数名+()
函数是以功能为导向的,
def login():
pass
def register():
pass
def my_len():
l1 = [1, 2, 3, 1, 6, 9, 10]
count = 0
for i in l1:
count +=1
print(count)
my_len()
函数的返回值
return:1,函数中遇到return 结束函数,下面代码不执行
def login(): print(111) print(222) return print(333)
login()
2,将函数里面的值返回给函数的执行者(调用者)
def login():
print(111)
print(222)
return 666
print(login())
def login():
a = 2
b = 3
return 1, 'alex', [1, 2], {'name': '老男孩'}
ret = login()
print(ret)
什么是None?
所有的空集合,空列表,空字典.... --->None
第一种情况:
只有return,返回None
def login(): a = 2 b = 3 print(111) print(a,b) return
print(login())
第二种情况: (不常用)
return None
def login():
a = 2
b = 3
print(111)
print(a,b)
return
print(login()) 跟上面一样,同上
第三种情况:
return单个值(返回的值与单个值的类型相同)
def login(): a = 2 b = 3 print(111) print(a,b) return a
print(login())
def login():
a = 2
b = 3
return [1, 2]
ret = login()
a,b = ret
print(a,b)
第四种情况:
return 多个值 以元组的形式返回给函数的调用者
def login(): a = 2 b = 3 return 1, "alex",[1,2],{"name":"老男孩"}
ret = login()
print(ret)
def my_len():
l1 = [1, 2, 3, 1, 6, 9, 10]
count = 0
for i in l1:
count +=1
return count
print(my_len())
函数的参数
实参角度:
# 实参角度
位置参数
一一对应,实参形参数量相等
关键字参数
一一对应,实参形参数量相等,实参顺序可变
混合参数 (位置参数,关键字参数)
关键字参数必须在位置参数后面
# 形参角度
位置参数
一一对应,实参形参数量相等
默认参数
默认参数必须放在形参的位置参数后面
默认参数不传值则为默认值,传值则覆盖默认值。
动态参数
三种
形参角度:
三种