语言基础篇7——Python运算符

运算符

算数运算符

# 算术运算符
# +
# -
# *
# **
# /  浮点除
# // 整数除
# %

赋值运算符

# 赋值运算符
# =
# +=
# -=
# /=  浮点除等
# //= 整数除等
# *=
# **=

关系运算符

# 关系运算符
# >
# ==
# <
# >=
# <=
# !=
# is
# is not

逻辑运算符

# 逻辑运算符
# 返回表达式的值
# and
# or
# not
# () > not > and > orprint(1 and 2)  # 2
print(0 and 2)  # 0
print(2 and 0)  # 0print(1 or 2)  # 1
print(0 or 2)  # 2
print(2 or 0)  # 2print(not 1)  # False
print(not 2)  # False
print(not 0)  # True
print(not '0')
print(not [])  # python判空一个not即可
# 根据表达式结果判定,如果为0,返回可以确定整个表达式真假的表达式的值print("10" and 0)
print(0 or "10")
print(0 or True)print(1 and 2 > 1)
print(2 > 1 and 1)
print(2 > 1 or 1)print("" and 1)  # 特别注意
# 根据逻辑运算符返回表达式的值,如果使用关系运算符,则正好返回bool

位运算符

位运算符
# & 按位与
# | 按位或
# ~ 按位取反
# ^ 按位异或
# << 左移
# >> 右移
print(bool("123") ^ bool(""))

成员操作符

# 成员操作符
# in
# not in 

注:

  1. is用于通过比较内存地址判断两个对象是否相等,==通过比较两个对象指向的数据判断两个对象是否相等,Python中None、True、False是单例的,习惯上使用is进行判断。

  2. if not x中若x为零值,即None、False、0、“”、()、[]、{},表达式均为假,在一些场景下直接使用if not x容易导致问题

    # 部分缺失数据计算场景,函数calc_growth_rate(a, b)用于计算a相对于b的增长率,结果返回一个不带百分号的百分数,在数据中,a、b均可能为空,且a、b有可能为0。# 错误示例,a=0,b=100时的计算结果是有问题的
    def calc_growth_rate(a, b):if a and b and b != 0:return a / b * 100return None# 正确示例
    def calc_growth_rate(a, b):if a is None or not b:return Nonereturn a / b * 100
    

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

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

相关文章

Golang网络编程

Golang网络编程 网络编程简介网络编程协议网络分层模型TCP/IP协议什么是DNS套接字&#xff08;Socket&#xff09;客户端服务器模型TCP/UDP的区别HTTP协议会话sessionCookiehttpsHTTP请求格式HTTP响应格式http头信息http请求头信息http响应头信息HTTP状态码http内容类型和内容…

面试官:说一下 MyBatis 的一级缓存和二级缓存 ?

目录 1. MyBatis 的缓存机制 2. 为什么不默认开启 MyBatis 的二级缓存 3. MyBatis 如何开启二级缓存 4. MyBatis 有哪些缓存清除策略 1. MyBatis 的缓存机制 MyBayis 中包含两级缓存&#xff1a;一级缓存和二级缓存 1. 一级缓存是 SqlSession 级别的&#xff0c;是 MyBati…

【从零单排Golang】第十五话:用sync.Once实现懒加载的用法和坑点

在使用Golang做后端开发的工程中&#xff0c;我们通常需要声明一些一些配置类或服务单例等在业务逻辑层面较为底层的实例。为了节省内存或是冷启动开销&#xff0c;我们通常采用lazy-load懒加载的方式去初始化这些实例。初始化单例这个行为是一个非常经典的并发处理的案例&…

需求文档规模 (pages/KLOC)需求缺陷密度 (个/KLOC)

质量目标规范 KLOC(千行代码)是一个计算机程序有多大或者需要多少人来完成其编码工作的一个传统的度量标准。这些代码通常是源代码。高级源语言(比如C)编译成的机器代码行数要比低级语言(比如汇编语言)编译成的机器代码要多&#xff0c;这样&#xff0c;一千行C代码将会比一千…

jmeter 常数吞吐量定时器

模拟固定吞吐量的定时器。它可以控制测试计划中各个请求之间的时间间隔&#xff0c;以达到预期的吞吐量。 参数包括&#xff1a; Target Throughput&#xff1a;目标吞吐量&#xff08;每分钟请求数&#xff09;Calculate Throughput based on&#xff1a;吞吐量计算基准&…

线程调度的原理、线程执行过程、线程栈模型

线程调度的原理 线程调度是操作系统或执行环境管理多个线程并分配CPU时间片给它们的过程。线程调度的原理取决于操作系统和执行环境的实现,但基本原理通常包括以下关键概念: 时间片轮转:在多任务系统中,CPU的时间被分为若干时间片(时间量子)。每个线程被分配一个时间片,…

stm32---用外部中断实现红外接收器

一、红外遥控的原理 红外遥控是一种无线、非接触控制技术&#xff0c;具有抗干扰能力强&#xff0c;信息传 输可靠&#xff0c;功耗低&#xff0c;成本低&#xff0c;易实现等显著优点&#xff0c;被诸多电子设备特别是 家用电器广泛采用&#xff0c;并越来越多的应用到计算机系…

2022年09月 C/C++(六级)真题解析#中国电子学会#全国青少年软件编程等级考试

C/C编程&#xff08;1~8级&#xff09;全部真题・点这里 第1题&#xff1a;stack or queue 栈和队列都是常用的线性结构&#xff0c;它们都提供两个操作&#xff1a; Push&#xff1a;加入一个元素。 Pop&#xff1a;弹出一个元素。 不同的是&#xff0c;栈是”先进后出”&…

leetcode236. 二叉树的最近公共祖先(java)

二叉树的最近公共祖先 题目描述递归法代码演示 上期经典 题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个节点 p、q&#xff0c;最近公共祖先表示为一个节点 x&#xff0c;满足 x 是 p、q …

python中list的两个无返回值函数

list是python中一个比较常用的数据结构&#xff0c;相当于其它语言的数据&#xff0c;list有很多方法&#xff0c;但是有的方法有返回值&#xff0c;有的没有返回值&#xff0c;因为多数情况下我调用函数的时候&#xff0c;习惯的认为函数会有返回值&#xff0c;但是如果突然出…

Ae 效果:CC Light Rays

生成/CC Light Rays Generate/CC Light Rays CC Light Rays&#xff08;CC 光线&#xff09;可以创建从光源发出并能穿过图层内容的光线效果。常用于制作光线透过门窗或云层的场景&#xff0c;或者用于创建神奇或梦幻的氛围感。 本效果会被限制在源图层的大小范围之内。 ◆ ◆…

每日一题 98验证二叉搜索树(中序遍历)

题目 给你一个二叉树的根节点 root &#xff0c;判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下&#xff1a; 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 示例 1&#xff1a…

【负载均衡】常见的负载均衡策略有哪些?

文章目录 前言负载均衡分类常见负载均衡策略小结 前言 负载均衡策略是实现负载均衡器的关键&#xff0c;而负载均衡器又是分布式系统中不可或缺的重要组件。使用它有助于提高系统的整体性能、可用性、可靠性和安全性&#xff0c;同时支持系统的扩展和故障容忍性。对于处理大量…

基于 Docker 的 MySQL 主从复制搭建(Mac M1版本)

系统&#xff1a;Macbook M1 镜像版本&#xff1a;mysql:5.7 如果是要查 slave连接不上 master的问题&#xff0c;可以直接跳到文章末尾踩坑处 准备工作 拉取镜像 docker pull mysql:5.7本地数据卷挂载 因为mysql不挂载的话&#xff0c;重启丢失数据&#xff0c;所以在本地创…

微服务--Gatway:网关

routes: - id:order_route(路由唯一 标识&#xff0c;路由到order) uri&#xff1a;http://localhost:8020 #需要转发的地址 #断言规则&#xff08;用于路由规则的匹配&#xff09; predicates: -path/order-serv/** -pathlb://order-service # lb: 使用nacos中的本地…

分享码云上8个宝藏又有价值的开源图片编辑器

如果你需要高效地处理图片&#xff0c;那么这8款实用工具是可以尝试的&#xff01; 它们能够进行一键抠图、放大、拼接、转矢量图、图标自动生成以及等操作&#xff0c;让你的工作效率飞升&#xff01; 在Gitee这个最有价值的开源项目计划是Gitee综合评定出的优秀开源项目的展示…

springboot web开发springmvc自动配置原理

前言 我们也知道springboot启用springmvc基本不用做什么配置可以很方便就使用了但是不了解原理,开发过程中遇到点问题估计就比较头疼,不管了解的深不深入,先巴拉一番再说… 下面我们先看看官网…我的版本是2.3.2版本,发现官网改动也比较大…不同版本自己巴拉下吧,结构虽然变化…

C++文件操作

一、fstream简介 C 提供了一组用于文件操作的标准库fstream&#xff0c;可以进行文件的读取、写入和其他相关操作。常用的文件操作包括文件的打开、关闭、读取、写入和定位等。下面是一些常见的文件操作函数&#xff1a; 文件的打开和关闭&#xff1a; std::ofstream&#x…

【做题笔记】虚树 (LuoguP2495 - [SDOI2011] 消耗战)

虚树 在给定的树上问题中&#xff0c;树的大小过大&#xff0c;导致总时间复杂度 O ( n q ) O(nq) O(nq)不能被接受&#xff0c;但是有很多点在查询的过程中根本用不到&#xff0c;所以对于每一个查询&#xff0c;建立一个小的查询树&#xff0c;在这个小树上求解问题。这个小…

leetcode 941. 有效的山脉数组

2023.9.2 可以用双指针法来做&#xff0c;left指向数组起点&#xff0c;right指向数组终点&#xff0c;left满足条件则左移&#xff0c;right满足条件则右移&#xff0c;最终两指针重合则返回true。 期间任一条件不满足则返回false。 代码如下&#xff1a; class Solution { p…