Python之函数-函数概念

Python之函数-函数概念

函数

数学定义

  • y=f(x) ,y是x的函数,x是自变量。y=f(x0, x1, ..., xn)

Python函数

  • 由若干语句组成的语句块、函数名称、参数列表构成,它是组织代码的最小单元
  • 完成一定的功能

函数的作用

  • 结构化编程对代码的最基本的封装,一般按照功能组织一段代码
  • 封装的目的为了复用,减少冗余代码
  • 代码更加简洁美观、可读易懂

函数的分类

  • 内建函数,如max()、reversed()等
  • 库函数,如math.ceil()等
  • 自定义函数,使用def关键字定义

函数定义

python 复制代码
def 函数名(参数列表):
	函数体(代码块)
	[return 返回值]
  • 函数名就是标识符,命名要求一样
  • 语句块必须缩进,约定4个空格
  • Python的函数若没有return语句,会隐式返回一个None值
  • 定义中的参数列表称为形式参数,只是一种符号表达(标识符),简称形参

函数调用

  • 函数定义,只是声明了一个函数,它不能被执行,需要调用执行
  • 调用的方式,就是函数名后加上小括号,如有必要在括号内填写上参数
  • 调用时写的参数是实际参数,是实实在在传入的值,简称实参
python 复制代码
def add(x, y):          # 函数定义 
	result = x + y      # 函数体 
	return result       # 返回值
ret = add(4,5)          # 函数调用,可能有返回值,使用变量接收这个返回值 
print(ret)              # print函数加上括号也是调用

# 返回结果:9

代码示例

python 复制代码
def add(x, y): # add 标识符,函数名,指向一个函数对象
	result = x + y # 函数逻辑
	return result  # return返回值
  • def关键字,define定义,定义时
  • (参数列表),参数列表中可以有n个参数(可以试0个),这些参数叫做形式参数。
  • 简称形参。形参也是标识符。
python 复制代码
add(4, 5)

# 调用add函数,传入4, 5的值
# 返回结果:9
python 复制代码
print(callable(add)) 

# callable返回True/False,确认此对象是否可以被调用
# 返回结果:True
python 复制代码
ret = add(4, 5) # 函数标识符后面加(),就是调用、执行called。调用时
print(ret)

# 返回结果:9
python 复制代码
add 

# 把一个函数打印出来,打印的内容是内存的0,1的展示方式,一般叫函数签名
# 返回结果:<function __main__.add(x, y)>
python 复制代码
def add(x, y):
    r = x + y
    return r

# 重新定义一个函数
python 复制代码
add(1, 2), add([1], [2]), add('a', 'b'), add(b'a', b'b'), add((1,), (2,)), add((1), (2))

# 这些值都能直接相加,但是要分清结果是什么
# 返回结果:(3, [1, 2], 'ab', b'ab', (1, 2), 3)
相关推荐
安替-AnTi5 小时前
厚朴 APK 搜索接口分析
python·apk·解析·taobao
山川湖海6 小时前
AI时代快速学编程语言的陷阱(以Python为例)
大数据·人工智能·python
H Journey6 小时前
Supervisor 进程管理工具介绍
python·supervisor·linux 运维
春日见6 小时前
5分钟入门强化学习之动态规划算法与实现
大数据·人工智能·python·算法·机器学习·计算机视觉
bug和崩溃我都要6 小时前
Qt 封装 libmpv 全功能视频播放器开发指南
开发语言·qt·音视频
郝学胜-神的一滴6 小时前
Qt 高级开发 018:复刻经典登录界面布局与窗口美化全解析
开发语言·c++·qt·程序人生·用户界面
郝亚军6 小时前
IEEE 754 单精度浮点的SEM表示
开发语言·c++·算法
zhangjw347 小时前
第15篇:Java多线程零基础入门,进程线程、线程创建方式、线程生命周期、线程安全彻底吃透
java·开发语言·面试
蝈理塘(/_\)大怨种7 小时前
类和对象 (上)
java·开发语言
DeniuHe7 小时前
sklearn 中所有交叉验证数据集划分方式完整总结
人工智能·python·sklearn