Python基础:函数的基础使用

一、函数的基本定义

函数:是组织好的、可重复使用的、用来实现特定功能的代码段。

定义:

def  函数名 (传入参数) :

        函数体

        return 返回值

注意:1. 传入参数没有可不写,但括号要写。

2. 没有返回值可以不写return语句。

3. 先定义后调用。

二、函数的参数

传入的参数数量不限制,参数之间用‘ , ’隔开

举例:

#2数相加函数
def add(x,y):
    z = x + y
    print(f"{x}+{y} = {z}")

add(1,5)

运行结果:

1+5 = 6

三、函数返回值

函数里进行运算的结果可以通过return 传递出去,用变量接收。

举例:

#2数相加函数
def add(x,y):
    z = x + y
    return z

z = add(1,5)
print(z)

运行结果:6

注意:

1. return语句执行后就退出函数了,return后面的语句不会被执行。

2. 若没有返回值,没有return语句等同于返回了“None”,None为特殊的字面量,表示“空”的意思,没有实际意义。

关于None类型的应用场景

1. 用在函数无返回值上。

2. 用在if判断上:

在if判断中,None等同于False,一般用于在函数中主动返回None,配合if判断做相关处理。

3. 定义暂时不需要有值的变量:

name = None

四、函数的说明文档

使用后,在调用函数时,鼠标悬停可以看到函数说明。

格式:
 

def func(x,y):

        '''
        函数说明
        :param x:形参x说明
        :param y:形参x说明
        :return:返回值的说明
        '''

        函数体
        return 返回值

举例:

def add(x,y):
    '''
    add函数可以接收两个参数,进行两个数相加的功能
    :param x: 
    :param y: 
    :return: 
    '''
    z = x + y
    return z

五、函数的嵌套

指在一个函数里调用了另一个函数。

六、变量的作用域

局部变量

定义在函数体内部的变量,作用范围只在函数体内部生效。若在函数外使用该变量会报错。

全局变量

定义在函数外(在函数定义前),指在函数体内外都能生效的变量。

举例:

num = 100
def func1():
    print(num)

def func2():
    print(num)

func1()
func2()

global关键字

用来在函数内部修改全局变量。

1. 举例:不适用global修改

num = 100 # 全局变量
def func1():
    print(num)

def func2():
    num = 200 # 局部变量,与全局变量num没有任何关系,指向两个不同的地址
    print(num) # 有局部变量时先找局部变量使用

func1()
func2()
print(num)

运行结果:

100 200 100 

发现函数内修改语句,只是重新定义了一个局部变量num,与全局变量num没有任何关系。

2. 举例:使用global修改

num = 100
def func1():
    print(num)

def func2():
    global num
    num = 200
    print(num)

func1()
func2()
print(num)

运行结果:

100 200 200

综合案例:查询余额,存、取钱

money = 5000000 #初始余额
name = None
serve = None
# 菜单函数
def menu(): 
    global serve
    print("请输入所需服务号")
    print("1:余额查询;2:存款;3:取款;4:退出")
    serve = int(input())
# 查询余额
def find_money():
    print(f"当前余额为{money}")
# 存钱
def deposit():
    global money
    print("您要存的金额为:")
    deposit_money = int(input())
    money = money + deposit_money
    print(f"存款成功,当前余额:{money}")
#取钱
def withdraw():
    global money
    print("您要取的金额为:")
    withdraw_money = int(input())
    if withdraw_money > money:
        print("取钱失败,余额不足")
    else:
        money = money - withdraw_money
        print(f"取钱成果,当前余额:{money}")
# 主函数
print("请输入姓名")
name = input()
while 1:
    if name == "米米":
        menu()
        if serve == 1:
            find_money()
        elif serve == 2:
            deposit()
        elif serve == 3:
            withdraw()
        elif serve == 4:
            break
        else:
            print("输入错误1,退出")
            break
    else:
        print("输入错误2,退出")
        break

运行结果:

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值