当前位置: 首页 > news >正文

Python函数 之 函数基础

  • print() 在控制台输出
  • input() 获取控制台输⼊的内容
  • type() 获取变量的数据类型
  • len() 获取容器的⻓度 (元素的个数)
  • range() ⽣成⼀个序列[0, n)

以上都是我们学过的函数,函数可以实现⼀个特定的功能。我们将学习⾃⼰如何定义函数, 实现特定的功能。


1.函数是什么?

  • 函数将多⾏代码(可以实现⼀个特定的功能)放在⼀块,并给它起⼀个名字在需要使             多⾏代码的时候, 可以使⽤名字代替
  • 定义函数的好处对具备相同逻辑的代码进行封装,实现对代码的重用,减少代码冗                                   余(重复的代码不需要多次书写),提⾼编程效率。
  • 函数必须 先定义 后 调用

2.函数的文档注释[了解] 

  1. 函数的⽂档注释,本质就是注释, 只不过作⽤和书写位置有特定的要求
  2. 作⽤: 是对函数的作用和使用方法进行说明, ⽐如 有哪些参数, 返回值是什么
  3. 书写位置: 在def 的下方,使⽤三对引号来书写

函数的查看:

  1. 在函数名上,使⽤快捷键 Ctrl q 查看
  2. 在函数名上,使⽤ 快捷键 Ctrl B 跳转到函数定义的地⽅查看
  3. 在函数名上, 按住 Ctrl 键,点击函数名,跳转到函数定义的地⽅查看

3.函数的定义 

def 函数名():
    函数中的代码
    函数中的代码
  1. 函数定义,就是给多行代码起名字的过程
  2. 函数的定义需要使⽤ 关键字 def, 单词 define
  3.  处在 def 缩进中的代码 都属于这个函数
  4. 函数名要满⾜标识符的规则, ⻅名知意
  5.  def 这⾏代码的最后需要⼀个 冒号
  6. 函数定义不会执⾏函数中的代码,想要执⾏需要调⽤这个函数

4.定义带参数的函数

  • 参数
    • 形式参数(形参):在函数定义的时候,在括号中写⼊变量,这个变量就称为是函数的参数。
    • 实际参数(实参):在函数调⽤的时候,可以给定义时候的形参传递具体的数据值,供其使⽤。
    • 注: 在函数调⽤的时候,会将函数的实参值传递给形参。
  • 好处: 可以让函数更加的通⽤,函数中的数据值不是固定的,是调⽤的时候,你传递的。
  • 使用场景: 判断 函数中 数据值是不是固定不变的, 如果是变化的就可以使⽤参数传递。
  • 注意点: ⽬前书写的函数, 如果存在形参,必须传递相同个数的实参
def sun_2_num(a, b): # a, b 形参c = a + bprint(c)sun_2_num(10, 20) # 10, 20 实参 10 给 a, 20 给 b
sun_2_num(1, 2)
sun_2_num(20, 39)

5.函数的调用

语法:函数名()

注意:有参数则需要传递参数

  1.  函数调用,就是使用 多行代码的过程
  2. 只定义函数, 不调用函数, 函数永远不会被执行
  3. 不能将 函数调用 放在 函数定义 的上方,否则将会出现错误。(先定义再调用)

# 定义带参数的函数
def sun_2_num(a, b): # a, b 形参c = a + bprint(c)# 调用带参数的函数
sun_2_num(10, 20) # 10, 20 实参 10 给 a, 20 给 b
sun_2_num(1, 2)
sun_2_num(20, 39)
定义函数的小技巧:
  • 先不使⽤函数,将多⾏代码写完
  • 在多行代码的上⽅使⽤ def 起名字
  • 使⽤ tab 键, 将多⾏代码进行缩进

6.函数嵌套调用

  • 在⼀个函数中调⽤另⼀个函数。

        1, 代码从上到下执⾏的

        2, 函数定义不会执⾏函数中的代码

        3, 函数调用会进⼊函数中执⾏函数中的代码

        4, 函数中的代码执行结束,会回到调⽤的地⽅继续向下执⾏

# 1. 定义名为test01的函数,打印当前函数的名称
def test01():print(1)print('func01')print(2)# 2. 定义名为test02的函数,打印当前函数的名称,并 调用test01函数
def test02():print(3)print('func2')test01()print(4)print(5)
test02()
print(6)
# 5 3 1 2 4 6

 


7.返回值

  • 返回值: 函数执⾏的结果
    • print() ---> None
    • input() ---> 键盘输⼊的内容, 类型 字符串
    • type() ---> 变量的数据类型
    • len() ---> 容器⻓度
  • 在⼀个函数中,想要返回⼀个数据(想要有返回值),需要使用return 关键字
  • 为什么返回值? 在函数中可能通过各种代码得到的数据结果,想要在函数外部使用就需要使⽤返回值。
  • 如果函数有返回值, ⼀般在调⽤的时候 会使⽤变量来接收(保存) 返回值, 以便后续使用。
  • return 关键字的作用:
    • 将⼀个数据值返回到调用的地⽅
    •  函数遇到 return 会结束函数的执行
    • return 关键字只能⽤在函数中
  • 如果⼀个函数 没有写 return,可以认为 返回值是 None
# 设计⼀个函数⽤于获取两个数中的较⼤数,数据来⾃于函数的参数def get_max(a, b):if a > b:return aelse:return bprint('我会执⾏吗, 不会执⾏')  # 注意:return 表示返回,后续的代码都不会被执行# 调用
num = get_max(10, 20)
print(num)

 

案例: 

需求:

1. 定义名为 input_username 的函数, 获取⽤户输⼊的⽤户名

2. 定义名为 input_password 的函数, 获取⽤户输⼊的密码

3. 定义名为 login 的函数, 判断获取的⽤户名和密码信息

4. 要求当获取的⽤户名为:admin 并且密码为: 123456 时, 输出“登录成功!”,否则提示“⽤户       名或 密码错误!”

# 1. 定义名为 input_username 的函数, 获取⽤户输⼊的⽤户名def input_username():"""输⼊⽤户名"""return input('请输入用户名:')# 2. 定义名为 input_password 的函数, 获取⽤户输⼊的密码
def input_password():"""输⼊密码"""return input('请输入密码:')# 3. 定义名为 login 的函数, 判断获取的用户名和密码信息
# 4. 要求当获取的用户名为:admin 并且密码为: 123456 时,输出“登录成功!”,否则提示“用户名或密码错误!”def login():"""登录函数"""if input_username() == 'admin' and input_password() == '123456':print('登录成功')else:print('用户名或密码错误')login()

 


未完待续。。。 

http://www.lryc.cn/news/396015.html

相关文章:

  • 昇思25天学习打卡营第11天|SSD目标检测
  • MySQL篇五:基本查询
  • FreeBSD@ThinkPad x250因电池耗尽关机后无法启动的问题存档
  • pdfplumber vs PyMuPDF:PDF文本、图像和表格识别的比较
  • 深入Django系列
  • 【Python】找Excel重复行
  • 重读AI金典算法模型-GPT系列
  • 仙人掌中的SNMP检测不到服务器
  • git只列出本地分支
  • 算力狂飙|WAIC 2024上的服务器
  • uniapp app端跳转第三方app(高德地图/百度地图为例)
  • 阿里云RDS云数据库库表恢复操作
  • 来一场栈的大模拟(主要是单调栈)
  • 13 - matlab m_map地学绘图工具基础函数 - 介绍创建管理颜色映射的函数m_colmap和轮廓图绘制颜色条的函数m_contfbar
  • PTA - 编写函数计算圆面积
  • Golang | Leetcode Golang题解之第218题天际线问题
  • 【Mars3d】osgb倾斜摄影模型加载慢卡顿的优化方案参考
  • 认识同源策略
  • ADOQuery 查询MSSQL存储过程一个莫名其妙的错误;
  • 变阻器的分类
  • 微服务节流阀:Eureka中服务限流策略的精妙实现
  • Keras实战之图像分类识别
  • Celery,一个实时处理的 Python 分布式系统
  • 源码编译安装 LAMP
  • PostgreSQL的pg_filedump工具
  • Java语言+后端+前端Vue,ElementUI 数字化产科管理平台 产科电子病历系统源码
  • Linux 服务器环境搭建
  • RabbitMQ 更改服务端口号
  • 16:9横屏短视频素材库有哪些?横屏短视频素材网站分享
  • 在Java中,创建一个实现了Callable接口的类可以提供强大的灵活性,特别是当你需要在多线程环境中执行任务并获取返回结果时。