python中的函数概念

news2025/1/16 0:58:50

一段可以被重复使用的代码。

关于函数的定义

def=define (定义)

def  函数名(形参列表):形参列表中,可以有多个形参,多个形参之间使用逗号分隔,

关于函数的调用

(开始完成任务)

先定义一个函数

如果只是定义一个函数,而不去调用,则函数体里面的代码就不会执行,

python中要求先定义函数,再调用函数,

代码警告的处理

警告:提示你的代码可能存在问题,但是并不影响程序编译执行

错误:代码中实打实有问题,

在Python中,函数命名主要遵循PEP 8风格指南,该指南提倡使用小写字母和下划线的方式命名函数,这是最常见也是推荐的做法。这种方式要求所有单词小写,单词之间用下划线_分隔,例如my_function_name

PEP8这里python里面一套非常流行的编程规范。

函数中的参数

对于函数来说形参和实参的个数要匹配,

形参

固定的形式,固定对实参执行的操作。

实参

函数的调用是可以有多次的,同时每次调用的实参,也是可以不同的,

函数的实参,就是在函数调用的时候,赋值给形参

在C++/Java里面,不光要求形参和实参的个数要匹配,还要求类型也要匹配,

但是在python里,只是要求个数,对类型没有要求(动态类型)

至少要保证传入的数据要能够在函数体里面能够支持对应的运算操作,即可!

函数的返回值

改进之后的代码,在calcSum函数内部,只是进行了计算,而把打印的逻辑放到了函数外面,

calcSum把计算结果当做返回值,返回给“函数调用者”

在实际开发中,一般更倾向于第二种写法!

一个通用的编程原则:一个函数只做一件事!

第一个版本,既做了计算,又做了打印(和用户交互)

第二个版本,只做了计算,不关心如何和用户交互

一旦后续需要改变和用户交互的方式,第二种写法就更有优势(不必修改代码)

当前是通过控制台和用户交互的

让逻辑和交互/界面  分离的好处叫做解耦合

python中一个函数可以返回多个值!

(非常香的特性!)

C++/Java调用一个函数一次只能返回一个值!

C++要想返回多个值,可以通过输出型参数(指针/引用)

Java要想返回多个值,需要把多个值给包装成一个对象,返回这个对象

多元赋值

x,y=10,20

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

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

相关文章

[240605] FreeBSD 发布 v14.1 | ChatGPT 出现故障,部分用户无法使用

目录 FreeBSD 发布 v14.1ChatGPT 出现故障,部分用户无法使用 FreeBSD 发布 v14.1 一、概述 FreeBSD 项目发布了 FreeBSD 14.1-RELEASE,这是 stable/14 分支的第二个稳定版本。 二、主要更新 C 库在 amd64 架构上实现了 SIMD 字符串和内存操作&#x…

业财一体化的重点、难点和模式

业财一体化的内涵是企业将经营活动、财务管理、经营决策等进行科学的融合和管理,进而提高企业经营管理和财务决策的科学性,同时,基于IT技术、流程再造和组织重构更好的保障企业价值创造功能的实现。其涵盖管理循环、业务循环、信息循环三个双…

Bowyer-Watson算法

数学原理及算法过程 Delaunay 三角剖分是一种特殊的三角剖分方法,它满足以下两个重要性质: 最大化最小角性质:Delaunay 三角剖分通过避免细长的三角形来最大化所有三角形的最小角。空外接圆性质:在 Delaunay 三角剖分中&#xf…

lib库和dll库的介绍和使用

lib(静态库) 静态库定义:.lib文件是静态库文件,包含了在编译时被链接到目标程序的代码。使用静态库时,库的代码会被复制到最终生成的可执行文件中。优点: 性能:由于库代码在编译时就被集成到可…

大创报名步骤

目录 一、注册 二、创建项目 三、报名 一、注册 进入注册/登录 点击 点击 填写个人信息 二、创建项目 找到解压的文件 随便选一个 项目简介在你选择的文件中截取一段 询问自己寝室的人 被邀请者需要在微信公众号上搜索 “全国大学生创业服务网” 选择我的消息中同意 三、报名…

springcloud第4季 springcloud-gateway网关filter案例场景

一 filter作用 1.1 filter搭建流程 1.1.1 网关配置 1.1.2 服务提供者 1.1.3 测试验证 1.启动consul 2.启动zipkin 3.启动应用微服务 4.进行访问: http://localhost:6666/pay/wg/filter 1.2 其他常见API RemoveRequestHeadersec-fetch-site # 删除请求…

身份证数字识别DBNET

采用DBNET检测身份证数字所在区域,然后使用切割字符的方法,使用PCASVM训练和分类,支持C/PYTHON开发,只需要OPENCV 身份证数字识别DBNETPCASVM

网关(Gateway)- 内置过滤器工厂

官方文档:Spring Cloud Gateway 内置过滤器工厂 AddRequestHeaderGatewayFilterFactory 为请求添加Header Header的名称及值 配置说明 server:port: 8088 spring:application:name: api-gatewaycloud:nacos:discovery:server-addr: 127.0.0.1:8847username: nacos…

栈排序00

题目链接 栈排序 题目描述 注意点 对栈进行排序使最小元素位于栈顶最多只能使用一个其他的临时栈存放数据不得将元素复制到别的数据结构(如数组)中栈中的元素数目在[0, 5000]范围内 解答思路 本题是要实现一个小顶堆,可以直接使用Priori…

Autonomous Mobile 3D Printing of Large-Scale Trajectories——文献精读

一、文章信息 标题:Autonomous Mobile 3D Printing of Large-Scale Trajectories 作者:Julius Sustarevas 发表刊物:IEEE/RSJ 智能机器人与系统国际会议 (IROS) 发表时间:2022年10月23-27日 二、背景 大…

AI短片制作全流程详解——掌握未来视频创作新技能!

老铁们! 期待已久的AI短片免费直播分享来了!!! 还是老规矩,只讲干货,全程不废话! 在这个直播中,我们将深入探讨AI短片制作的全过程,从构思到最终输出,全方位解析每一个步骤的关键要素…

Ant Design Vue Table组件全单元格编辑实现方案

在ant上的table常见用法是一行的元素可编辑&#xff0c;如下&#xff1a; 但是现在有一个需求是全部单元格均可编辑&#xff0c;如何实现呢&#xff1f; 表格组件 <a-tablev-if"query.personnel_type 0"size"middle"row-key"id":scroll&qu…

中继器、集线器、网桥、交换机、路由器和网关

目录 前言一、中继器、集线器1.1 中继器1.2 集线器 二、网桥、交换机2.1 网桥2.1.1 认识网桥2.1.2 网桥的工作原理2.1.3 生成树网桥 2.2 交换机2.2.1 交换机的特征2.2.2 交换机的交换模式2.2.3 交换机的功能 三、路由器、网关3.1 路由器的介绍3.2 路由器的工作过程3.2.1 前置知…

迅雷极简易下载

一、简介 1、迅雷是一家全球领先的去中心化服务商&#xff0c;以技术构建商业&#xff0c;以服务创造共识&#xff0c;从而建立一个高效可信的存储与传输网络。 迅雷成立于2003年&#xff0c;总部位于中国深圳&#xff0c;2014年于纳斯达克上市&#xff08;纳斯达克股票代码&a…

Threejs墙体挖洞做门或窗

在使用Threejs代码构建的展厅中&#xff0c;需要在一面墙中间挖个洞作为门或窗户&#xff0c;效果如下&#xff1a; 引入ThreeBSP.js <script src"plugins/three/ThreeBSP.js"></script> 创建 // 1 定义墙面var cubeGeometry new THREE.BoxGeometry(1…

4.2 索引及其操作

对数据库中的表进行查询操作时有两种搜索扫描方式&#xff0c;一种是全表扫描&#xff0c;另一种就是使用表上建立的索引进行扫描。 全表扫描要查找某个特定的行&#xff0c;必须从头开始一一查看表中的每一行&#xff0c;与查询条件做对比&#xff0c;返回满足条件的记录&…

FFA-Net:用于单图像去雾的特征融合注意力网络

摘要 论文链接&#xff1a;https://arxiv.org/pdf/1911.07559v2 在这篇论文中&#xff0c;我们提出了一种端到端的特征融合注意力网络&#xff08;FFA-Net&#xff09;来直接恢复无雾图像。FFA-Net架构由三个关键组件组成&#xff1a; 一种新颖的特征注意力&#xff08;FA&…

Mac下删除系统自带输入法ABC,正解!

一、背景说明 MacOS 在 14.2 以下的系统存在中文输入法 BUG&#xff0c;会造成系统卡顿&#xff0c;出现彩虹圆圈。如果为了解决这个问题&#xff0c;有两种方法&#xff1a; 升级到最新的 14.5 系统使用第三方输入法 在使用第三方输入法的时候&#xff0c;会发现系统自带的 …

[论文笔记]Mixtral of Experts

引言 今天带来大名鼎鼎的Mixtral of Experts的论文笔记&#xff0c;即Mixtral-8x7B。 作者提出了Mixtral 8x7B&#xff0c;一种稀疏专家混合(Sparse Mixture of Experts&#xff0c;SMoE)语言模型。Mixtral与Mistral 7B具有相同的架构&#xff0c;不同之处在于每个层由8个前馈…

数据结构【树】(理论篇)

树的概念 树是一个非线性的数据结构&#xff0c;前面我们学习的顺序表、链表等等等等&#xff0c;他们的逻辑结构都是成一条线的&#xff0c;都是所有元素都是排成一条的&#xff1b;而树他是有多个分支的&#xff0c;是发散的。 树是由n&#xff08;n>0&#xff09;个有限…