【第二部分--Python之基础】02

二、运算符与程序流程控制

1、运算符

1.1 算术运算符

算术运算符用于组织整数类型和浮点类型的数据,有一元运算符二元运算符之分。

一元算术运算符有两个:+(正号)和-(负号),例如:+a还是a,-a是对a的取反运算。

二元算术运算符如右表所示

 

1.2 比较运算符

比较运算符用于比较两个表达式的大小,其结果是布尔类型的数据,即True或False。

比较运算符可用于任意类型的数据,但参与比较的两种类型的数据要相互兼容,即能进行隐式转换。例如:整数、浮点和布尔这三种类型是相互兼容的。

 

 1.3 逻辑运算符

 逻辑运算符用于对布尔型变量进行运算,其结果也是布尔型

Python也采用了“短路”设计。“短路”指逻辑与”和“逻辑或”在计算过程中只要结果确定则不再计算后面的表达式,从而提高效率,有点像电路短路。

 

 

 

 1.4 位运算符

位运算是以二进位(bit)为单位进行运算的,操作数和结果都是整数类型的数据

 

 

按位取反运算中涉及原码、补码、反码运算,比较麻烦。我归纳总结了一个公式:~a=(a+1)X-1,如果a为十进制数178,则~a为十进制数-179;如果a为十进制数-20,则~a为十进制数19。怎么样,这个公式好用吧!

1.5 赋值运算符

 赋值运算符只是一种简写只有算术运算和位运算中二元运算符才有对应的赋值运算符。

 

 

 1.6 运算符的优先级

 

位运算中的难点位反、右移和左移,位反过程比较复杂但可以使用我归纳的公式~a=(a+1)x-1推算出结果右移时高位采用符号位补位符号位为1说明是负数,用1补位;符号位为0说明是正数,用0补位。

位运算优先级中,优先级从高到低大体是:算术运算符位运算符→关系运算符→逻辑运算符→赋值运算符。

2、程序流程控制

2.1 分支语句

Python的设计理念是简单、刚好够用,所以在Python中没有switch语句,多分支功能是通过if-elif-else实现的

2.1.1 if 结构 

if结构的语法如下: 

示例代码如下:

 

2.1.2 if-else 结构

if-else结构的语法如下:

 

 示例代码如下:

 2.1.3 if-elif-else 结构

 if-elif-else结构的语法如下:

示例代码如下:

2.2 循环语句

Python支持两种循环语句:while和for

2.2.1 while语句

在Python中只有while语句,没有do-while语句。while语句先判断循环条件,若条件为True则执行循环体。

一个简单的示例代码如下:

 

 示例代码如下:

 修改示例代码:

 可以对比一下语句的运行结果:

 2.2.2 for语句

基于简单的设计理念,在Python中只有一种for语句,即for-in语句,它可以遍历任意可迭代对象中的元素

注:可迭代对象包括字符串、列表、元组、集合和字典等。

 

示例代码如下:

 

示例代码如下:

 修改示例代码:

 可以对比一下语句的运行结果:

 2.3 跳转语句

跳转语句能够改变程序的执行顺序,包括break、continue和returnbreak和continue用于循环体中而return用于函数中。本节先介绍break和continue语句,对于return语句,将在后面的章节中介绍。

2.3.1 break语句

break语句用于强行退出循环体,不再执行循环体中剩余的语句

 示例代码如下:

 只循环了3次,item==3之后的数据不会被打印出来。

2.3.2 continue语句

 continue语句用于结束本次循环,跳过循环体中尚未执行的语句,接着进行终止条件的判断,以决定是否继续循环。

 示例代码如下:

注意:在输出结果中没有3。

2.4 动动手——计算水仙花数

下面编写代码,通过while循环计算出水仙花数。提示:水仙花数是一个三位数,三位数各位的立方之和等于三位数本身。

下页给出的只是参考代码,你可以自由发挥。计算出的水仙花数有4个:153、370、371和407。

计算结果: 

本章的难点是循环语句(while和for)中的else语句。记住:在循环体正常结束时会执行else语句,如果发生中断,则不运行else语句。

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

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

相关文章

Prototype

本题链接:登录—专业IT笔试面试备考平台_牛客网. 题目: 样例: 输入 168 输出 42 思路: 根据题意, 吸收怪物是 w * n ,其中 怪物 n 一定是质数,并且 AlexMercer 可以变成 w 的任一因子。 从中…

赋能工业智能化升级 | 基于ACM32 MCU的工业通用变频器方案

近年来,随着智能制造对节能的更高要求,通用变频器在工业领域的应用愈加广泛。变频器是一种先进的调速控制设备,通过对电源频率的控制可以实现对电机转速的精确调节,从而提高设备的性能和节能效果。 01 变频器概述 变频器&#xf…

Prometheus(六):Blackbox监控安装配置

目录 1 Blackbox Exporter安装配置1.1 Blackbox Exporter简介1.2 安装1、安装-使用源码包安装下载安装blackbox.yml文件配置快速启动文件 2、安装-使用docker 1.3 Prometheus配置1、http监控2、ping探测-ip3、https probe-DNS解析4、metrics配置5、TCP监控-探测端口 总结 1 Bla…

零基础机器学习(4)之线性回归的基本原理

文章目录 一、线性回归的基本原理1.相关与回归2.线性回归的原理分析①线性回归的一般公式②线性回归的损失函数③线性回归方程的参数求解方法A.最小二乘法B.梯度下降法 一、线性回归的基本原理 1.相关与回归 相关描述的是变量之间的一种关系。 从统计角度看,变量之…

【氮化镓】镁激活退火对p-GaN迁移率和阈值电压的影响

【Mg activation anneal of the p-GaN body in trench gate MOSFETs and its effect on channel mobility and threshold voltage stability】 文献总结: 本研究探讨了在沟道栅MOSFETs中,镁(Mg)激活退火步骤对p型氮化镓&#xf…

一款优秀的 Pycharm AI插件 ,你值得拥有!

AI插件部分功能截图 代码自动生成和补全 账号免费领取方式 关注博主,私聊回复 插件 Pycharm相关介绍 PyCharm是一款由JetBrains开发的集成开发环境(IDE),专为Python语言而设计。它提供了丰富的功能和强大的工具,使得Py…

TS函数类型

函数类型表达式 function hello(x: string) {console.log(x) } //greeter函数的参数是一个函数fn,fn也有一个string类型参数,无返回值。 function greeter(fn: (a: string) > void) {fn(hello) } greeter(hello)也可以把定义参数类型的语句单独提取出…

在FMEA风险控制中,首检的重要性!——SunFMEA软件

在制造业中,FMEA被广泛应用于产品设计、生产过程和产品服务的各个阶段。而首检,作为生产过程中的一个重要环节,同样承载着风险控制和质量保障的重任。 今天SunFMEA软件系统从FMEA风险控制的角度来看,首检具有至关重要的地位。首检…

文件上传漏洞-客户端检测

本文章仅供学习参考!!! 靶场环境:upload-labs-master/pass-1 客户端检测 客户端检测一般都是在网页上写一段 javascript 脚本,校验上传文件 的后缀名,有白名单形式也有黑名单形式。 判断方式&#xff1…

linux将未分配空间分配到指定挂载点

lsblk命令查看硬盘,空间有200G,子分区加起来才100个G,有100个G未使用 lsblk给硬盘分配盘符 fidisk /dev/vda n 回车 回车 w将所有未分配的空间分区,这里有100个GB 查看分配的分区 /dev/vda4 fidisk -lpvcreate /dev/vda4查看…

基于多时间尺度滚动优化的多能源微网双层调度模型—论文复现

目录 一、主要内容: 二、程序运行效果: 二、研究内容摘要: 三、多能源微电网: 四、两阶段多时间尺度调度框架: 五、代码数据下载: 一、主要内容: 本代码主要做的是一个多能源微网的优化调…

张驰咨询:用六西格玛管理优化医疗机构成本

医疗行业作为社会的重要组成部分,应对人类健康问题发挥着至关重要的作用。然而,在追求更高水平的医疗服务和患者护理的过程中,医疗机构普遍面临一系列复杂的挑战和痛点。这些痛点不仅影响到医疗服务的效率和效果,还可能对患者的安…