python-函数
def 函数名称(函数的形参):
函数表达式
形式参数:定义函数的时候括号里面的参数叫形式参数
实际参数;调用函数的时候,给形式参数实际赋予的值
比如给a赋予值4,b赋予值9,相加后用debugger运行

默认参数
在定义函数的时候,可以给形式参数指定具体的值
def add(a,b=9):
print(a+b)
add(a=4,b=9)
add(2)

举例
列1:
def login(username:"yvonne",password:"admin"):
if username=="yvonne" and password=="admin":
print("success")
else:
print("no")
login(username="yvonne",password="admin")
![]()
列2:
def login(username="yvonne",password="admin"):
if username=="yvonne" and password=="admin":
return True
else:
return False
def profile():
# if login()==True:
if login():
print("查看个人主页")
else:
print("请登录")
profile()

列3:
def getuserinfo():
username=input("username\n")
password=input("admin\n")
return username,password
def get():
username,password=getuserinfo()
if username=="yvonne" and password=="password":
print("suesss")
else:
print("cuowu")
get()

函数返回值:
1、使用的关键子是return
2、在一个函数里面如果有return,那么函数的返回值就是return后面的内容
3、如果一个还是没有return关键字,那么函数的返回值是None
4、一个函数可以有多个返回值
返回值的价值?
1、在单个函数的角度而言,函数写不写return其实都没有太大的价值
2、通过返回值可以把函数与函数之间能够建立关联关系
全局变量与局部变量
全局变量:在一个Python文件中定义的变量叫全局变量

局部变量:在函数内部定义的变量叫局部变量

全局变量与局部变量的优先级:
1、在Python文件中调用变量,全局变量的优先级是高于局部变量
2、在函数内部,局部变量的优先级是高于全局变量的
eval 执行字符串的表达式后面跟字符串
str="2+4"
print(eval(str))

a=lambda a,b:a+b
print(a(3,9))

实战:过滤 10以内大于2的数字
方法一:
for a in range(10):
if a>2:
print(a)

方法二:
list=[x for x in range(10) if x>2]
print(list)

方法3:
def func():
lists=[]
for a in range(10):
if a>2:
lists.append(a)
return lists
obj=list(filter(lambda a:a>2,[x for x in range(10)]))
print(obj)

函数的调用
1、函数定义后,必须要进行调用,不调用函数不会被执行
2、函数调用的方式:
A、直接调用函数
B、在主函数中调用函数(主函数可以理解为程序
map:针对所有对象做同样操作

内部函数
chr() 数字转字母
ord()字母转数字



浙公网安备 33010602011771号