返回首页DA系统C#IDE文件同步服务屏保 今天是: 2026-05-05    "立夏"  夏季的第一个节气,表示盛夏时节的正式开始
开启辅助访问

登录  | 注册成为修仙之旅的少年~

游客您好!登录后享受更多精彩

QQ登录

只需一步,快速开始

查看: 663|回复: 0

[原创] 【原创】函数的讲解

[复制链接]
发表于 2025-4-7 20:00:11 | 显示全部楼层 |阅读模式
本帖最后由 da11 于 2025-4-7 20:41 编辑

# 函数的讲解

"""
函数:
函数是组织好的,可重复使用的,用来实现特定功能的代码段。
比如int()、print()、str()、len()、range()等都是python的内置函数

为了得带一个针对特定需求、可供重复利用的代码段、提供程序的复用性、减少重复性代码、提供开发效率,函数的使用是必不可少的

函数定义:
def 函数名(形参):
    函数体
    return 返回值

函数的调用:
函数名(实参)

注意事项:
1.参数如果不需要,可以省略。
2.返回值(return)如不需要,可以省略。没有return的函数返回的是None!
3.函数必须先定义后使用。
4.函数定义的参数之间使用逗号分隔。
5.函数的参数不设限制。
6.return之后的函数体代码都不会被执行了。
7.可以手动return None返回None。

None:
作为一个特殊的字面量:用于表示:空、无意义,其有非常多的应用场景。
· 用在函数无返回值上。
· 用在if判断上
    · 在if判断中,None等同于False。
    · 一般用于在函数中主动返回None,配合if判断做相关处理。
· 用于声明无内容的变量上
    · 定义变量,但暂时不需要变量有具体值,可以用None来代替。
· None的数据类型是<class 'NoneType'>

global关键字:
使用global关键字,可以在函数内部声明变量为全局变量。
方法和函数功能一样,有传参,有返回值,只是方法的使用格式不同:
函数的使用:num = add(1,2)                 # 等同于C#中的方法
方法的使用:student = Student()          # 等同于C#中结构体
                    num = student.add(1,2)




"""
# 定义无参数的函数
def hello_hs():
    print("测试函数调用")

hello_hs()

# 定义计算字符串长度的函数
def length_js(var):
    count_num=0
    for i in var:
        count_num+=1
    print(f"长度是{count_num}")

length_js("2sd4sd45s4d24")

# 定义一个加法函数
def add_js(x,y):
    add_num=x+y
    print(f"{x}+{y}的结果是:{add_num}")

add_js(6,5)

def remove_js(x,y):
    remove_num=x-y
    return remove_num

num1=remove_js(10,2)
print(f"10-2返回的结果是:{num1}")

def hs_work(wd):
    """

    函数说明:判断温度是否适宜
        wd: 城市温度

    Returns:None

    """
    if wd > 35:
        print(f"现在的温度是{wd}°C,请注意防范高温风险。")
    elif wd < 10:
        print(f"现在的温度是{wd}°C,天气好冷~~~。")
    else:
        print(f"现在的温度是{wd}°C,温度适宜。")


hs_work(int(input("城市温度现在是:")))

def check_age(age_num):
    if age_num > 18:
        return "成年人"

check_jg=check_age(int(input("请输入你的年龄")))

if check_jg==None:
    print("未成年人")
else:
    print("成年人")

num2=200

def test_func1():
    print(f"test_func1:{num2}")

# 注意,函数内部如果不使用global关键字声明变量,则变量的作用域还是只能在本函数体使用
def test_func2():
    num2=500
    print(f"test_func2:{num2}")

def test_func3():
    # global关键字声明num2是全局变量
    global num2
    num2 = 500
    print(f"test_func3:{num2}")

test_func1()
test_func2()
test_func3()
print(num2)

"""
函数综合练习:模拟ATM机操作
"""
hs_work2_money_num=5000000
hs_work2_money_str="xxx"
def hs_work2_main():
    print("--------------主菜单------------")
    print(f"{hs_work2_money_str},欢迎进入ATM机,请选择业务")
    print("查询余额\t【输入1】")
    print("存款\t\t【输入2】")
    print("取款\t\t【输入3】")
    print("退出\t\t【输入4】")
    hs_work2_num=int(input("请输入您的选择"))

    if hs_work2_num==4:
        return
    elif hs_work2_num==1:
        hs_work2_cxye(hs_work2_money_num)
        hs_work2_main()
    elif hs_work2_num==2:
        hs_work2_ck()
        hs_work2_main()
    elif hs_work2_num==3:
        hs_work2_qk()
        hs_work2_main()

def hs_work2_cxye(money_num):
    """

    函数用法:查询余额
        money_num: 现金数

    Returns:

    """
    print(f"现在的余额是:{money_num}")

def hs_work2_ck():
    global hs_work2_money_num
    hs_work2_money_num = hs_work2_money_num + int(input("存款多少:"))

def hs_work2_qk():
    global hs_work2_money_num
    if hs_work2_money_num <= 0:
        print("没有现金可以取")
    else:
        qk_num = int(input("取款多少:"))
        if qk_num>hs_work2_money_num:
            print("取款超过最大值了~,请重新输入")
            hs_work2_qk()
        else:
            hs_work2_money_num = hs_work2_money_num - qk_num

hs_work2_main()


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为修仙之旅的少年~

x
*滑块验证:

本版积分规则

DA论坛飞机票来了~

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表