快捷搜索:  汽车  科技

python里的函数和用法大全,python基础之函数的定义及用法

python里的函数和用法大全,python基础之函数的定义及用法1)函数的返回值是由return来决定的,return后面写什么,函数的返回值就是什么语法:return 表达式1)可以由字母、数字及下划线(_)组成,但不能用数字开头,且不能使用python中的关键字。2)函数命名的风格: 单词之间下划线隔开(python中函数命名推荐这种风格), 大驼峰小驼峰写法 ,如:UserName、userName英文单词首字母大写。3.函数的返回值:return

前言

小伙伴们好久不见呀,最近因为工作原因一直没有时间静下来写文章,今天呢笔者给大家来介绍一下python行数的定义和调用,函数的参数、行数的作用域、内置函数。废话就不多说了直接开始吧。

python里的函数和用法大全,python基础之函数的定义及用法(1)

一、函数的定义和调用

1.函数的作用

对特定的一些功能进行封装,提高代码的重用率,进而提升开发的效率,格式:

def 函数名() # 函数体

2.函数名的命名规范

1)可以由字母、数字及下划线(_)组成,但不能用数字开头,且不能使用python中的关键字。

2)函数命名的风格: 单词之间下划线隔开(python中函数命名推荐这种风格), 大驼峰小驼峰写法 ,如:UserName、userName英文单词首字母大写。

3.函数的返回值:return

语法:return 表达式

1)函数的返回值是由return来决定的,return后面写什么,函数的返回值就是什么

2)如果函数中没有return,那么函数的返回值默认为 None

3)return 后面没有任何内容,返回值也是None

4)函数要返回多个数据,可以在return后面,每个数据之间用逗号隔开,调用函数之后接收到的是个元组形式的数据

注意:return的作用除了返回结果外,也可以用于结束函数的运行,只要函数中执行到return,就直接返回内容,跳出函数,return后面的代码就不会执行

4.调用函数

函数名(),示例如下:

def func(): print('python666') return "abc" 4444 print("99999999999999999999") # 该行不会被执行 res = func() print(res)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py python666 ('abc' 4444) Process finished with exit code 0二、函数的参数

1.函数形参和实参

定义的参数称为:形参

调用实际传递的为:实参

2.参数传递的两种形式:

位置参数:按位置顺序进行传递

关键字参数:通过关键字指定传给某个参数

# 位置参数(按位置顺序进行传递) def add_num(a b c): # a b是形参,没有真正的值,用于接收实参 return a b - c res1 = add_num(67 12 1) # 此时传入的67,12是实参 print(res1) # 关键字参数(通过关键字指定传给某个参数) res2 = add_num(b=34 a=12 c=11) print(res2) # 参数混用时,位置参数写最前面,关键字参数写在后面,不能重复传 res3 = add_num(30 c=12 b=12) print(res3)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py 78 35 30 Process finished with exit code 0

3.函数定义的三种形参:

  • 必需参数  如:def add_num(a b c) ,a b c三个参数都必须要传
  • 默认参数(缺省参数) 如:def add_num(a b c=99) ,c是默认参数,可以传,可以不传(不传时直接使用c=99)
  • 不定长参数:如:def add_num(a b *args **kwargs) ,其中a和b是必需参数,*args 可以不传,也可以传多个,它接收必需参数、默认参数完之外的位置参数,以元组的形式保存,**kwargs 可以不传,也可以传多个,接收必需参数、默认参数之外的关键字参数,以字典的形式保存

def test(a b c *args **kwargs): print("a的值" a) print("b的值" b) print("c的值" c) print("*args的值" args) print("**kwargs的值" kwargs) va1 = test(11 22 33 4 3 2) va2 = test(11 5 6 7 g=33 k=22 f=12) print(va1 va2)

运行结果(有None是因为函数中没有返回值,调用了两次函数因此打印了两个None):

C:\software\python\python.exe D:/myworkspace/test/test/test.py a的值 11 b的值 22 c的值 33 *args的值 (4 3 2) **kwargs的值 {} a的值 11 b的值 5 c的值 6 *args的值 (7 ) **kwargs的值 {'g': 33 'k': 22 'f': 12} None None Process finished with exit code 0

扩展:不定长参数可以使用*对元组(列表也可以,但一般不用)进行拆包,**可以对字典进行拆包,拆包原理如下:

# 拆包 def func(): return 11 22 33 # 当返回结果有多个值时,会以元组的形式返回 c1 = func() print(c1) # 返回的是一个元组(11 22 33) a b c =func() # 可以通过变量把返回的元组进行拆包,接收对应的值,a接收了11 b接收了22,c接收了33 print(a b c) # 返回对应的元素11 22 33运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py (11 22 33) 11 22 33 Process finished with exit code 0

拆包在自动化测试中有很大的作用,如果不理解,可以动手多敲几遍,以下是拆包示例:

def func(a b c): print('这是' a) print('这是' b) print('这是' c) # 利用*、**分别对元组、字典拆包:只能用在函数调用时使用 # 对元组进行拆包 func(*(1 2 3)) print('-------分割线-------') tu = (4 5 6) func(*tu) print('-------分割线-------') # 对字典进行拆包 注意**kwargs接收的是接收必需参数、默认参数之外的关键字参数 # 因此字典的键要与函数的形参一致 dic = {'a': 88 'b': 90 'c': 91} func(**dic)

运行结果:

C:\software\python\python.exe D:/myworkspace/test/test/test.py 这是 1 这是 2 这是 3 -------分割线------- 这是 4 这是 5 这是 6 -------分割线------- 这是 88 这是 90 这是 91 Process finished with exit code 0三、函数的作用域

1.全局变量

直接定义在py文件(即模块)中的变量,叫全局变量,在该文件中任何地方都可以使用

2.局部变量

在函数内部定义的变量,叫做局部变量,只能在该函数内部使用,函数外部无法使用

3.声明局部变量

关键字:global 在函数内部声明全局变量。

变量的查找过程:由内到外(先找函数自身的,没有再去外面找)。

如果要在外部使用函数内部定义的局部变量,需要声明该变量,简单来说就是告诉程序,这个变量在这个模块内都能使用。

name = "张三" # 定义一个全局变量 def func(): # global a # 如果要声明全局变量,要加上这句 a = 100 # 定义一个局部变量 print(a) print(name) func() # 调用函数 print("------分割线-----") print(name) # 全局变量哪里都能使用 print(a) # 这是一个局部变量,打印a运行会报错说a没有被定义,如果要使用a就要声明a为全局变量 print("------分割线-----") aa = 10 def func(): print(aa) # 变量的查找过程:由内到外(先找自身的,没有再去外面找) func()

运行结果(因为报错了,所以后面的aa没有打印出来,只要声明全局变量就不会报错):

C:\software\python\python.exe D:/myworkspace/test/test/test.py 100 张三 ------分割线----- 张三 Traceback (most recent call last): File "D:/myworkspace/test/test/test.py" line 12 in <module> print(a) # 这是一个局部变量,打印a运行会报错说a没有被定义,如果要使用a就要声明a为全局变量 NameError: name 'a' is not defined Process finished with exit code 1四、python内置函数

内置函数就是python编程语言中预先已经定义的函数,直接调用即可,常用的内置函数如下:

  • len():获取 列表\字符串\元组\字典 中的元素总数量(数据的长度)
  • eval():识别字符串中的python表达式
  • zip(): 聚合打包
  • max():获取数据中元素的最大值
  • min():获取数据中元素的最小值
  • sum():对元素进行求和
总结

今天的文章就到这里了哟,喜欢的小伙伴可以点赞收藏评论加关注哟。

python里的函数和用法大全,python基础之函数的定义及用法(2)

猜您喜欢: