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

Python 基本语法(二)

  目录

算数运算符

+、-、*、/

%、**、//

关系运算符

==、!=、<、>、<=、>=

小数的比较

逻辑运算符

赋值运算符


         本期继续进行 Python 基本语法的学习。

 算数运算符

        算数运算符主要用于变量之间的算数运算Python 中的算数运算符主要包含,+(加)、-(减)、*(乘) 、/(除)、%(取余)、**(乘方),//(向下取整除法)。

+、-、*、/

        代码如下。

a = 1 + 2 * 8 / 4
print(a)a = (1 + 2) * 3 /4
print(a)

        运行结果如下。

        与 C++ 中的加减乘除一样,Python 中的优先级依然是,先计算乘除后计算加减。但是,如果想让优先级较低的运算符先进行运算,必须使用 () 提升其优先级

        同时,我们通过上述的运行结果可以看出,Python 中的乘法的结果可以是小数,这一点区别于 C++ ,C++ 中乘法的结果一定是满足 同类型的变量/同类型的变量=同类型的变量这一规则。

%、**、//

        代码如下。

a = 10
b = a % 3
print(b)a = 4
b = 4**2
c = 4**0.5
print(b)
print(c)a = 5
b = 5 // 2
c = 5 // -2
print(b)
print(c)

        运行结果如下。

        取模和乘方很简单,这里不做过多阐述,向下取整除法,就是将最终的计算结果向下取整,注意区分正整数和负整数向下取整的方向

关系运算符

        关系运算符主要用于判断变量之间的大小关系,Python 中的关系运算符主要有 ==(等于),!=(不等于),>(大于),<(小于),>=(大于等于),<=(小于等于)

        关系运算符比较之后的结果为 bool 类型,结果之后 true false 两种类型。

==、!=、<、>、<=、>=

        代码如下。

a = 10
b = 20
print(a == b)
print(a != b)
print(a < b)
print(a > b)
print(a <= b)
print(a >= b)a = 'hello'
b = 'ihello'
print(a > b)

        运行结果如下。

        这里需要注意一点,在 Python 中也是支持字符串的比较的,主要是从字符串的第一个字符开始,按照字符的字典序进行比较,从 a~z 的顺序,字母越靠前,字符越大,如果相等就继续判断下一个字符。

        正如上述的 hello ihello,从第一个字符开始进行比较,因为 h i 之前,所以 hi 小,所以 hello 就比 ihello 小。

小数的比较

        在 Python 中,小数的精度会在计算时丢失,所以不能单单的以关系运算符作为大小比较的标准。

        代码如下。

a = 0.1
b = 0.2
print((a + b) == 0.3)
print(a + b)

        代码运行结果如下。

        通过运行结果不难看出,在 Python 0.1 + 0.2 的结果因为精度的丢失,在最终计算出的结果并不是 0.3 ,所以要比较小数的相等,必须手动的指定误差范围,如果两个小数相减之后的结果在误差范围内,我们就认为这两个数相等。

        代码如下。

a = 0.1
b = 0.2
print( -0.000001 < (a + b) - 0.3 < 0.000001 )

        如上代码,在差值设定的范围内,我们就认为两个小数相等。

        运行结果如下。     

逻辑运算符

        Python 也有自己的逻辑运算符,分别为 and(逻辑与) or(逻辑或)not(逻辑反)。

        C++ 逻辑运算符的含义一样,逻辑与为一假则假逻辑或为一真则帧逻辑反则给整个逻辑取反

        代码如下。

a = 1
b = 2
c = 3#逻辑与,都为真则整体为真
print(a < b and b < c)
#逻辑与,一假则假
print(a > b and b < c)
print("---------------------------------------------")
#逻辑或,都为假则整体为假
print(a > b and b > c)
#逻辑或,一真则真
print(a > b or b < c )
print("---------------------------------------------")
#逻辑非,给计算记过取反
print(not a < b)

        代码运行结果如下。

        运行结果符合预期。

赋值运算符

        在 Python 中,赋值运算符与 C++ 中的复制运算符一致,都为 = ,表示将一个常量值赋值给一个变量,或者将一个变量的值赋值给另一个变量。 

        这里一定要区分 === 的区别,= 表示赋值,而 == 为关系运算符,用于判断两个变量的值是否相等

        代码如下。

#语法不允许
1 = 2
#常量赋值给变量
a = 1
#变量赋值给变量
b = 2
a = b

        在 Python 中,支持连续赋值多元赋值,连续赋值可以同时给多个变量赋相同的值,这个多元赋值有什么用呢?

        多元赋值可以用来简化两个变量值交换的代码。

        代码如下。

#连续赋值
c = d = 3
print(c,d)
print("-------------------------------------------------")#多元赋值
e,f = 4,5
print(e,f)
print("-------------------------------------------------")#交换 e 和 f 的值
#传统写法
temp = e
e = f
f = temp
print(e,f)
print("-------------------------------------------------")#多元赋值写法
e,f = f,e
print(e,f)

        我们先让 e f 以传统的方式进行值的交换,然后最终让 e f 以多元赋值的方式进行值的交换。        

        上述代码运行结果如下。

        我们发现,确实通过多元赋值的方法实现了两个变量值的交换,具体的原理简单理解为两个变量同时进行互相赋值。

        在 Python 中,还有 += ,-=,*=,\=、**= 的操作,以 += 为例,其他符号同理,代码如下。

a = 3
print(a)
a += 1
print(a)

        运行结果如下。

        a += 1 ,展开其实就可以理解为 a = a + 1

        在 C++ 中我们学过了自增 ++自减 -- 操作,但是在 Python 中是不支持这样的语法的。

        代码如下。

a = 1
print(a)
++a
print(a)
a++

        代码运行结果如下。

        ++a 表示给 a 连续取了正号,所以最终 a 的值还是 1,但是 a++ 在 Python 中是不支持这种语法的。

        至此,Python基本语法全部学习结束,后续会为大家带来 Python 的进阶语法。

        本期内容到此结束^0^

http://www.dtcms.com/a/336122.html

相关文章:

  • 数据结构初始知识
  • 利用标准IO实现寻找文件中字符出现最多次数
  • 问津集 #5:Crystal: A Unified Cache Storage System for Analytical Databases
  • 6-服务安全检测和防御技术
  • gitee SSH配置
  • 探索分子世界:结构、性质、反应与前沿进展
  • 编程算法实例-求一个整数的所有因数
  • 力扣 hot100 Day76
  • WPFC#超市管理系统(6)订单详情、顾客注册、商品销售排行查询和库存提示、LiveChat报表
  • 代码随想录刷题——字符串篇(四)
  • 深度学习之优化器
  • 自然语言处理NLP---预训练模型与 BERT
  • Python界面设计【QT-creator基础编程 - 01】如何让不同分辨率图像自动匹配graphicsView的窗口大小
  • Git 入门指南:核心概念与常用命令全解析
  • 「数据获取」《中国文化文物与旅游统计年鉴》(1996-2024)(获取方式看绑定的资源)
  • 链式前向星、vector存图
  • Kafka_Broker_副本基本信息
  • 【FreeRTOS】信号量与互斥量
  • LeetCode热题100--104. 二叉树的最大深度--简单
  • 给纯小白的Python操作 PDF 笔记
  • 【牛客刷题】BM63 跳台阶:三种解法深度解析(递归/DP动态规划/记忆化搜索)
  • Baumer高防护相机如何通过YoloV8深度学习模型实现工作设备状态的检测识别(C#代码UI界面版)
  • Shell脚本-流程控制语句基本语法结构
  • Mutually aided uncertainty
  • 5G NR PDCCH之速率匹配
  • 【数据结构】堆和二叉树详解——上
  • 神经网络中的梯度概念
  • 【杂谈】-以质代量:谷歌主动学习范式重构AI训练逻辑
  • 把 AI 变成“气味翻译官”——基于微型电子鼻的低功耗 VOC 实时识别系统
  • 13、系统设计