前言
上篇文章咱们主要讲了Python的容器,容器主要有列表,元组,集合和字典,接下来讲讲函数,函数也是Python中也是很重要的。
一、函数的定义
函数就是具有一定功能的代码块,以下就是最简单的函数;
def print_info():
print("测试")
定义函数后还需要通过"函数名()"调用该函数,函数才真正发挥作用;
def print_info():
print("测试")
print_info()
调用print_info函数后控制台输出“测试”二字
函数在编程中是非常重要的,函数可以将部分代码划分为多个单独的小功能,函数只需要定义一次就能一直调用,减少了代码的冗余,同时还让代码看上去更加整洁美观。
二、函数分类
Python的函数主要有两种:
- Python内置函数或第三方包中的函数
- 自定义函数,根据实际需求自己编写的函数,更加灵活
三、自定义函数
(一)定义函数
函数的定义格式为:
def 函数名(形参):
函数体
自定义函数主要包括函数名、函数体和形参;
- 函数名,按照命名规则给函数起名字,在python中建议使用"小写加下划线"的方式给函数命名,如python_test
- 函数体,就是整个函数真正执行的代码,注意在函数体前面缩进4个空格
- 形参,用来存储调用函数时传递的参数值,该参数根据实际情况而定
(二)调用函数
如刚开始所说,函数在定义好后需要调用才会真正发挥作用,调用格式为:
函数名(实参)
说明:
- 函数名,想要调用的函数的名字
- 实参,调用函数时传递给函数的数据,根据实际情况而定,函数需要数据时才传值
注意:调用函数前必须先定义好函数,否则函数调用时会出现异常
(三)pass关键字
定义函数时,如果不确定函数需要实现什么功能,可以先用pass关键字占位置,使用pass不会出现语法错误,也能清楚了解到该函数还未实现任何功能。
def 函数名():
pass
四、内置函数
内置函数就是python自带的函数,直接调用即可,无需再次定义,python的内置函数非常丰富,这也是python的特点之一,以下罗列一些python常用的内置函数;
import time # 时间模块
import random # 随机数模块
a = [1, 2, 3, 4]
# len:获取列表的元素个数,结果为4
len(a)
# max 获取最大值,结果为4
max(a)
# del 删除元素,删除元素2
del a[1]
# time 时间函数获取当前时间戳
time.time()
# random 获取随机数
# 获取1到3之间的整数
random.randint(1, 3)
python的内置函数有很多,根据实际情况加以使用。
五、函数参数
python中调用函数时,如果需要将数据传递给函数,可以通过传参的方式把数据传递给被调用的函数,想要实现传递数据的功能,需要注意两点:
- 定义函数时,在函数名后的"()"定义变量,这个变量称为形参,形参的个数根据实际传递的参数个数而定,定义形参的目的就是存储调用函数时传递过来的数据。
- 调用函数时,在函数名后的"()"写下需要传递的数据,可以是变量,常量或者表达式,这些数据称为实参,实参就是实际传递的数据。
示例:
def add(a, b):
print(a + b)
a = 10
b = 20
add(a, b) # 实现两个数相加的功能,控制台会输出30
六、函数返回值
调用函数后,如果需要获取函数的执行结果,可以在函数内部使用return语句,将数据返回给调用者,想要获取函数的返回结果,需要注意以下几点:
- 定义函数时,需要使用return语句将结果返回,return一方面可以将数据返回给调用者,另一方面可以结束函数的执行
- 调用函数时,一般需要使用变量存储函数的返回值
- 一个函数内部,同一时间只能有一个return语句被执行
示例:
def add(a, b):
return a + b # 返回两个变量相加的结果值
a = 10
b = 20
result = add(a, b)
print(result) # 控制台输出30,说明调用add函数后的返回值赋给了result变量
七、函数间相互隔离
函数是一个具有独立功能的代码块,开发时将具有独立功能的代码块做成函数其实就是封装概念,这种方式可以使代码更加简介,封装的最大特点就是"高内聚低耦合",将相关功能的代码全部封装在函数中,同时减少函数间的依赖。
在开发过程中,函数间可能存在以下三种关系:
- 多个函数间共用同一个变量
- 一个函数的返回值被用作另一个函数的实参
- 一个函数内部调用另一个函数
八、局部变量和全局变量
(一)局部变量
在函数内定义的变量,包括形参也是局部变量,只能在定义的函数内部使用,局部变量一般就是为了实现函数功能而定义的变量,只能在当前函数内使用,无法在其他函数中使用;
示例:
def add(a):
b = 20
print("add函数中的局部变量有%s,%s" % (a, b))
add(10) # 调用add函数,在控制台输出"add函数中的局部变量有10,20"
局部变量的特点:
- 在函数内部定义的变量
- 形参也属于局部变量
- 局部变量的作用范围只作用于函数内部
- 每次调用函数时,局部变量的值都是重新获取
- 不同函数内部可以定义相同名称的局部变量
(二)全局变量
一种在函数外部定义的变量就是全局变量,全局变量可以在所有函数中使用,在函数内部直接使用全局变量即可,无需再次定义
示例:
c = 100 # 定义全局变量
def add():
print(c) # 控制台会输出100
add()
注意:如果需要修改全局变量的值,需要先使用global声明全局变量,才能修改全局变量的值
示例:
c = 100 # 定义全局变量
d = 200
def add():
global c # 使用global声明全局变量
c += 1 # 修改全局变量的值
d = 300
add()
print(c, d)
代码执行结果为:
由此得知,若在函数内部需要修改全局变量的值,需要先使用global声明全局变量再进行修改,否则全局变量的值无法修改成功。
总结
本篇文章主要讲述了函数的基础知识,函数的定义、自定义函数、局部变量和全局变量等,这些都是相对基础的知识,接下来会进一步接触到较为进阶的函数知识点,让我们拭目以待吧!!
标签:局部变量,函数,Python,编程,add,print,全局变量,定义 From: https://blog.csdn.net/2401_86688088/article/details/141403727