【Python函数和类1/6】初始函数

news2024/10/6 6:02:58

目录

目标

导入

函数

内置函数

len()函数

type()函数

自定义函数

定义函数

函数定义规则

调用函数

小结

多次调用

函数的使用原则

总结


目标

        从今天开始,我们将通过6篇博文,来一起学习一下函数的相关知识。今天,我们主要从函数概念,内置函数,定义函数和调用函数四个方面来了解函数的基本知识。

导入

        首先,让我们来思考一个问题:我们为什么要使用函数呢?举个生活中的栗子:一个修理工会事先准备好螺丝刀,锤子等工具。这样在修理的过程中,遇到具体工具的应用场景时,拿来就用,而无需临时制造

函数

        而在Python中,当我们要使用重复性的代码时,我们通常会把这些代码打包并封装好,并为它贴上标签。而每当我们需要使用的时候,再通过标签名找到代码并自动执行,就会方便很多。这便是函数的由来。

        定义函数是封装了某一功能的代码块,可以重复使用

        隐喻:函数就像锤子或螺丝刀等工具,当遇到具体的应用场景时,可以拿来直接使用。

内置函数

        在Python中,函数可以分为内置函数自定义函数两大类。前面,我们接触的print()和range()函数都是Python的内置函数。

        定义:内置函数是Python提前定义好的函数,这些函数,我们可以提前使用。

len()函数

        到目前为止,Python的内置函数有68个。这里,我们再补充讲解两个常用的内置函数。第一个,是用于返回对象的长度或元素个数len()函数。

        如图,我们将列表传入len()函数的括号内,将结果赋值给变量 length 并输出,结果为4。

type()函数

        第二个,是查询对象的数据类型type()函数。如图,我们将1和"yequ"分别传入type()函数的括号内,并依次输出。结果分别为整型和字符串。

自定义函数

        在Python中,我们不仅要会使用一些常见的内置函数,而且还要会定制属于自己的函数。下面,我们通过一个案例来看看如何定义一个函数。

定义函数

        假设,我们是一家商铺的老板,需要每天在屏幕上滚动文字。

        文字分为两行输出:

“欢迎光临”

“商品一律九折”

        此时,我们就可以定义一个“输出欢迎语”的函数,来实现上述的功能。

        这几行代码,定义了一个叫做sayWelcome的函数。这个函数的功能是,输出欢迎语内容。

# 定义一个函数 sayWelcome
def sayWelcome():
    print("欢迎光临")
    print("商品一律九折")

def

        简单来说,关键字def是用来告诉Python,我们要定义函数。def在英文中是define的缩写,本意就是“定义”,它是定义函数的固定格式。

一个空格

        一个空格是函数定义的标准格式。

sayWelcome

        函数的名称,简称函数名。我们对函数命名,需要遵守一定的命名规则规范,我们稍后会进行讲解。

括号

        一对括号,是函数定义的标准格式。括号内可以不放东西,也可以放一些东西。遵循从易到难,我们今天学习括号不放东西的函数。

冒号

        一个冒号,它告诉Python接下来缩进的代码是属于这个函数的。

缩进

        四个空格。和判断、循环一样,函数内部的代码也需要缩进相应的空格。

函数体

        函数体是几行代码组成的代码块,用于实现函数功能

函数定义规则

        函数的命名规则和变量类似,可以简单看图了解一下。下面是一些错误示范:

以数字开头的6plus

出现特殊字符加号或空格的a+bmy name

调用函数

        一个工具,只有当我们使用它时,才能体现它的价值。函数也是这个道理,定义好的函数,只有当我们使用它时,它内部的代码块才会被执行。而在代码中使用定义好的函数,我们称为调用函数。

        定义一个sayWelcome函数,实现输出欢迎语的功能。第6行代码,调用了sayWelcome函数。

# 定义一个函数 sayWelcome
def sayWelcome():
    print("欢迎光临")
    print("商品一律九折")  
# 调用函数   
sayWelcome()

sayWelcome

        被调用的函数名。程序会通过函数名,来定位函数体中的代码。

括号

        这里一对括号是调用符号。表示在此处执行该函数的代码,是调用函数的标准格式。

小结

多次调用

        当然,对于定义好的函数,我们可以多次调用。如图,我们调用了两次setWatermark()函数。

def setWatermark():
    print("本篇博客版权由栗子编程所有")
    print("转载请说明出处")

setWatermark()
setWatermark()

函数的使用原则

        就像生活中,只有我们先制造了工具,工具才能使用。所以,函数的使用必须遵循先定义,后调用的原则。当我们违背这个原则时,程序会报错。

总结

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

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

相关文章

Matlab|计及电池储能寿命损耗的微电网经济调度

目录 1 主要内容 储能寿命模型 负荷需求响应 2 部分代码 3 程序结果 4 下载链接 1 主要内容 该程序参考文献《考虑寿命损耗的微网电池储能容量优化配置》模型,以购售电成本、燃料成本和储能寿命损耗成本三者之和为目标函数,创新考虑储能寿命损耗约…

一键换脸的facefusion

FaceFusion 一个开源换脸软件,提供UI界面,启动后可直接在浏览器上面上传图片进行换脸操作。 电脑环境win10,软件pycharm,需要提前安装好python环境,推荐使用Anaconda3。关注文章下方公共号发送 “ 软件安装包 ”可以获…

【Java跳槽面试必备】2024年最新八股文

Java基础面试题 Java的特点 Java 与 C 的区别 JDK/JRE/JVM三者的关系 Java程序是编译执行还是解释执行? 面向对象和面向过程的区别? 面向对象有哪些特性? 数组到底是不是对象? Java的基本数据类型有哪些? 为什么不能用…

C. Grouping Increases

Here 解题思路 两个序列,保持顺序对于代价的产生进行考虑当添入一个大于当前序列最后值的数,代价加1,但下次判断标准变大当添入一个小于当前序列最后值的数,代价不增,但下次判断标准变小考虑形象化描述将两个序列看作…

Qt 文件操作

文件概述 文件操作是应用程序必不可少的部分。Qt 作为一个通用开发库,提供了跨平台的文件操作能力。Qt 提供了很多关于文件的类,通过这些类能够对文件系统进行操作,如文件读写、文件信息获取、文件复制或重命名等。 输入输出设备类 在 Qt …

iOS_convert point or rect 坐标和布局转换+判断

文章目录 1. 坐标转换2. 布局转换3. 包含、相交 如:有3个色块 let view1 UIView(frame: CGRect(x: 100.0, y: 100.0, width: 300.0, height: 300.0)) view1.backgroundColor UIColor.cyan self.view.addSubview(view1)let view2 UIView(frame: CGRect(x: 50.0, …

什么是V R美术馆|V R互动体验店加盟|虚拟现实元宇宙

VR美术馆是利用虚拟现实(VR)技术构建的数字化美术馆,通过虚拟展厅和虚拟展览等形式展示艺术作品、举办艺术展览,为用户提供一种沉浸式的艺术体验。用户可以通过穿戴VR头显等设备,在虚拟环境中自由浏览各种艺术作品&…

Python环境下一种新的类谱峭度算法的旋转机械故障诊断模型

谱峭度SK的本质是计算每根谱线峭度值的高阶统计量,谱峭度对信号中的瞬态冲击成分十分敏感,能有效的从含有背景噪声信号中识别瞬态冲击及其在频带中的分布。由于谱峭度的复杂性、缺少一个正式的定义和一个容易理解的计算过程使其在很长时间内都未能引入到…

Vue3进阶(叁):关于 Vue2 项目迁移至 Vue3 的几点注意事项

文章目录 一、前言二、Vue3 新特性三、Vue2 安全保障四、迁移方案4.1 迁移辅助工具 vue/compat 库 五、迁移注意事项5.1 升级和兼容性5.2 组件的改变5.3 Composition API5.4 Vue Router5.5 Vuex5.6 其他库和插件5.7 差异示例5.7.1 创建vue5.7.2 定义时间格式全局过滤器5.7.3 vu…

修复ubuntu引导

一、制作ubuntu启动U盘 进入启动盘后,点击Try ubuntu,进入U盘的ubuntu系统。 二、配置和添加源 sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update三、运行 Boot Repair重新制作引导 sudo boot-repair注意&#x…

QT 控件有突出感,定义控件边框

QT 控件有突出感,定义控件边框 1.设计师页面 在flat部分选中 这个时候按钮会失去边框如下图: 然后在.cpp文件中写入代码: ui->pushButton->setStyleSheet("border: 1px solid gray;");按钮就有了新的边框:

hdlbits系列verilog解答(Hadd)-65

文章目录 一、问题描述二、verilog源码三、仿真结果一、问题描述 本节我们创建一个半加法器。半加法器将两个位相加(无进位)并产生求和和进出。 模块声明 module top_module( input a, b, output cout, sum ); 思路: 可用真值表写出逻辑表达式,或者直接用数据流方式。 二…

VMware和Xshell连接

1.开启虚拟机 2.使用管理员账户,点击未列出 3.输入用户名密码 4.点击编辑虚拟网络编辑器 5.记住自己的网关和IP地址 6.打开终端 7.输入命令,vim / etc / sysconfig / network -scripts / ifcfg-ens33 回车 8.修改图中两处按“ I ”键进入编辑 d…

【网安小白成长之路】2.PHP与MySQL交互

🐮博主syst1m 带你 acquire knowledge! ✨博客首页——syst1m的博客💘 🔞 《网安小白成长之路(我要变成大佬😎!!)》真实小白学习历程,手把手带你一起从入门到入狱🚭 &…

Jenkins--在Linux上使用Docker安装

一、Jenkins 简介 Jenkins是一个流行的开源自动化服务器,用于持续集成和持续交付(CI/CD)。Jenkins的核心功能主要包括以下几点: 持续集成:Jenkins可以监控版本控制系统(如Git、SVN)中的代码变…

Django开发复盘

一、URL 对于一个不会写正则表达式的蒟蒻来说,在urls.py中就只能傻傻的写死名字,但是即便这样,还会有很多相对路径和绝对路径的问题(相对ip端口的路径),因为我们网页中涉及到页面跳转,涉及到发送…

【LaTeX】7实现章节跳转

使用 LaTeX 实现章节跳转 写在最前面1. 引入 hyperref 包2. 标记章节3. 引用章节示例代码注意 小技巧总结 🌈你好呀!我是 是Yu欸 🌌 2024每日百字篆刻时光,感谢你的陪伴与支持 ~ 🚀 欢迎一起踏上探险之旅,…

江协STM32:点亮第一个LED灯和流水灯

很多单片机都是高电平弱驱动,低电平强驱动,所以这里是低电平有效 点亮一个LED灯 操作STM32的GPIO需要三个操作: 第一个使用RCC开启GPIO的时钟 第二步使用GPIO_Init函数初始化GPIO 第三步使用输出或输入函数控制GPIO 1.使用RCC开启GPIO的时…

使用patchelf解决vscode远程连接不支持低版本glibc的问题

使用patchelf解决vscode远程连接不支持低版本glibc的问题 目录 使用patchelf解决vscode远程连接不支持低版本glibc的问题1. 动态链接库下载2. 用 patchelf 修改 vscode-server 依赖的 glibc 版本 VScode 1.86 版本的 remote 要求 glibc 2.28 及以上,于是在各种旧版本…

python--函数的参数问题

1.函数的参数: 默认值参数:通过定义函数时,将可能调用时不怎么变化的参数,给定默认值,在调用时方便调用 注意:位置参数不能写在默认值参数后边 可变参数(不定长参数):在开…