python入门之函数调用第3关_Python入门之函数的介绍/定义/定义类型/函数调用/Return...

本篇目录:

一、 函数的介绍

二、 函数的定义

三、 定义函数的三种类型

四、 函数调用的阶段

五、 Return返回值

==========================================================================

一、 函数的介绍

1. 什么是函数?为什么要有函数?

1.1. 具备一个特定功能的工具(类比)>>>函数

1.2  事先准备工具的过程(类比)>>>函数的定义

1.3 工具直接拿来使用,使用其特定的功能>>>函数的调用

1.4 没有函数的话,程序会有以下缺点:

a. 组织结构不清晰,可读性差

b. 管理维护难度大,扩展性差

c. 代码冗余,重复

#1 定义函数

def print_sym(sym*count):print(sym*count)defprint_msg(msg):print('\033[35m%s\033[0m' %msg)

二、函数的定义

1. 函数的语法结构

1.1 函数的结构,def是define的意思,代表定义

def函数名(参数1,参数2,参数3。。。):'''此处用来增加文档描述,阐述函数的功能,增加可读性'''

代码块部分

1.2 函数可以通过函数名直接调用,函数的命名必须能准备反应函数的功能

1.3 代码块部分是函数功能实现的代码

注意点:

#函数和变量都是占用内存地址,过程相似,但是函数并不是变量

fdf550de64eff1a9dd0c042985e9b18a.png

三、定义函数的三种类型

1. 带参函数

1.1 参数是外部调用函数的部分传入函数的值

1.2 函数中的代码块逻辑中需要函数调用者传入值

defmax2(x,y):'''这是一个比较大小的函数,返回较大的数'''

if x >y:print(x)else:print(y)#调用函数max2

max2(100, 200)

defauth(username,pwd):'''该函数用来验证用户输入的用户名和密码'''

if username == inp_name and pwd ==inp_pwd:print('登陆成功!')else:print('登陆失败')#调用auth()

auth()

definteractive():'''该函数用来返回用户输入的用户名和密码'''inp_name= input('Username>>>:').strip()

inp_pwd= input('Password>>>:').strip()returninp_name, inp_pwddefauth(inp_name, pwd):'''该函数用来验证return的结果是元组类型'''res=interactive()

x=res[0]

y= res[1]print(x)print(y)

2. 无参函数

1.1 函数本身定义无参数,调用者也不需要传入参数

def print():'''该函数用来展示无参函数'''

print('\033[35m--------------------\033[0m')print('--------------不需要传入参数------------')

1.2 函数体的代码逻辑不需要函数的调用者传入值

defauth():'''该函数用来展示无参函数'''inp_name= input('Username>>>:').strip()

inp_pwd= input('Password>>>:').strip()if username == inp_name and pwd ==inp_pwd:print('登陆成功!')else:print('登陆失败')#调用auth()

auth()

3. 空函数

什么事都不做的函数就是一个空函数。

即便是一个空函数,它也会有如下属性:

['__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__doc__',     '__format__', '__get__', '__getattribute__', '__globals__', '__hash__', '__init__', '__module__', '__name__',     '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__',     '__subclasshook__', 'func_closure', 'func_code', 'func_defaults', 'func_dict', 'func_doc', 'func_globals',     'func_name']

7c1a3aa5278e6cfd06b615ced2141953.png

#Tips:当我们在写程序的过程中,遇到一个卡壳的地方,我们可以在函数末尾加一个pass,暂时的跳过思维的断路的地方。

四、 函数调用的阶段

1. 调用守则: 必须先定义再调用

定义阶段不执行代码,只检测语法

db3299e26be4ad0f5a6c58921eb30595.png

2. 调用方式:函数名+括号

调用阶段根据函数名找到函数的内存地址,执行函数的代码体

2ceddd6d957a65c5b9134fb44574453e.png

五、 Return返回值

1. 什么时候该有返回值

函数代码体执行完毕后,需要返回一个结果给调用者

55a53f71dd23bbffd8b87027336f71d2.png

2. Return返回值的三种情况

2.1 当函数代码块中没有Return,返回为None

ed81ce46739d499f16c0be90a189db0d.png

2.2 如果返回值后跟一个值,就返回值本身

73f249c9e08d81c092dd2a60a4447ea2.png

2.3 return返回的值用逗号分割,返回多个值,组成一个元组(类型)

be8e3551cd42990eb40dcfac57920f97.png

2.4 如果函数体内有多个Return,则返回第一Return的值(Return代表函数结束)

2d99010b108a391ce9a7e157d2aa31a2.png

#return返回值没有类型限制#函数内可以写多个return,但是只到第一个return就结束#return是函数结束的标志

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值