python函数超简单入门详细易懂

一、函数的定义

def 是 define(中文含义:定义)的缩写,表示你要向 Python 传授做事流程

这就是完整的教 Python 做事的代码结构,要注意以下几点:

  1. 用 def 引导出要定义的“暗号”,后面加上一对括号和冒号作结尾;
  2. 具体的做事代码直接写在下面,前面统一加缩进。

这样,Python 就记住了, make_juice 是它学会的“新暗号”,专门用来制作猕猴桃汁。以后,我们只要使用 暗号名() 的格式,就能让 Python 进行我们刚刚教会它的一系列操作。

# 前 6 行教会 Python 做猕猴桃汁

def make_juice():

  print('将猕猴桃去皮')

  print('将猕猴桃切块')

  print('将切碎的猕猴桃放进榨汁机')

  print('将果汁倒进杯子中')

  print('制作完成!')

# 缩进结束,表示定义完毕

# 后 3 行用 Python 做三杯猕猴桃汁

make_juice()

make_juice()

make_juice()

在编程中有个专门的名字:函数。我们用严谨的语言来描述一下什么是 函数

函数的定义中,有三个要点:

  • 组织好的:做猕猴桃汁的过程代码预先写在了教 Python 做事的过程中;
  • 可重复使用的:我们可以和 Python 对无数次暗号,Python 就会乖乖执行无数次;
  • 用来实现特定功能:做猕猴桃汁。

前面教 Python 做事,并设定好“暗号”的过程,叫作 定义函数。其中缩进的几行表示具体处理过程的代码,叫 函数体

而后面让 Python 真正根据暗号做事的过程,叫作 调用函数,我们可以让 Python 执行无数次暗号,也就是说,函数一旦定义,就可以任我们随意调用。

二、函数的参数

果不管怎么变,都是要去皮、切块、放进榨汁机的。所以我们需要对函数进行改造,让它对所有水果都通用。

我们可以预设一个临时变量 fruit,表示将要处理的水果,放进函数的定义过程中,让 Python 学习更灵活的做事流程。

# 定义函数时,括号中写进预设的变量 fruit
def make_juice(fruit):
  # 把 fruit 写进函数体中
  print('将' + fruit + '去皮')
  print('将' + fruit + '切块')
  print('将切碎的' + fruit + '放进榨汁机')
  print('将果汁倒进杯子中')
  print('制作完成!')
#主要传入水果的参数就行了
# 做苹果汁
make_juice('苹果')
# 做桃子汁
make_juice('桃子')

根据这个逻辑,Python 读到 make_juice('桃子') 时,也自然可以打印出榨桃子汁的正确流程。

定义函数时预设的临时变量,有个专门的名称:参数。定义过程所用的样板 fruit,叫作 形式参数,简称 形参,只起示范作用;而实际调用函数时 make_juice('桃子') 中的 '桃子',叫作 实际参数,简称 实参

 参数,函数就更加灵活而强大了。定义函数时,我们只要专心总结出固定的操作流程,至于具体根据场景而变化的元素,只要交给 参数 去统一表示就可以啦。

这种“预设临时变量,写进固定流程”的思路,想必我们早就不陌生了,在学数学和物理公式时,用的都是这种思路。比如圆的周长公式 C = 2πr,我们只要用 π 乘以半径乘以 2,就能得出周长,具体的半径是多少,实际运算中代入就好。

由于思路相通,所以求圆周长的公式,我们可以写成一个函数,将半径 r 作为参数:

def circle(r):
  # π 取 3.14
  c = 2 * 3.14 * r
  print('该圆的周长是' + str(c))

三、函数的返回值

在 Python 中,None 是一个特殊的值,表示“什么也没有”,在这里,表示变量 result 是空的,没有任何值,硬要通过 print(result) 打印的话,就只能打印出 None 通知你一下,“不要问,问就是没有”。

1、return语句

def circle(r):

      c = 2 * 3.14 * r


result = circle(2)

print(result)

#None

函数内部的代码是一个封闭的“小团体”,不管里面的代码运行出了什么,都不会主动和外面的代码分享就算函数体里面加个 print(),也只是把结果打印在屏幕上而已,不会和别的代码互通有无

这时候,我们需要在函数内部的结尾,加上 return 语句来帮忙,它的作用就是函数内部与外部世界的“信使”,负责将函数内部的值传递给外面。

def circle(r):
  c = 2 * 3.14 * r
  # 函数体最后一行加上 return 语句
  return c

result = circle(2)
print(result)
print('该圆的周长为' + str(result))

打印结果为:

四、函数的要点

1、典型的函数

  • 告诉 Python,要定义一个函数;
  • 暗号名,即函数的名字是什么;
  • (非必要)这个函数需要什么 参数
  • 处理过程是什么样的;
  • (非必要)把什么样结果 返回 给外部。

有了这个通用思路,我们一定能写出功能明确的函数!

Python 中自带了很多函数,给我们提供了很多常用的功能,我们已经接触过了一些,比如 type()、 input()str() 等,它们都是既有参数,又有返回值的函数。

print(type(5)) # 输出: <class 'int'>

我们以 type() 函数为例,它的调用时,实际参数 是整数 5,经过内部一系列不需要我们关心的操作后,得出的 返回值 为字符串 '<class 'int'>',借助 print() 函数打印了出来。

2、函数的命名

函数的命名和变量的命名是一样的,由数字、字母、下划线组成,并且不可以用数字作为名称的开头。另外,名称本身要表达自己的功能,要简单易读,并且中间不能有空格。

3、函数格式的易错点

中文的括号和冒号会被识别为无效字符

4、return语句的陷阱

return 语句有一个特别要注意的点,return 语句是函数执行结束的标记,运行完 return 语句,就会退出函数的执行,不管后面还有没有其它代码。所以我们一般都要把 return 语句放在最后。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值