python基础(函数)
来源:互联网 发布:ccfamily是什么软件 编辑:程序博客网 时间:2024/06/05 15:28
一、函数的概念
函数是一块具有独立功能的代码块,通过输入的参数值,返回需要的结果,重复使用,那么往往就需要使用函数,使用函数把这块代码封装成一个整体,函数遇到return即可结束,也就是说函数中只有第一个return语句有效并跳出函数,后面的return语句是无效的。
二、函数的定义
使用关键字def定义,函数在使用前必须定义,函数的类型即返回值类型。python函数定义的格式如下:
def 函数名(参数1,参数2...): ...return 表达式
函数的参数放在一对圆括号中,参数的个数可以有一个或者多个,参数之间用逗号隔开,这种参数叫做形式参数。
三、函数的参数
python通过名称绑定机制,把实际参数的值和形式参数的名称绑在一起。即把形式参数传递到函数所在的局部命名空间中,形式参数和实际参数指向内存空间中同一存储空间。
函数的参数支持默认值。当某个参数没有传递实际的值时,函数将使用默认参数计算。
四、函数的文档说明
在函数开头一般用双引号包含函数的功能说明、提示等文档信息
#定义一个输出名片的函数def myslef(dict): "这个函数是用来输入名片信息的" for key,value in dict.items(): print(key,value)dict = {"姓名":"李佳琪","性别":"女","身高":"160"}myslef(dict)
五、函数的返回值
返回值指的是一个函数执行完成以后,把一个结果给调用者。
函数的返回使用return语句,return后面可以是变量或表达式。
函数没有return语句时,返回值为None,None是python中的对象,不属于数字也不属于字符串。当函数中的return语句不带任何参数时,返回的结果也是None。
def func(): returnprint(func())
如果需要返回多个值,可以把这些值打包到元组中,在调用时,对返回的元组解包即可。
def func(x,y,z): l = [x,y,z] l.reverse() numbers = tuple(l)#数据打包 return numbersx,y,z = func(0,1,2)#数据解包print(x,y,z)
def sum(num1,num2): sum = num1+num2 return sumnum1 = int(input("输入第一个值:"))num2 = int(input("输入第二个值:"))sum = sum(num1,num2)print("num1+num2=%d"%sum)
注意:
if-else语句中的返回值(两种方法):
方法一:
if(1>0): return 100else: return 200
方法二
if(1>0): num = 100else: num = 200return num
方法二较方法一好
六、函数的类型
1.无参数,无返回值
此类函数,不能接收参数,也没有返回值,一般情况下,打印提示等类似的功能,使用这类函数。
2.无参数,有返回值
此类函数,不能接收参数,但是可以返回某个数据,一般情况下,像采集数据,用此类函数。
3.有参数,无返回值
此类函数,能接收参数,但不可以返回数据,一般情况下,对某些变量设置数据而不需要结果时,用此类函数。
4.有参数,有返回值
此类函数,不仅能接收参数,还可以返回某个数据,一般情况下,像数据处理并需要结果的应用,用此类函数。
七、练习
练习1(定义函数完成2个数相加):
#定义一个函数,使得从键盘获取的两个数字相加def sum(num1,num2): sum = num1+num2 print("num1+num2=%d"%sum)num1 = int(input("输入第一个值:"))num2 = int(input("输入第二个值:"))sum(num1,num2)
练习2(带有函数的学生管理系统):
#学生信息管理系统#打印输出界面信息def print_info(): print("=" * 30) print("1:添加学生信息") print("2:删除学生信息") print("3:修改学生信息") print("4:查询学生信息") print("0:退出系统") print("=" * 30)def add_info(): name = input("请输入学生的名字:") sex = input("请输入学生的性别:") high = input("请输入学生的身高:") student_info = {} student_info["name"] = name student_info["sex"] = sex student_info["high"] = high names.append(student_info) print("添加成功!")def del_info(): name = input("请输入要删除的学生姓名:") for name_check in names: if (name_check["name"] == name): del name_check break print("删除成功!")def update_info(): name = input("请输入要修改的学生姓名:") name_new = input("请输入修改后的姓名:") sex_new = input("请输入修改后的性别:") high_new = input("请输入修改后的身高:") for name_check in names: if (name_check["name"] == name): break name_check["name"] = name_new name_check["sex"] = sex_new name_check["high"] = high_new print("修改成功!")def check_info(): name = input("请输入要查询的名字:") for name_check in names: if (name_check["name"] == name): flag = 1 break if (flag == 1): print("查找成功!") print(" 姓名 性别 身高") print(" %s %s %s" % (name_check["name"], name_check["sex"], name_check["high"]))names = []#系统提示while(True): print_info()#获取操作数字 op = input("请输入你要进行的操作:")#根据用户选择进行功能调用 flag = 0 if(op == "1"): add_info() elif(op == "2"): del_info() elif(op == "3"): update_info() elif(op == "4"): check_info() elif(op == "0"): exit(0)
练习3(带有函数嵌套的学生管理系统):
#学生信息管理系统names = []#打印输出界面信息def print_info(): print("=" * 30) print("1:添加学生信息") print("2:删除学生信息") print("3:修改学生信息") print("4:查询学生信息") print("0:退出系统") print("=" * 30)def add_info(): name = input("请输入学生的名字:") sex = input("请输入学生的性别:") high = input("请输入学生的身高:") student_info = {} student_info["name"] = name student_info["sex"] = sex student_info["high"] = high names.append(student_info) print("添加成功!")def del_info(): name = input("请输入要删除的学生姓名:") for name_check in names: if (name_check["name"] == name): del name_check break print("删除成功!")def update_info(): name = input("请输入要修改的学生姓名:") name_new = input("请输入修改后的姓名:") sex_new = input("请输入修改后的性别:") high_new = input("请输入修改后的身高:") for name_check in names: if (name_check["name"] == name): break name_check["name"] = name_new name_check["sex"] = sex_new name_check["high"] = high_new print("修改成功!")def check_info(): name = input("请输入要查询的名字:") for name_check in names: if (name_check["name"] == name): flag = 1 break if (flag == 1): print("查找成功!") print(" 姓名 性别 身高") print(" %s %s %s" % (name_check["name"], name_check["sex"], name_check["high"]))def main():#系统提示 while(True): print_info()#获取操作数字 op = input("请输入你要进行的操作:")#根据用户选择进行功能调用 flag = 0 if(op == "1"): add_info() elif(op == "2"): del_info() elif(op == "3"): update_info() elif(op == "4"): check_info() elif(op == "0"): exit(0)main()
- python基础(函数)
- Python基础(5)-函数
- Python基础(四)- 函数
- Python基础(五)- 函数
- Python基础(六)- 函数
- Python基础:函数(一)
- Python基础II---函数基础
- python基础III(dict、set、函数)
- Python基础学习--第六篇(函数)
- Python基础学习之函数(1)
- Python基础入门(十八)-函数
- python程序设计基础--函数(上)
- python程序设计基础--函数(下)
- python基础 第二天(函数)
- Python入门基础之函数(三)
- 【Python自学】08. 函数基础(上)
- Python运维基础(2)函数
- python基础(04)——函数
- 1065. 单身狗(25)
- HDU
- 三向切分的快速排序
- 1066. 图像过滤(15)
- MySQL-MHA高可用+Atlas读写分离配置
- python基础(函数)
- 程序员的自我修养(2)----静态链接
- 链栈的简单操作实现
- 常用 Git 命令清单
- java中的关键字
- 别把世界和好男人,都让给绿茶婊
- C++连接池
- Appleman and Toastman
- 二叉树的层次遍历