0
点赞
收藏
分享

微信扫一扫

python中的函数(python基础知识第六天)

ZSACH 2022-04-05 阅读 26

目录

一、1.不含参数,不含返回值的函数

        2.含参数,不含返回值的函数

        3.含参数,带返回值的函数

        4.含参数,带多个返回值的函数

二、局部变量和全局变量

1.局部变量

2.全局变量

3.特殊处理(在函数中修改全局变量)


一、1.不含参数,不含返回值的函数

def printOneLine():
    print("-"*10)    
    print("君子和而不同")
    print("-"*10)
printOneLine()

运行结果如下:

----------
君子和而不同
----------

2.含参数,不含返回值的函数

def addNum(a,b):     # 冒号 千万不能忘!!!
    c = a + b
    print(c)

addNum(11,22)        #函数调用

运行结果如下:

33

3.含参数,带返回值的函数

def addNum(a,b):
    return a + b     #通过 return 来返回运算结果


c = addNum(11,22)    #可见,此时的addNum(a,b)代表的是一个数值,而非函数
print(c)

运行结果如下:

33

4.含参数,带多个返回值的函数

def divid(a,b):
    shang = a//b
    yushu = a%b
    return shang,yushu          #多个返回值用 逗号 相隔!!!

sh,yu = divid(5,2)              #当有多个返回值时,应该按这种方法去一一对应,避免后面数据量较大时出现错误
print("商:%d,余数:%d"%(sh,yu))  

 运行结果如下:

商:2,余数:1

二、局部变量和全局变量

在一个函数中定义的变量,只能在本函数中使用(局部变量)

在函数外定义的变量,可以在所有的函数中使用(全局变量)

1.局部变量

def test1():
    a = 100        #可见,修改前和修改后 a 的值不同,因为这里的 a 属于局部变量
    print("修改前:  %d"%a)
    a = 300
    print("修改后:  %d"%a)

#局部变量一般定义在函数里
def test2():
    a=600          #不同的函数可以定义相同的名字,彼此无关
    print(a)

test1()
test2()

运行结果如下:

修改前:  100
修改后:  300
600

2.全局变量

a = 666        #定义的是全局变量

def test1():
    print(a)

def test2():
    print(a)
    
#test1() 和 test2() 函数都调用了全局变量 a = 666

test1()
test2()

运行结果如下:

666
666

当全局变量和局部变量名字相同时 

a = 666

def test1():
    a = 300       #局部变量优先
    print("修改前:  %d"%a)
    a = 500
    print("修改后:  %d"%a)

def test2():
    print(a)       #没有局部变量,就默认使用全局变量

test1()
test2()

运行结果如下:

修改前:  300
修改后:  500
666

3.特殊处理(在函数中修改全局变量)

如果我就是要在函数中修改全局变量呢?

a = 666

def test1():
    global a   #声明全局变量在函数中的标识符
    print("修改前:  %d"%a)
    a = 500
    print("修改后:  %d"%a)

def test2():
    print(a)      #此时的 a 是被 test1() 函数修改后的值

test1()
test2()

运行结果如下:

修改前:  666
修改后:  500
500
举报

相关推荐

第六天python笔记

Python第六天作业

JavaSE基础第六天

rhcsa第六天

0 条评论