Python基础语法学习--函数+案例--定义一个函数,实现两个数的四则运算
2018-01-10 20:15
1281 查看
1.函数概述
在开发程序时,需要某块代码多次,为了提高编写效率以及代码块的重用性,所以把具有相同独立功能的代码块组织为一个小模块,并且给这个功能一个名称,这就是函数。2.定义函数
语法def 函数名([参数列表]): # 参数列表可选项
函数体
3.调用函数
Python内置了很多函数,内置函数可以直接调用。调用一个函数需要知道函数的名称和函数的参数。语法:函数名([参数列表])
定义变量指向函数,通过变量可以调用所指向的函数
代码
a = len # 变量a指向len函数 students = ['jack',18,'男','上海'] print(len(students)) print(a(students)) # 可以通过a调用到len函数
运行结果
4.函数参数
4.1)形参和实参
# 定义函数 def PName(userName): #userName就是形参 print("hello"+userName) # 调用函数 PName('小明') #小明就是实参
4.2)参数传递-可变对象与不可变对象的传递
不可变类型代码
# 定义函数 def getNum(a): a = 10 print("函数内变量a的值为:",a) # 调用函数 a = 8 getNum(a) print("函数外变量a的值为:",a)
运行结果
可变类型代码
students = ['amy','tom','john'] def UpdStudent(student): student[2] = '小明' print(student) UpdStudent(students) print("修改后的列表为:",students)
运行结果
4.3)实参位置
函数定义中允许拥有多个参数,因此函数在调用的时候,也可能包含多个实参,向函数传递参数的方式有很多,通过实参和形参的顺序对应,这就是位置实参。只有位置一直,才能被正确匹配。位置实参是最简单也是最常用的关联方式4.4)关键字参数
关键字实参是传递给函数的名称-值对。直接在实参中将名称和值关联起来,因此向函数传递实参时不会混淆代码
def animal(pet1,pet2): print(pet1+"汪汪叫,"+pet2+"喵喵叫") animal('小狗','小猫') # 位置实参 animal('小猫','小狗') animal(pet2='小猫',pet1='小狗') # 关键字实参
运行结果
4.5)参数默认值
函数定义的时候,设置的参数是形参。那么也可以给每个形参制定一个默认值。当函数调用时,如果没有参数传入,就是用参数的默认值。如果调用的时候传入了实参,那么程序就使用传入的实参。即实参的优先级比形参的优先级高
代码
def animal(pet1,pet2='小猫'): print(pet1+"汪汪叫,"+pet2+"喵喵叫") animal(pet1='小狗') animal(pet2='邻居家的小猫',pet1='小狗')
运行结果
5.函数返回值
5.1)什么是返回值
函数并非总是将结果直接输出,相反,函数的调用者需要函数提供一些通过函数处理之后的一个或一组数据,只有调用者拥有了这个数据,才能够做一些其他的操作。那么这个时候,就需要函数返回给调用者数据,这个被称之为返回值,想要在函数中把结果返回给调用者,需要在函数中使用return5.2)return语句
return语句用于退出函数,选择性的向调用者返回一个表达式。直接return的语句返回None代码
def sum(num1,num2): return num1+num2 total = sum(10,20) print(total)
运行结果
6.思考题
要求:定义一个函数,实现两个数的四则运算,要注意有3个参数,分别是运算符和两个用于计算的数字两个数字和运算符需要接收用户输入的值
代码
# 思考题:定义一个函数,实现两个数的四则运算 # 三个参数:运算符,数字1,数字2 def cal(flg,num1,num2): if flg == '+': return num1+num2 elif flg == '-': return num1-num2 elif flg == '*': return num1*num2 elif flg == '/': return num1/num2 else: return '您输入的运算符不合法' f = 'N' while f == 'N': num1 = input("请输入要进行计算的第一个数字:") num2 = input("请输入要进行计算的第二个数字:") flg = input("请输入运算符:") result = cal(flg,int(num1),int(num2)) print(result) f = input("是否退出程序(Y/N)") else: print("感谢使用程序!下次再见")
运行结果
相关文章推荐
- Python基础学习数值运算之内建函数
- 定义一个特化的模板类并实现四则运算的重载的例子
- Python 2.7 学习笔记 基本语法和函数定义
- Python基础语法学习----列表的访问,操作以及列表函数
- 函数名function是一个数据类型,可以赋值 分类: python基础学习 2013-09-12 11:01 366人阅读 评论(0) 收藏
- python学习笔记——基础篇(3):函数的定义
- Python新手学习基础之函数-概念与定义
- [C++学习笔记14]动态创建对象(定义静态方法实现在map查找具体类名对应的创建函数,并返回函数指针,map真是一个万能类)good
- 实现一个Add函数,让两个数相加,但是不能使用+、-、*、/等四则运算符。ps:也不能用++、--等等
- Python实现一元二次方程的定义是:ax2 + bx + c = 0 请编写一个函数,返回一元二次方程的解。
- Python实现一元二次方程的定义是:ax2 + bx + c = 0 请编写一个函数,返回一元二次方程的解。
- C#--第四周实验--任务3--定义一个人员类Cperson,在此基础上派生出学生类CStudent和教师类CTeacher,实现输入输出功能的成员函数。
- 学习笔记之Python 切片:利用切片操作,实现一个trim()函数,去除字符串首尾的空格
- Linux-C基础知识学习:C语言作业-将5个学生成绩保存在一个数组中,单独实现一个计算平均成绩的average函数, 在main函数中获取该函数返回的平均值,并打印。
- Python基础语法(2)——字典、函数定义使用、控制流(if&for&while)
- 实现一个add()函数-两数相加(不能使用四则运算以及++--)
- python基础学习——利用Flask实现一个简单博客
- 实现一个Add函数,让两个数相加,但是不能使用+、-、*、/等四则运算符。
- 剑指offer 47----实现一个Add函数,让两个数相加,但是不能使用+、-、*、/等四则运算符。ps:也不能用++、--
- python 基础——实现一个带缓存功能的函数