sdu项目实训1-1 (知识储备)python中函数的使用
2021/6/30 22:24:18
本文主要是介绍sdu项目实训1-1 (知识储备)python中函数的使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
我分配到的是后端的工作,需要用到DRF Django框架,是基于python的,所以先学一下python并做个简单的记录python中函数的使用
- 前言
- 一、函数的创建和调用
- 1.什么是函数
- 2.为什么需要函数
- 3.函数的创建
- 4.使用示例
- 二、函数的参数传递
- 1.位置实参
- 2.关键字实参
- 三、函数的返回值
- 四、函数的参数定义
- 1.函数定义默认值参数
- 2.个数可变的位置参数
- 3.个数可变的关键字形参
- 五、变量的作用域
- 1.局部变量
- 2.全局变量
- 六、递归函数
- 1.什么是递归函数
- 2.递归的组成部分
- 3.递归的调用过程
- 4.递归的优缺点
- 5.递归实例
- 总结
前言
水晶球不调用不动提示:以下是本篇文章正文内容,下面案例可供参考
一、函数的创建和调用
1.什么是函数
函数就是执行特定任务和完成特定功能的一段代码
2.为什么需要函数
复用代码
隐藏实现细节
提高可维护性
提高可读性便于调试
3.函数的创建
def 函数名([输入参数]) 函数体 [return xxx]
4.使用示例
#定义两数相加的函数 def add(a,b): #形参 sum=a+b return sum #调用函数 a=12 b=20 result=add(a,b) #实参 print(result)
二、函数的参数传递
1.位置实参
根据形参对应的位置传递参数
result=add(10,20) print(result)
2.关键字实参
根据形参名称进行实参传递
result=add(b=10,a=20) print(result)在函数调用过程中,进行参数的传递 如果是不可变对象,在函数体的修改不会影响实参的值 如果是可变对象,在函数体的修改会影响实参的值
三、函数的返回值
函数返回多个值时,结果为元组
def fun(num): odd=[] #存奇数 even=[] #存偶数 for i in num: if i%2: odd.append(i) else: even.append(i) return odd,even lst0=[12,45,25,86,25,43] print(fun(lst0))函数的返回值
(1)如果函数没有返回值,return可以省略不写
(2)函数的返回值如果是1个,直接返回类型
(3)函数的返回值如果是多个,返回的结果为元组
函数在定义时是否需要返回值视情况而定
四、函数的参数定义
1.函数定义默认值参数
函数定义时,给形参设置默认值,只有与默认值不符的时候才需要传递实参
def func(a,b=20): print(a,b) func(123) func(12,23)
2.个数可变的位置参数
定义函数时,无法事先确定传递的位置实参的个数时,使用可变的位置参数
使用*定义个数可变的位置形参
结果为一个元组
def fun1(*args): print(args) fun1(10) fun1(10,20,30)
3.个数可变的关键字形参
定义函数时,无法事先确定传递的关键字实参的个数时,使用可变的关键字形参
使用**定义个数可变的关键字形参
结果为一个字典
def fun2(**args): print(args) fun2(a=10) fun2(a=10,b=20,c=30)个数可变的位置参数和关键字形参,都只能是1个
在一个函数的定义过程中,既有可变的位置参数又有可变的关键字形参,要求位置形参在关键字形参之前
五、变量的作用域
程序代码能访问该变量的区域
1.局部变量
在函数内定义并使用的变量,只有在函数内部有效,局部变量使用global声明后会变为全局变量
def func1(a,b): c=a+b #a,b,c均为局部变量 print(c) #print(c) a,c超出了作用域 #print(a)
def func3(): global age #局部变量转为全局变量 age=20 print(age) func3() print(age)
2.全局变量
函数体外定义的变量,可作用于函数内外
name='张三' #name是全局变量 print(name) def func2(): print(name) func2()
六、递归函数
1.什么是递归函数
如果在一个函数的函数体内调用了该函数本身,这个函数就称为递归函数
2.递归的组成部分
递归调用与递归终止条件
3.递归的调用过程
每递归调用一次函数,都会在栈内存分配一个栈帧
每执行完一次函数,都会释放相应的空间
4.递归的优缺点
缺点:占用内存多,效率低下
优点:思路和代码简单
5.递归实例
#递归计算n的阶乘 def fac(n): if n==1: return 1 else: return n*fac(n-1) print(fac(6))
#递归计算斐波那契数列 def fib(n): if n==1: return 1 elif n==2: return 1 else: return fib(n-1)+fib(n-2) print(fib(6))
总结
这里对文章进行总结:
这两天一直在学习python基础,挑选重点内容简单做了记录
这篇关于sdu项目实训1-1 (知识储备)python中函数的使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-23使用python部署一个usdt合约,部署自己的usdt稳定币
- 2024-12-20Python编程入门指南
- 2024-12-20Python编程基础与进阶
- 2024-12-19Python基础编程教程
- 2024-12-19python 文件的后缀名是什么 怎么运行一个python文件?-icode9专业技术文章分享
- 2024-12-19使用python 把docx转为pdf文件有哪些方法?-icode9专业技术文章分享
- 2024-12-19python怎么更换换pip的源镜像?-icode9专业技术文章分享
- 2024-12-19Python资料:新手入门的全面指南
- 2024-12-19Python股票自动化交易实战入门教程
- 2024-12-19Python股票自动化交易入门教程