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

Python之函数-函数概念

Python之函数-函数概念

函数

数学定义

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

Python函数

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

函数的作用

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

函数的分类

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

函数定义

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

函数调用

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

# 返回结果:9

代码示例

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

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

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

# 返回结果:9
add 

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

# 重新定义一个函数
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)

http://www.kler.cn/news/108913.html

相关文章:

  • HTTPS协议:保障网络安全的加密通信协议
  • 一天掌握python爬虫【基础篇】 涵盖 requests、beautifulsoup、selenium
  • 一个基于Excel模板快速生成Excel文档的小工具
  • Python爬虫基础之Requests详解
  • USACO12OPEN Balanced Cow Subsets G(meet in the middle)
  • TensorRT量化实战课YOLOv7量化:pytorch_quantization介绍
  • 如何公网远程访问本地WebSocket服务端
  • linux中nginx配置https
  • 读书笔记:c++对话系列,Visitor模式
  • 日本IT Week秋季展丨美格智能以技术创新共建美好数字生活
  • MES的物料管理
  • 大数据前置学习基础准备(非常详细!)
  • 二进制安装部署k8s
  • 记录使用阿里 ARoute 遇到的坑
  • 你一般什么时候会用到GPT?
  • 【每日一题Day362】LC274H 指数 | 二分答案
  • 【Leetcode】【每日一题】【中等】274. H 指数
  • Python selenium交互
  • 数据结构───链表
  • JavaScript_Pig Game保存当前分数
  • nginx请求时找路径问题
  • bootstrap.yml文件未加载
  • Hive简介及核心概念
  • 剪辑中遮罩可分几种 剪辑遮罩视频怎么做
  • DIY相机(一)libcamera库
  • 【漏洞复现】酒店宽带运营系统RCE
  • Python selenium无界面headless
  • gradle多模块依赖管理最佳实践
  • Linux之系统编程
  • 磨人的Ts