程序员计算机编程

005-函数与变量作用域

2020-05-07  本文已影响0人  萧百

注:本笔记对应江灏老师在B站的教学视频https://www.bilibili.com/video/BV1zE411V79p

一、函数处理

函数可以避免我们重复复制粘贴,可以增加代码的艺术性。

(一)调用函数,得先定义。

(二)函数定义的两种方式:有参和无参

defsquare(x):#有参数 x为形参

s=x**2

returnx

s=square(2)#调用  2为实参

print(s)

deffunc():#无参

print("hello world")

func()#调用

(三)参数传递

1.括号里面的叫形参,调用时传递进去的是实参

2.注意:如果传入的第一个参数是用关键词传入的,那么后面的每个参数都需要是关键字传入,否则会出现语法错误。

deffunc(x,y,z):

s=x+y+z

returns

print(func(1,2,3))#位置传入

print(func(x=1,z=3,y=2))#关键词传入

print(func(1,y=2,z=3))#正确 print(func(x=1,2,y=3))是错误的

3.可变长参数

deffunc(x,y,*args):#默认把y后面的数字打包成元组,要是是**则打包成字典

s=1+2*x+y*y

foriinargs:

s=s+i

returns

print(func(1,2,3,4,5,6,7))#默认把2后面的数字打包成元组,

4.函数的返回

return后面即为函数运行后返回的值。

(四)函数的嵌套

defmax(x,y):

ifx>y:

returnx

else:

returny

defmax4(a,b,c,d):

res1=max(a,b)

res2=max(res1,c)

res3=max(res2,c)

returnres3

print(max4(4,5,6,2))

(五)函数递归

直接调用函数本身

defdel1(group):

delgroup[-1]

iflen(group)>0:

del1(group)

else:

print("已经成功清除,检验。现在长度为",len(group))

list1=[1,2,3,4,4,5,5]

del1(list1)

二、变量作用域

全局变量

定义在函数外的变量,可以在整个程序范围内被访问

局部变量

定义在函数内的变量,只可以在其被声明的函数内部访问

total=0

defsum(a,b):

#在函数内引用全局变量

#global total即可

total=a+b

print("函数内是局部变量: ",total)

returntotal

sum(10,20)

print("函数外是全局变量",total)

三、python内置函数

len(),abs()等,自己需要的时候查。

上一篇下一篇

猜你喜欢

热点阅读