【Python】初始函数(一)

        在编程中,我们会遇到很多大量重复的事情,比如我们要处理一份文件,我们需要使用代码去打开、处理、保存,但在实际中,我们会有很多文件做相同的处理,如果每处理一份文件都要写一份代码,那效率一下子就低了下去,这个时候便有了函数,我们可以直接通过调用这个函数,并且将文件传递给这个函数,这个时候,就只需要遍历所需要处理的文件,然后交给一个函数去处理,这样工作效率就大大提升了。

目录

1. 函数简介

2. 函数的定义

3. 函数的调用

3.1 func和func()的区别

4. 函数的返回值

5. 函数强化理解


1. 函数简介

先来一段概念:

Python函数是一段可重用的代码块,用于执行特定任务或计算,并可以接受参数和返回值。

简单来说,函数就是一段已经封装好的代码,你可以通过调用函数名去执行这段代码

2. 函数的定义

def 函数名(形参1,形参2...形参n):
    代码块(函数体)

 

def func():
    print('hello,world')

def:python中定义函数的关键词,固定写法,每声明一个函数都要写一个def

func:函数名,这个自己取名,但命名规范和变量一样,使用数字、字母、下划线,且数字不能作为开头。在命名时,应清晰易懂

然后就是函数体(代码块),在这里写上需要复用的代码

3. 函数的调用

函数调用十分简单,以上的函数调用直接使用:

def func():
    print('hello,world')

func()   # 调用函数

===================
hello,world

进程已结束,退出代码0

也就是:函数名+()

其中不难发现,其实print()也是调用的函数,它是python已经定义好的函数,直接调用即可

3.1 func和func()的区别

def func():
    print('hello,world')


print(func)  # 函数对象(函数的地址)
print(type(func))  # 类型:函数
print(func())    # 打印函数返回值

func()  # 调用函数
print(type(func()))  # 函数返回值的类型


================
<function func at 0x0000022BC65A7280>
<class 'function'>
hello,world
None
hello,world
hello,world
<class 'NoneType'>

进程已结束,退出代码0

从上面不难看出:

type(): 查看数据类型

func: 函数对象,里面包含函数的名字以及函数的地址,存储空间的地址。

func(): 调用函数,执行函数体的内容

<class 'function'>:是一个类,属于函数类

其中,函数执行完,是有返回值的,默认为None

先了解什么是函数的返回值,再回来看这一段代码

4. 函数的返回值

每执行一段函数,都有给调用函数时返回一个值,默认为None,现在来看看不为None的情况

def func():
    return 'hello,world'


func()  # 直接调用函数
print(func())
a = func()   # 变量接受返回值
print(a)

================
hello,world
hello,world

进程已结束,退出代码0

return: 函数的返回值,并中断函数,不再执行以下代码

这里直接调用函数是不会输出任何东西的,return时,返回给调用函数时一个返回值,当我们拿一个变量a去接收这个返回值的时候,然后输出a,你就会发现,此时输出的就是函数return后面的内容,那便是函数的返回值

现在再来看前面的代码:

def func():
    print('hello,world')


print(func)  # 函数对象(函数的地址)
print(type(func))  # 类型:函数
print(func())    # 打印函数返回值

func()  # 调用函数
print(type(func()))  # 函数返回值的类型


================
<function func at 0x0000022BC65A7280>
<class 'function'>
hello,world
None
hello,world
hello,world
<class 'NoneType'>

进程已结束,退出代码0

print(func()):先执行func(),并且返回一个None(不写return,就默认为None),然后打印这个返回值,也就是None.

5. 函数强化理解

为了更加方便理解什么是函数,以及如何运行函数,我们来一个简单的登录例子入手函数.

不管是网站还是小程序还是app都需要登录判断,再很多地方都需要进行登录,比如你没登录时,想要进入一个网站,但这时系统必须要你登录,然后直接跳转到登录界面,此时,再实际需求中,我们肯定不能每一个网页跳转都重新写一份登录逻辑吧,所以此时,函数的用途就来了.


# 定义一个login函数,功能是 输入用户名和密码,验证登录是否正确,用户名是root   密码是123456
def login():
    username = input("请输入用户名:")
    password = input("请输入密码:")
    if username=='root' and password=='123456':
        print("登录成功")
    else:
        print("登录失败")

print(
    '1: 页面一\n'
    '2: 页面二\n'
    '3: 页面三\n'
)
botton = input('请输入你要进入哪个页面:')

# 假设页面三正在维护,不进行跳转
if botton == '1':
    # 跳转到登录页面
    login()
elif botton == '2':
    login()
else:
    print('页面正在维护中~~~')

========================
1: 页面一
2: 页面二
3: 页面三

请输入你要进入哪个页面:2
请输入用户名:root
请输入密码:123456
登录成功

进程已结束,退出代码0

如果我们不使用函数,那么结果将会是这样:

print(
    '1: 页面一\n'
    '2: 页面二\n'
    '3: 页面三\n'
)
botton = input('请输入你要进入哪个页面:')

# 假设页面三正在维护,不进行跳转
if botton == '1':
    # 跳转到登录页面
    username = input("请输入用户名:")
    password = input("请输入密码:")
    if username == 'root' and password == '123456':
        print("登录成功")
    else:
        print("登录失败")
elif botton == '2':
    username = input("请输入用户名:")
    password = input("请输入密码:")
    if username == 'root' and password == '123456':
        print("登录成功")
    else:
        print("登录失败")
else:
    print('页面正在维护中~~~')
    
    
print(
    '1: 页面一\n'
    '2: 页面二\n'
    '3: 页面三\n'
)
botton = input('请输入你要进入哪个页面:')

# 假设页面三正在维护,不进行跳转
if botton == '1':
    # 跳转到登录页面
    login()
elif botton == '2':
    login()
else:
    print('页面正在维护中~~~')

可以看到页面一和页面二的代码完全一样,这个时候就显得没那么必要,反而加重了代码量,后期维护也更难。

好啦!到这里,你基本已经明白什么是函数了,也学会如何去使用函数了,那么后续将会讲解什么是函数的参数,以及如何传递参数.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jiaoxingk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值