Python之函数篇

举报
布小禅 发表于 2021/07/14 19:27:53 2021/07/14
【摘要】 函数的简单理解


@[TOC]

前言

来了,他来了,函数篇!

学了函数才算是能推动python的门了

函数

注意不要和数学中的函数搞混了

那么到底什么是函数呢?

函数其实就是当我们在程序中需要大量重复的代码块,我们将其封装成一个代码块,用一个名字来表示,而这个名字是标识符。需要遵循标识符的规则。

函数的优点就是避免了代码重复率,提高开发效率。

举个例子:我们需要让电脑给我们表白(骚话),输出一段情话,就比如这一段

"我爱你"
"我要给你生猴子"
"啊啊啊,好喜欢你"

按照之前所学,一个一个的print()就行了嘛

但是我需要你什么时候都能给我来一段表白(骚话)呢?

这个时候恐怕用循环就不妥了吧,就用我们的函数了

当然,python自带的有很多内置函数,而我们自己定义的函数叫做自定义函数。

无参函数

无参函数是最基本的函数,基本上很少用到,都是拿来练习理解函数的。

定义一个无参函数

def 函数名字():
    代码

调用这个无参函数

函数名字()

把我们的例子打出来

# 定义
def Qinghua():
    print("我爱你")
    print("我要给你生猴子")
    print("啊啊啊,好喜欢你")
# 调用
Qinghua()

运行结果:

在这里插入图片描述

好像,并没有多大作用吗!

其实不然,看这个

# 定义
def Qinghua():
    print("我爱你")
    print("我要给你生猴子")
    print("啊啊啊,好喜欢你")
# 调用
Qinghua()
for i in range(10):
    print("经过了{}秒".format(i))
    Qinghua()

他可以在你任何想使用的时候,都可以通过调用的形式使用,而不需要你再打了。

就像变量一样,不过函数要比普通的变量复杂一些

有参函数

函数是可以传递参数的,而参数分为形参和实参

形参就是形式上的参数,就像一家公司有员工,清洁工,董事长等职位,但是有些职位却空着,这些空着的职位,就相当于形参,需要有人去做这个职位,才能发挥作用,而这个能发挥职位作用的人,就叫做实参(实际参数)。

而我们定义有参函数的时候,需要定义形参来表示我们的函数,有这些东西,你想让我们的函数去发挥作用的话,就需要给我们传递实际参数。

定义和调用

有参有参,在哪里体现的有参呢?

在我们定义的时候,我们需要在括号里面定义形参,用于接收参数

而在我们调用的时候,也是通过函数名后面的括号传递实参的

实例

我们会定义一个有参函数来使两个参数拼接在一起,并遍历

def PinJie(a, b):
    str_ = str(a)+str(b)
    print(str_)
    for i in str_:
        print(i)

PinJie("sasa", 4564)
#也可以这么写
"""
PinJie(a="sasa",b=4564)
这样写的好处是
就算你的位置写错了
参数传递的也还是对的
也就是说,参数传递的位置不固定
就像这样
PinJie (b=4564, a='sasa')
是完全一样的
"""

运行:

在这里插入图片描述

return的使用

之前说过,return一般是使用在函数中的,那么他的作用是什么呢?

先根据见名知意的规律来解读:返回

确实,他的作用就是返回,返回值

通过return xxx来达到返回值得目的,这里是返回了xxx这个东西,至于xxx 是什么。。众所周知,xxx可以什么都是!

那么返回的值到了哪里呢?到了函数的调用那里,这个函数名字(参数)就是返回的值

例子

看上面的那个函数,他显示拼接后的结果,使用了print()函数(内置函数)

那么我们使用return试试

def PinJie(a, b):
    str_ = str(a)+str(b)
    return str_
    for i in str_:
        print(i)

PinJie("sasa", 4564)

那么会怎么样呢?

答案是,什么都不会显示!

在这里插入图片描述

为什么呢?因为我们没有使用print()函数(瞎说,那不是有!)

为什么这么说呢?因为上次讲过,return用于结束一段代码,而我们在中间return,下面的训话也就不会被执行,就直接结束了。

怎么显示循环呢?把return放在函数最下面,我就不展示了,自己去试试,不然优点水字数!(狗头保命!)

那么上面说了返回的值被 **函数名()**接收了,那么他现在就是一个值了,想要让它显示,那么只能用print()了啊!

def PinJie(a, b):
    str_ = str(a)+str(b)
    return str_
    for i in str_:
        print(i)

p = PinJie("sasa", 4564)
print(p)

结果:

在这里插入图片描述

他就显示了返回值,也就是函数拼接的结果

结语

先说这么多吧,不早了。

兴趣是最好的老师,坚持是不变的真理。
学习不要急躁,一步一个脚印,踏踏实实的往前走。
每天进步一点点,日积月累之下,你就会发现自己已经变得很厉害了。

我是布小禅,一枚自学萌新,跟着我每天进步一点点吧!

说了这么多暂时也就够了,那么就告辞吧

在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。