python函数上篇

举报
苏凉.py 发表于 2022/04/21 17:08:10 2022/04/21
【摘要】 python函数详解,值得收藏!!

🔷什么是函数??

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
简而言之,函数在我们日常就用的很多了,但大多数都是官方定义好的函数,我们直接调用就可以例如input(),print()等,只不过它如何定义的我们也就不关心了。要是我们的代码中需要大量重复使用一串复杂的代码块,那么我们就可以定义一个函数来表示这段代码块,需要用到时直接调用即可!!

🥇1.函数调用

函数由三个部分组成:函数名,参数以及返回值。
函数名就是函数的标识符。
函数的参数就是在调用函数时给函数提供数据。

name = input("请输入你的姓名:")
list  = len(name)
print(list)

在这里插入图片描述
在这里,input,len,print是函数名,函数括号内的为参数,等号左边的为返回值。
调用函数:一般为函数名加小括号。小括号内可填写参数,为函数提供数据。当然有些函数不需要参数(list.clear()),有些函数必须要传递参数(list.append())。

🥇2.定义函数

需用def(define)关键字来定义函数,需以冒号结束。
函数必须先定义在调用

def name():
    print('苏凉')

def QQ_num():
    print('787991021')

def Total():
    name()
    QQ_num()
    
Total()

在这里插入图片描述

定义函数:
函数头:关键字def +自定义函数名加小括号,最后以冒号结尾。def name(),def QQ_num(),def Total()
函数体:需要函数实现的功能。即函数体前必须缩进4个字符。一个tab键。
注意:函数的执行是由上到下的,即必须先定义函数在调用。

🥇3.函数参数

函数的参数可以让我们定义的函数更为灵活。
注意:定义函数时若传入了参数,那么在调用时也必须指定参数。

传参时可传入一个参数,也可传入多个参数。

# 传入一个参数
def list(len):
    print('+' * len)
list(5)

# 传多个参数
def list2(num1 , num2):
    print(num2 * num1)
list2('*',15)
list2(5,10)

调用函数时给定实际的值(实参),这样就会给定义的参数(形参)进行赋值。

在这里插入图片描述
注意:在传入多个参数时,需注意参数的个数以及顺序是否正确,顺序不同函数的意义也就不同。

🥇4.函数返回值

函数可以返回单个值也可以返回多个值,用return来返回值。
注意:当函数执行到return时则函数执行结束。即不会再执行return后的函数体。

def num(age,sex):
    if age<0:
        return
    elif age>200:
        return
    else:
        return age,sex

x = int(input('输入年龄:'))
Sex = input('输入性别:')

num ,sex  = num(x,Sex)
print(num,sex)

函数返回多少个值就要用多少个值去接收,否则就会报错。此时分别返回单个值。

在这里插入图片描述

一种特殊情况为用一个变量接受,此时返回的值为一个元组类型!

result = num(x,Sex)
print(result)

在这里插入图片描述
总结:函数可以返回单个值也可以返回多个值,当返回多个值时,需要用对应多个变量接收函数返回的值,若只用一个值接收,则返回一个元组类型的值。

🥇5.变量作用域

变量的作用域:即是指在那个地方可以使用变量。这就涉及到了全局和局部两种变量。
全局(global)变量:在函数外定义的变量。无论在函数体内或者函数体外都可以使用! 💥==全局变量在函数体内只能使用而不能直接修改!!==
局部(local)变量:在函数内定义的变量,在函数内定义的变量,只能在函数体内使用和修改,在函数外调用就无效了。 在函数内可以定义一个名字和函数外一样的变量,但他们的意义时不一样的!!


a = 15 #这里a为全局变量
def num():
    a = 5 #这里a为局部变量,名字可以相同但代表不同的值
    print(a)

num()
print(a)

结果:
在这里插入图片描述

这里可以看到局部变量是不能修改全局变量的值的。


a = 15 #这里a为全局变量
def num():
    # 在函数体内可以使用全局变量
    print(a)
    
num() #结果15
print(a) #结果15

在函数体内是可以使用全局变量的


a = 15 #这里a为全局变量
def num():
    global a  #定义全局变量
    a = 5
    print(a)

num() #结果5
print(a) #结果5

若想要在函数体内修改全局变量,则需在修改之前,定义全局变量,此时函数体内的变量a为全局变量,不再是函数体内定义的局部变量了。


🍻结语

好啦,是不是感觉不过瘾呢?今天咱们就先写到这,消化消化先,关于函数的其他说明我将再下一章全部结束。关注我,咱们下期再见!!
在这里插入图片描述

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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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