跨境互联网 跨境互联网
首页
  • AI 工具

    • 绘图提示词工具 (opens new window)
    • ChatGPT 指令 (opens new window)
  • ChatGPT

    • ChatGP T介绍
    • ChatGPT API 中文开发手册
    • ChatGPT 中文调教指南
    • ChatGPT 开源项目
  • Midjourney

    • Midjourney 文档
  • Stable Diffusion

    • Stable Diffusion 文档
  • 其他

    • AIGC 热门文章
    • 账号合租 (opens new window)
    • 有趣的网站
  • Vue

    • Vue3前置
  • JAVA基础

    • Stream
    • Git
    • Maven
    • 常用第三方类库
    • 性能调优工具
    • UML系统建模
    • 领域驱动设计
    • 敏捷开发
    • Java 测试
    • 代码规范及工具
    • Groovy 编程
  • 并发编程&多线程

    • 并发编程
    • 高性能队列 Disruptor
    • 多线程并发在电商系统下的应用
  • 其他

    • 面试题
  • 消息中间中间件

    • Kafka
    • RabbitMQ
    • RocketMQ
  • 任务调度

    • Quartz
    • XXL-Job
    • Elastic-Job
  • 源码解析

    • Mybatis 高级使用
    • Mybatis 源码剖析
    • Mybatis-Plus
    • Spring Data JPA
    • Spring 高级使用
    • Spring 源码剖析
    • SpringBoot 高级使用
    • SpringBoot 源码剖析
    • Jdk 解析
    • Tomcat 架构设计&源码剖析
    • Tomcat Web应用服务器
    • Zookeeper 高级
    • Netty
  • 微服务框架

    • 分布式原理
    • 分布式集群架构场景化解决方案
    • Dubbo 高级使用
    • Dubbo 核心源码剖析
    • Spring Cloud Gateway
    • Nacos 实战应用
    • Sentinel 实战应用
    • Seata 分布式事务
  • 数据结构和算法的深入应用
  • 存储

    • 图和Neo4j
    • MongoDB
    • TiDB
    • MySQL 优化
    • MySQL 平滑扩容实战
    • MySQL 海量数据存储与优化
    • Elasticsearch
  • 缓存

    • Redis
    • Aerospike
    • Guava Cache
    • Tair
  • 文件存储

    • 阿里云 OSS 云存储
    • FastDF 文件存储
  • 基础

    • Linux 使用
    • Nginx 使用与配置
    • OpenResty 使用
    • LVS+Keepalived 高可用部署
    • Jekins
  • 容器技术

    • Docker
    • K8S
    • K8S
  • 01.全链路(APM)
  • 02.电商终极搜索解决方案
  • 03.电商亿级数据库设计
  • 04.大屏实时计算
  • 05.分库分表的深入实战
  • 06.多维系统下单点登录
  • 07.多服务之间分布式事务
  • 08.业务幂等性技术架构体系
  • 09.高并发下的12306优化
  • 10.每秒100W请求的秒杀架构体系
  • 11.集中化日志管理平台的应用
  • 12.数据中台配置中心
  • 13.每天千万级订单的生成背后痛点及技术突破
  • 14.红包雨的架构设计及源码实现
  • 人工智能

    • Python 笔记
    • Python 工具库
    • 人工智能(AI) 笔记
    • 人工智能(AI) 项目笔记
  • 大数据

    • Flink流处理框架
  • 加密区

    • 机器学习(ML) (opens new window)
    • 深度学习(DL) (opens new window)
    • 自然语言处理(NLP) (opens new window)
AI 导航 (opens new window)

Revin

首页
  • AI 工具

    • 绘图提示词工具 (opens new window)
    • ChatGPT 指令 (opens new window)
  • ChatGPT

    • ChatGP T介绍
    • ChatGPT API 中文开发手册
    • ChatGPT 中文调教指南
    • ChatGPT 开源项目
  • Midjourney

    • Midjourney 文档
  • Stable Diffusion

    • Stable Diffusion 文档
  • 其他

    • AIGC 热门文章
    • 账号合租 (opens new window)
    • 有趣的网站
  • Vue

    • Vue3前置
  • JAVA基础

    • Stream
    • Git
    • Maven
    • 常用第三方类库
    • 性能调优工具
    • UML系统建模
    • 领域驱动设计
    • 敏捷开发
    • Java 测试
    • 代码规范及工具
    • Groovy 编程
  • 并发编程&多线程

    • 并发编程
    • 高性能队列 Disruptor
    • 多线程并发在电商系统下的应用
  • 其他

    • 面试题
  • 消息中间中间件

    • Kafka
    • RabbitMQ
    • RocketMQ
  • 任务调度

    • Quartz
    • XXL-Job
    • Elastic-Job
  • 源码解析

    • Mybatis 高级使用
    • Mybatis 源码剖析
    • Mybatis-Plus
    • Spring Data JPA
    • Spring 高级使用
    • Spring 源码剖析
    • SpringBoot 高级使用
    • SpringBoot 源码剖析
    • Jdk 解析
    • Tomcat 架构设计&源码剖析
    • Tomcat Web应用服务器
    • Zookeeper 高级
    • Netty
  • 微服务框架

    • 分布式原理
    • 分布式集群架构场景化解决方案
    • Dubbo 高级使用
    • Dubbo 核心源码剖析
    • Spring Cloud Gateway
    • Nacos 实战应用
    • Sentinel 实战应用
    • Seata 分布式事务
  • 数据结构和算法的深入应用
  • 存储

    • 图和Neo4j
    • MongoDB
    • TiDB
    • MySQL 优化
    • MySQL 平滑扩容实战
    • MySQL 海量数据存储与优化
    • Elasticsearch
  • 缓存

    • Redis
    • Aerospike
    • Guava Cache
    • Tair
  • 文件存储

    • 阿里云 OSS 云存储
    • FastDF 文件存储
  • 基础

    • Linux 使用
    • Nginx 使用与配置
    • OpenResty 使用
    • LVS+Keepalived 高可用部署
    • Jekins
  • 容器技术

    • Docker
    • K8S
    • K8S
  • 01.全链路(APM)
  • 02.电商终极搜索解决方案
  • 03.电商亿级数据库设计
  • 04.大屏实时计算
  • 05.分库分表的深入实战
  • 06.多维系统下单点登录
  • 07.多服务之间分布式事务
  • 08.业务幂等性技术架构体系
  • 09.高并发下的12306优化
  • 10.每秒100W请求的秒杀架构体系
  • 11.集中化日志管理平台的应用
  • 12.数据中台配置中心
  • 13.每天千万级订单的生成背后痛点及技术突破
  • 14.红包雨的架构设计及源码实现
  • 人工智能

    • Python 笔记
    • Python 工具库
    • 人工智能(AI) 笔记
    • 人工智能(AI) 项目笔记
  • 大数据

    • Flink流处理框架
  • 加密区

    • 机器学习(ML) (opens new window)
    • 深度学习(DL) (opens new window)
    • 自然语言处理(NLP) (opens new window)
AI 导航 (opens new window)
  • Python介绍
  • 基础

    • Python变量与数据类型
    • Python标准输入、格式化输出
    • Python运算符与注解
      • 1. 算术运算符
      • 2. 赋值运算符
      • 3. 复合赋值运算符
      • 4. 比较运算符
      • 5. 逻辑运算符(与或非)
      • 6. 扩展:短路运算
      • 7. 运算符的优先级
      • 8. 三目运算符
        • 8.1 什么是三目运算符
        • 8.2 基本语法
        • 8.3 三目运算符示例
      • 9. Python注释
        • 9.1 注释的作用
        • 9.2 Python注释的基本语法
        • ☆ 单行注释
        • ☆ 多行注释
        • ☆ PyCharm注释小技巧(快捷键)
    • Python选择判断结构(if)
    • Python循环结构(while与for)
    • Python数据序列(字符串、列表、元组)
    • Python数据序列(字典、集合)
    • Python函数基础
    • Python函数进阶
    • Python异常
  • 进阶

  • 其他

  • Python开源项目
  • Python
  • 基础
Revin
2023-04-16
目录

Python运算符与注解

# 1. 算术运算符

所谓的算数运算符就是我们日常生活中的加减乘除等待。

运算符 描述 实例
+ 加 1 + 1 输出结果为 2
- 减 1 - 1 输出结果为 0
* 乘 2 * 2 输出结果为 4
/ 除 10 / 2 输出结果为 5
// 整除 9 // 4 输出结果为 2
% 取余(取模) 9 % 4 输出结果为 1
** 幂指数 2 ** 4 输出结果为 16,即2的4次方,2 * 2 * 2 * 2
() 小括号 小括号用来提高运算优先级,即 (1 + 2) * 3 输出结果为 9

示例1:了解一下算术运算符

num1 = 10
num2 = 2

# 四则运算 + - * /
print(f'加:{num1 + num2}')
print(f'减:{num1 - num2}')
print(f'乘:{num1 * num2}')
print(f'除:{num1 / num2}')
1
2
3
4
5
6
7
8

示例2:和其他编程语言不太相同的几个算术运算符

num1 = 20
num2 = 6
num3 = 5

# 1、整除
print(f'整除:{num1 // num2}')
# 2、求余数
print(f'余数:{num1 % num2}')
# 3、幂指数
print(f'幂指数:{num2 ** 3}')
# 4、圆括号
print(f'优先级:{(num1 + num2) * num3}')
1
2
3
4
5
6
7
8
9
10
11
12

算术运算符示例:求梯形的面积

知识点:用户输入、数据类型转换以及算术运算符

a = float(input('请输入上底:'))
b = float(input('请输入下底:'))
h = float(input('请输入高:'))

s = (a + b) * h / 2

print(f'梯形的面积:{s}')
1
2
3
4
5
6
7

# 2. 赋值运算符

运算符 描述 实例
= 赋值 将=右侧的结果赋值给等号左侧的变量

示例1:把某个值赋值给某个变量

num = 10
1

示例2:多个变量同时进行赋值操作

n = 5
f = 10.88
s = 'hello world'
1
2
3

简写为:

n, f, s = 5, 10.88, 'hello world'
print(n)
print(f)
print(s)
1
2
3
4

示例3:多个变量赋予相同的值

a = 10
b = 10
1
2

简写为:

a = b = 10
1

# 3. 复合赋值运算符

复合赋值运算符 = 算术运算符 结合 赋值运算符

image-20230416134035033

复合赋值运算符的计算顺序 = 先执行算术运算符,执行完毕后,把结果在赋值给左边的变量。

示例:

i = 1
# 相加并赋值,先加1,然后把结果赋值给左边的变量
i += 1
print(f'更新后,i的值为:{i}')

num1 = 9
# 取模并赋值,先求余数,然后在把结果赋值给左边的变量
num1 %= 2
print(f'更新后,num1的值为:{num1}')

num2 = 2
# 幂指数并赋值,先求幂指数,然后把结果赋值给左边的变量
num2 **= 3
print(f'更新后,num2的值为:{num2}')
1
2
3
4
5
6
7
8
9
10
11
12
13
14

# 4. 比较运算符

image-20230416134127349

特别注意:当我们使用比较运算符对两个变量进行比较时,其返回一个布尔类型的值。

示例:两个数大小的比较

num1 = 10
num2 = 20

print(num1 > num2)  # False
print(num1 < num2)  # True
print(num1 >= num2) # False
print(num1 <= num2) # True
print(num1 == num2) # False
print(num1 != num2) # True
1
2
3
4
5
6
7
8
9

# 5. 逻辑运算符(与或非)

image-20230416134242869

not就是取反,只有一个表达式not 表达式,如果表达式为True,则not以后就返回False。反之,则返回True。

and :逻辑与,只有当两边的表达式全部为真,则最终结果返回为真,否则返回为假。

x :False

y :False

result = x and y

or :逻辑或,只要有一方为真,则整个表达式的返回结果就为真。除非两边的表达式都为假,则整个结果返回为假。

result = x or y

讲个非诚勿扰的小故事:

① 女孩子要求比较高,要求男孩子必须要有房且有车

表达式1 and 表达式2
当表达式1为True且表达式2为True时,则整个表达式返回结果为True
当表达式1或表达式2中有一个表达式为假,则整个表达式返回结果为False


有房 and 有车  则  牵手成功
有房 and 没车  则  牵手失败
没房 and 有车  则  牵手失败
1
2
3
4
5
6
7
8

② 女孩子要求一般,要求男孩子有房或者有车即可

表达式1 or 表达式2
当表达式1为True或表达式2为True时,则整个表达式返回结果为True
当表达式1与表达式2都为False时,则整个表达式才会返回False


有房 or 有车  则  牵手成功
有房 or 没车  则  牵手成功
没房 or 有车  则  牵手成功
没房 or 没车  则  牵手失败
1
2
3
4
5
6
7
8
9

逻辑与、或、非,其最终的返回结果也是一个布尔类型的值,True或False。另外在实际工作中,逻辑运算符也主要和if分支结构相结合。

示例:

a = 1
b = 2
c = 3

print((a > b) and (b > c))  # False
print((a > b) or (b > c))   # False
print((a < b) or (b > c))   # True
print(not (a > b))          # True
1
2
3
4
5
6
7
8

# 6. 扩展:短路运算

在Python代码中,逻辑运算符的运算,要遵循短路运算原则。

① 表达式1 and 表达式2,如果表达式1条件为真,则最终的运算结果由右边的表达式2来决定。如果表达式1条件为假,则最终结果为假。其右边的表达式2不需要在进行运算。

② 表达式1 or 表达式2,如果表达式1为真,则最终的运算结果由表达式1来决定,为真。如果表达式1为假,则最终结果由表达式2来决定。如果表达式2为真,则最终结果为真,如果表达式2为假,则最终结果为假。

print(3 and 4 and 5)  # 5
print(5 and 6 or 7)   # 6
4 > 3 and print('hello world')  # 输出hello world
1
2
3

在逻辑运算中,不一定逻辑运算符的两边都是纯表达式,也可以是数值类型的数据或字符串类型的数据。

Python把0、空字符串和None看成 False,其他数值和非空字符串都看成 True,所以:

① 在计算 a and b 时,如果 a 是 False,则根据与运算法则,整个结果必定为 False,因此返回 a;如果 a 是 True,则整个计算结果必定取决与 b,因此返回 b。

print(3 and 4)  # 4
print(0 and 1)  # 0
1
2

② 在计算 a or b 时,如果 a 是 True,则根据或运算法则,整个计算结果必定为 True,因此返回 a;如果 a 是 False,则整个计算结果必定取决于 b,因此返回 b。 所以Python解释器在做布尔运算时,只要能提前确定计算结果,它就不会往后算了,直接返回结果。

print(6 or 7)  # 6
print(6 and 7 or 8)  # 7
1
2

# 7. 运算符的优先级

什么是运算符的优先级?其实我们小学就已经接触过了,就是在一个表达式中,我们先算谁的问题。

先算乘除,后算加减,有括号的先算括号里面的。

image-20230416134337313

注意:

  • ① 不要把一个表达式写得过于复杂,如果一个表达式过于复杂,尝试把它拆分来书写

  • ② 不要过于依赖运算符的优先级来控制表达式的执行顺序,这样可读性太差,应尽量使用( )来控制表达式的执行顺序

# 8. 三目运算符

# 8.1 什么是三目运算符

在Python中三目运算符也叫三元运算符,其主要作用:就是用于简化if...else...语句。

# 8.2 基本语法

if 条件判断:
    # 语句段1
else:
    # 语句段2
1
2
3
4

转换为三目运算符:

语句段1 if 条件判断 else 语句段2
1

# 8.3 三目运算符示例

需求:输入两个数值,返回最大值

num1 = 10
num2 = 20

if num1 > num2:
    print(f'最大值为{num1}')
else:
    print(f'最大值为{num2}')
1
2
3
4
5
6
7

简化:三目运算符

num1 = 10
num2 = 20

max = num1 if num1 > num2 else num2
print(f'最大值为{max}')
1
2
3
4
5

# 9. Python注释

# 9.1 注释的作用

注释作用:提高代码的阅读性

image-20230416115440550

在我们编写Python程序时,为了了提高程序的可读性,强烈建议大家为核心代码添加注释信息。

# 9.2 Python注释的基本语法

# ☆ 单行注释

单行注释,以"#"(Shift + 3)号开头,只能注释一行内容

# 注释内容
1

示例代码:

第一种:代码行的上面

# 输出Hello World字符串
print('Hello World')
1
2

第二种:放在代码的后面(代码后面保留2个空格)

print('Hello World')  # 输出Hello World字符串
1

# ☆ 多行注释

多行注释:可以同时注释多行代码或程序,常用于代码块的注释

基本语法:

"""
注释内容
第一行
第二行
第三行
"""
1
2
3
4
5
6

或

'''
注释内容
第一行
第二行
第三行
'''
1
2
3
4
5
6

示例代码:

"""
Hello World
"""

'''
Hello World
'''
print('Hello World')
1
2
3
4
5
6
7
8

# ☆ PyCharm注释小技巧(快捷键)

在PyCharm中,我们可以使用Ctrl + /斜杠来对代码或程序进行快速注释。

上次更新: 2025/04/03, 11:07:08
Python标准输入、格式化输出
Python选择判断结构(if)

← Python标准输入、格式化输出 Python选择判断结构(if)→

最近更新
01
tailwindcss
03-26
02
PaddleSpeech
02-18
03
whisper
02-18
更多文章>
Theme by Vdoing | Copyright © 2019-2025 跨境互联网 | 豫ICP备14016603号-5 | 豫公网安备41090002410995号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式