Python 函数的使用

xiaoxiao2021-02-28  13

(一)函数

1.函数的定义

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。可以调用系统内置的函数,也可以自定义函数。

2.定义一个函数的规则

函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号起始,并且缩进。return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

3.定义函数的基本语法

def functionname( parameter1,parameter2..parametern ): #填写代码区 return [expression]

4.函数的作用

1.使用函数编程使得程序的编写、阅读、测试和修复变得简单容易。


(二)实例演示

1.函数定义实例

#1.定义一个无参无返回值构造函数 def funcation01(): print('一个无参无返回值构造函数') funcation01() #2.定义一个无参有返回值的函数 def funcation02(): return 'Hello World' #3.定义一个有参数,有返回值的函数 def add(x,y): sum=x+y return sum #4.定义一个含有多个返回值的函数 def returnValues(name,age): return name,age #5.定义一个关键字参数函数 def keywordFuncation(name,age): print('姓名:'+name,'年龄:'+str(age)) #6.定义一个默认值函数 def default_value(name,age,country='中国'): print('姓名:' + name, '年龄:' + str(age),'国籍:'+country)

2.定义一个含有多个返回值的函数(返回值可以是任意类型)

注:返回对个值,我们使用对个变量来保存它的值 def returnValues(name,age): return name,age name,age=returnValues('Kaina',22) print('姓名:'+name,'年龄:'+str(age)) 结果演示:姓名:Kaina 年龄:22

3.定义一个关键字参数函数

定义一个带有多个相同数据类型的参数时,如果我们把参数打乱顺序填写时,打印的数据不符合预期。但是使用关键字参数时,我们无需考虑函数调用过程中实参的顺序。

def keywordFuncation(name,country): print('姓名:'+name,'国籍:'+str(country)) print("向函数传递实参混淆时的结果:") keywordFuncation('中国','Kaina') print("使用关键字实参无须考虑函数实参的顺序:") keywordFuncation(country='中国',name='Kaina') 结果演示: -------------------------------------- 向函数传递实参混淆时的结果: 姓名:中国 国籍:Kaina -------------------------------------- 使用关键字实参无须考虑函数实参的顺序: 姓名:Kaina 国籍:中国 --------------------------------------

4.定义一个默认值函数(可以定义多个默认值)

注:定义一个默认值函数,当调用此函数时默认值参数无须填写。如果填写那就是修改默认值参数。 def default_value(name,age,country='中国'): print('姓名:' + name, '年龄:' + str(age),'国籍:'+country) default_value('Kaina',22) #修改默认值参数 default_value('Kaina',22,country='China') 结果演示: 姓名:Kaina 年龄:22 国籍:中国 姓名:Kaina 年龄:22 国籍:China

5.定义一个可变长参数函数

#可变长参数,参数类型为元组 def test01(*param,name,age ): print(param) print(type(param)) print('姓名-->'+name) print('年龄'+str(age)) a=(1,2,3) #test01(*a,name='Kaina',age=22) test01(a,name='Kaina',age=22) 结果演示: ---------------------- (1, 2, 3) <class 'tuple'> ---------------------- 姓名-->Kaina 年龄22 ----------------------

6.定义关键字可变长参数函数

#关键字可变长参数函数 def test01(**param): print(type(param)) for key,value in param.items(): print('键-->'+key,'值-->'+str(value)) test01(name='Kaina',age=22,country='China') 结果演示: <class 'dict'> 键-->name 值-->Kaina 键-->age 值-->22 键-->country 值-->China

(三)变量的作用域

1.全局变量:作用于整个模块 2.局部变量:例如函数内部的变量,只在其类部有效。


1.全局变量

#全局变量的作用域 num=88 def add(x,y): #局部变量 num=x+y print("x+y="+str(num)) add(1,2) print("此变量为函数外部的变量:"+str(num)) 结果演示: x+y=3 此变量为函数外部的变量:88

2.局部变量

#局部变量的作用域 def add(x,y): #局部变量 num=x+y print("x+y="+str(num)) add(1,2) print("局部变量只作用于函数内部,函数外部无法访问!") 结果演示: x+y=3 局部变量只作用于函数内部,函数外部无法访问!

3.作用域链

注:函数内部的局部变量,可以被嵌套函数访问! name='张三' def test(): name='李四' def funcation(): #name='王五' print('函数内部的局部变量,可以被嵌套函数访问='+name) funcation() test() 结果演示:函数内部的局部变量,可以被嵌套函数访问=李四

4.函数中globel关键字的使用

1.想要函数内部的变量能够被函数外部访问,就必须使用globel关键字修饰变量。 2.在函数内部先定义globel变量,后使用此变量。 def test(): #1.定义globel变量 global name #2.给变量赋值 name='Kaina' #3.调用此函数 test() #4.访问函数内部变量 print("访问到函数name属性的值为:"+name) 结果演示:访问到函数name属性的值为:Kaina
转载请注明原文地址: https://www.6miu.com/read-1650088.html

最新回复(0)