6、函数 函数

定义函数

def printinfo():
    print("-------------------------------")
    print("   人生苦短  我用python    ")
    print("-------------------------------")

## 函数调用
printinfo()

带参数的函数的定义

def sum2num(a,b):
    sum=a+b
    print(sum)
sum2num(11,22)

带参数和返回单个值的函数定义

def sum2num(a,b):
    sum=a+b
    return sum

result=sum2num(22,33)
print(result)

带参数和返回多个值的函数定义

def divid(a,b):
    shang=a//b
    yushu=a%b
    return shang,yushu      ## 直接返回多个变量

sh,yu = divid(5,2)          ## 多个变量接收返回值,一一对应
print("商:%d,余数:%d"%(sh,yu))

实践:

1、打印一条横线的函数

def printLine():
    print("-"*40)
printLine()

2、通过输入参数,打印自定义行数的横线

def printNline(N):
    for n in range(0,N):
        printLine()
printNline(4)

3、写一个函数求三个数的和

def sum3num(a,b,c):
    sum=a+b+c
    return sum
result=sum3num(11,22,33)
print(result)

4、写一个函数求三个数的平均值

def avg3num(a,b,c):
    avg=sum3num(a,b,c)/3.0
    print(avg)
avg3num(11,22,33)

全局变量和局部变量

子函数中的变量为局部变量,修改不影响全局变量

在子函数中盛名变量为全局变量时,修改的就是全局变量

a=100
def test1():
    global a    ## 函数中声明为global
    print(a)
    a=200       ## 修改的就是global全局变量
    print(a)
def test2():
    print(a)    ## 没有局部变量,默认使用全局变量
test1()
test2()