函数的介绍

目录

一、函数介绍

1、函数的介绍

2、自定义函数

3、函数的好处

二、函数的定义

1、函数的定义

2、函数的调用

3、快速入门案例

三、函数-调用机制

1、函数-调用过程

2、return语句


一、函数介绍

1、函数的介绍

1)为了完成某一功能的程序指令(语句)的集合,称为函数

2)在Python中,函数分为:系统函数、自定义函数(查看Python文档)

内置函数:内置函数 — Python 3.12.4 文档

模块提供的函数:Python 模块索引 — Python 3.12.4 文档

2、自定义函数

  • 内置函数和模块中提供的函数都是系统函数(由Python提供)
  • 自定义函数是程序员根据业务需要开发的

3、函数的好处

  • 提高代码的复用性
  • 可以将实现细节封装起来,然后提供其他用户来调用即可

二、函数的定义

1、函数的定义

1)函数代码块以def关键字开头,后接函数标识符名称和圆括号()

2)函数内容以冒号:起始,并且缩进

3)函数参数(a,b),可以有多个,也可以没有,如果没有,即直接(),(a,b)也称为形参列表

4)函数可以有返回值,也可以没有,如果没有return,相当于返回None

2、函数的调用

1)函数定义好了,并不会自动执行,需要程序员调用,才会执行

2)调用方式:函数名(实参列表),比如:max(10,20)

3、快速入门案例

1)自定义cry函数,输出“小猫喵喵叫..”

# 自定义cry函数,输出“小猫喵喵叫..”"""思路分析:1、函数名:cry2、形参列表:无()3、函数体:完成输出“小猫喵喵叫...”
"""# 定义函数
def cry():print("小猫喵喵叫...")# 调用函数
cry()

2)自定义函数cal01函数,可以计算从1+...+1000的结果

# 自定义函数cal01函数,可以计算从1+...+1000的结果"""思路分析:1、函数名:cal012、形参列表:无()3、函数体:完成可以计算从1+...+1000的结果
"""# 定义函数
def cal01():total = 0# 函数体for i in range(1,1001):total += iprint("total =", total)# 调用函数cal01()
cal01()

3)自定义函数cal02函数,该函数可以接收一个数n,计算从1+...+n的结果

# 自定义函数cal02函数,该函数可以接收一个数n,计算从1+...+n的结果"""思路分析:1、函数名:cal022、形参列表:(n)3、函数体:完成可以计算从1+...+n的结果
"""# 定义函数
def cal02(n):total = 0# 函数体for i in range(1, n+1):total += iprint("total =", total)# 调用函数cal02()
# 1、cal02(10)调用函数cal02
# 2、(10)表示调用参数时,传入了实参10,即把10赋给了形参n,n=10
cal02(10)

4)自定义get_sum函数,可以计算两个数的和,并返回结果

# 自定义get_sum函数,可以计算两个数的和,并返回结果"""1、函数名:get_sum2、形参列表:(num1,num2)3、函数体:可以计算两个数的和,并返回结果
"""# 定义函数
def get_sum(num1,num2):# total = num1 +num2# return totalreturn num1 +num2# 调用函数
"""1、get_sum(30,50)调用get_sum2、(30,50)表示传入了两个实参30,50,把30赋给num1,把50赋给num23、result就是接收get_sum()函数返回的结果
"""result = get_sum(30,50)
print("result =", result)

三、函数-调用机制

1、函数-调用过程

以自定义get_sum函数,可以计算两个数的和,并返回结果为例

2、return语句

1)基本语法

def 函数名(参数列表):

      语句...

      return 返回值

2)说明:如果没有return语句,默认返回None,None是内置常量,通常用来代表空值的对象

def f1():print("hi")r = f1()
# r就是 None
print("r= ", r)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/49598.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Postgres实战】Postgres的角色权限本地/在线不一致?

背景 Gin-Vue-Admin是开源的全栈开发平台,可以担任企业内部后台管理的职责。官网地址是:gin-vue-admin | GVA 文档站。上图为在线demo展示页面。 它的后台使用Golang(The Go Programming Language (google.cn)),基于…

JSON 文件第一段飘红

问题 原因 这个问题通常发生在尝试用 ESLint 去解析 JSON 文件时。ESLint 主要设计用于检查 JavaScript 代码的语法和风格,而JSON是一种数据交换格式,不包含 JavaScript 的逻辑结构,如函数、变量声明等。 解释报错原因 当ESLint遇到它不能识…

让 AI 开发更高效、低成本,DigitalOcean 公布 GPU Droplet 云主机产品

全球知名云服务供应商 DigitalOcean 在近期举行的 Deploy 大会上公布了全新的 GPU Droplet 云主机服务,这标志着DigitalOcean 在支持AI和机器学习工作负载方面迈出了重要一步。 DigitalOcean 的 GPU Droplet(云主机) DigitalOcean 自 2023 …

【STM32嵌入式系统设计与开发拓展】——12_Timer(定时器中断实验)

目录 1、什么是定时器?定时器用于测量时间间隔,而计数器用于计数外部事件的次数 2、定时器的主要功能和用途?3、定时器类型?4、定时器的编写过程5、代码分析定时器计算? 1、什么是定时器? 定时器就是计数器…

正点原子STM32(基于HAL库)6

目录 TFTLCD&#xff08;MCU 屏&#xff09;实验TFTLCD 简介TFTLCD 简介液晶显示控制器FSMC 简介FSMC 关联寄存器简介 硬件设计程序设计FSMC 和SRAM 的HAL 库驱动程序流程图程序解析 下载验证 LTDC LCD&#xff08;RGB 屏&#xff09;实验RGBLCD<DC 简介RGBLCD 简介LTDC 简介…

力扣高频SQL 50题(基础版)第九题

文章目录 力扣高频SQL 50题&#xff08;基础版&#xff09;第九题197. 上升的温度题目说明思路分析实现过程准备数据实现方式结果截图总结 力扣高频SQL 50题&#xff08;基础版&#xff09;第九题 197. 上升的温度 题目说明 Weather ---------------------- | Column Name…

深度学习实战笔记2实战Kaggle比赛:预测房价

此数据集由Bart de Cock于2011年收集 :cite:De-Cock.2011&#xff0c; 涵盖了2006-2010年期间亚利桑那州埃姆斯市的房价。 这个数据集是相当通用的&#xff0c;不会需要使用复杂模型架构。 它比哈里森和鲁宾菲尔德的波士顿房价 数据集要大得多&#xff0c;也有更多的特征。 1下…

数据结构之深入理解简单选择排序:原理、实现与示例(C,C++)

文章目录 一、简单选择排序原理二、C/C代码实现总结&#xff1a; 在计算机科学中&#xff0c;排序算法是一种非常基础且重要的算法。简单选择排序&#xff08;Selection Sort&#xff09;作为其中的一种&#xff0c;因其实现简单、易于理解而受到许多初学者的喜爱。本文将详细介…

El-Table 表格的表头字段切换

最近写了一个小功能&#xff0c;比较有意思&#xff0c;特此博客记录。 提出需求&#xff1a;需要表头字段变化&#xff0c;但是我在官网上的表格相关上查找&#xff0c;没有发现便捷方法。 于是我有两个想法&#xff1a;1.做三个不同的表格。2.做一个表格使用不同的表头字段。…

python如何调用matlab python package库matlab转python安装包调用使用简单示例

说明(废话) 之前没有进行python调用过matlab&#xff0c;前面用matlab engine for python可以通过调用matlab的源码文件的形式可以调用工程&#xff0c;但是这又有一个问题&#xff0c;就是在运行的时候必须提供python和matlab的全部源码 该文章是通过matlab源码转python pack…

cdp碳信息披露

在全球化日益加深的今天&#xff0c;环境保护和可持续发展已成为全球共识。企业作为经济社会的主体&#xff0c;其在环保领域的行动和决策不仅影响着自身的发展&#xff0c;更对整个社会乃至全球的生态环境产生深远影响。CDP&#xff08;Carbon Disclosure Project&#xff0c;…

很酷的仿真翻页书HTML源码,书本页面是加载的图片,基于JQuery实现的翻页特效,结合一些js插件,看起来很酷,在实现在线翻书项目。

仿真翻页书HTML源码https://www.bootstrapmb.com/item/14742 创建一个仿真的翻页书效果在HTML和CSS中可以通过多种方式实现&#xff0c;但通常这也会涉及到JavaScript&#xff08;或jQuery&#xff09;来处理交互和动画。以下是一个简单的示例&#xff0c;展示如何使用HTML、…

【Leetcode】十八、动态规划:不同路径 + 全1的最大正方形

文章目录 1、动态规划2、leetcode509&#xff1a;斐波那契数列3、leetcode62&#xff1a;不同路径4、leetcode121&#xff1a;买卖股票的最佳时机5、leetcode70&#xff1a;爬楼梯6、leetcode279&#xff1a;完全平方数7、leetcode221&#xff1a;最大正方形 1、动态规划 只能…

10KW级电机电流特性曲线推导及校验

1.首先进行数据拟合 2.拟合曲线依照电机参数标准化 30A处转差率应为6.6%。 3.全域电流对照表&#xff1a; 4.实际的电流年变化曲线&#xff08;因为电压不稳定&#xff09; 4.1 以日为单位的电流起伏 蓝色的部分标出了工作日的切换。 4.2 某个月的电流趋势图&#xff1a;

argon主题调整日记

前言 argon主题是一款由solstice23开发的一款简洁美观的WordPress主题&#xff0c;在使用过程中也发现了几个可以优化的点&#xff0c;在查阅主题文档无果后对其进行以下几点修改。 1、使用子主题 为了避免修改源文件而引起主题更新后修改丢失的问题&#xff0c;还是尽量使用子…

C# yaml 配置文件的用法(一)

目录 一、简介 二、yaml 的符号 1.冒号 2.短横杆 3.文档分隔符 4.保留换行符 5.注释 6.锚点 7.NULL值 8.合并 一、简介 YAML&#xff08;YAML Aint Markup Language&#xff09;是一种数据序列化标准&#xff0c;广泛用于配置文件、数据交换和存储。YAML的设计目标是…

【Java 数据结构】ArrayList类介绍

ArrayList类介绍 初识List接口ArrayList类ArrayList类是什么顺序表的模拟实现初始化增加元素删除元素查找元素修改元素 ArrayList类使用构造方法ArrayList源码阅读常用方法及其注意事项 初识List接口 List 是集合框架中的一个接口, 它的里面包含了一些方法, 例如add(), remove…

记录下 java.lang.UnsatisfiedLinkError 错误

java.lang.UnsatisfiedLinkError 错误 java.lang.UnsatisfiedLinkError 错误解决方式一解决方式二 前因&#xff1a;在我的项目中调用到设备&#xff0c;使用厂家提供的sdk中有dll文件调用&#xff0c;在项目中引用dll文件提示了异常&#xff0c;奇怪的是如果把dll直接copy放在…

企业微信获客助手广告平台深度回传/双回传设置教程参考

很多商家在使用【转化宝】进行推广时只采用了单回传&#xff0c;其实很多情况下单回传即可满足推广模型优化需求&#xff1b;但是最近很多专业化广告运营的代投或运营都开始采用双回传&#xff0c;【转化宝】支持抖音巨量引擎、百度营销广告、快手广告、腾讯广告等均支出深度优…

前端自动化测试(一):揭秘自动化测试秘诀

目录 [TOC](目录)前言自动化测试 VS 手动测试测试分类何为单元测试单元测试的优缺点优点缺点 测试案例测试代码 测试函数的封装实现 expect 方法实现 test 函数结语 正文开始 &#xff0c; 如果觉得文章对您有帮助&#xff0c;请帮我三连订阅&#xff0c;谢谢&#x1f496;&…