day4 python 运算符
2024-09-06 22:31:46
python运算符
1、算数运算符( + - * / // % ** )
# + - * / // % **
# 加 减 乘 除 整除 余数 幂
#注意
#1、 / 得到浮点型, // 得看被除数
10 / 5 #2.0
10 // 5 #2
10.0//5 #2.2
#2、 %
15 % 4 # 3
-15%-4 #-3 原余取反
15 %-4 #-1 余数 + 除数
-15% 4 # 1 除数 - 余数
2、比较运算符( < > <= >= == != )
# 注意:
num1 = 1
num2 = 1
res = num1 == num2 # True
3、 赋值运算符( = += -= *= /= //= %= **=)
num1 = 100
num2 = 5
num1 /= num2 # num1 = num1 / num2
4、 成员运算符( in , not in )
#针对于容器类型数据
strvar = "人生苦短,我用Python"
res = "python" not in strvar # False
res = "生python" in strvar # False
# 字典当中只判断 key
5、身份运算符( is , is not)
# 判断内存地址是否相同
(同一文件,模块,python)
#1 整型 (-5 ~ 正无穷 <小数据池:id地址相同>)
#2 浮点型(非负数)
#3 bool值相同
#4 复数类型(只有正虚数部分)
#5 strvar = "哈"相同时
#6 元组为空的时候
#7 其他容器永不相同
(不同文件,模块)
#1 整型 (-5 ~ 256 <小数据池:id地址相同>)
6、逻辑运算符( and , or ,nor)
# and
"""全真则真,有假则假"""
# or
"""全假则假,有真则真"""
# not
"""真假取反"""
# 逻辑短路:出现短路,不执行后面代码
True or print("短路,不执行") # or 当遇到 True 已经有结果为真,后面真假不影响结果,所有为短路效果。
False or print("没短路,执行") # or 首先遇到 False 还需要判断后边的
# 优先级 : () > not > and > or7 同级从左往右
7、位运算符( & , | , ~ , ^ , << , >> )
#1、 按位与 & (二进制and-------有0出0,全1出1)
#2、 按位或 | (二进制or--------有1出1 全0出0)
#3、 按位非 ~ (二进制not,针对补码进行运算,按位取反,包括标志位)
res = ~10 #-11 -(n+1)
#4、 按位异或 ^ (二进制-----------值同出0 异出1)
#5、 左移 << (5<<1,000...101--->000...1010)
res = 5 << 1 #10 5*2**1
res = 5 << 2 #20 5*2**2
res = 5 << 3 #40 5*2**3
#6、 右移 >> (5>>1,000...101--->000...010)
res = 5 >> 1 #2 5//2**1
res = 5 >> 2 #1 5//2**2
res = 5 >> 3 #0 5//2**3
8、运算符总结
"""
(1) 个别运算符:
1.1优先级最高**幂运算
1.2优先级最低=赋值运算符
1.3()括号可以提升运算优先级
(2)整体 一元运算符 > 二元运算符
一元运算符:同一时间,只操作一个值-~
二元运算符:同一时间,操作两个值+-*/...
(3) 同一层级
逻辑: () > not > and > or
位运算符:( << >> ) > & > ^ > |
(4)其他运算符
算数运算符 > 位运算符 > 比较运算符 > 身份运算符 > 成员运算符 > 逻辑运算符 > 赋值运算符
"""
最新文章
- Debain下解决sublime无法输入中文
- Unknown class in Interface Builder file 解决方案
- 软件工程个人作业 - week1
- 关于在Xcode的OC工程中相对路径失败的原因
- Linux 的进程组、会话、守护进程
- typedef用法小结
- linux device driver —— ioctl
- forEach嵌套循环的问题
- 定制化jQuery
- python基础教程(六)
- 2.Text input and output
- 初探Java设计模式1:创建型模式(工厂,单例等)
- Android客户端与数据库交互数据的简单学习
- idea上传项目到github出现";remote with selected name already exists";情况的解决
- python3:logging模块 输出日志到文件
- tcp尽快尽快了
- iOS:调节系统的亮度
- mysql optimize整理表碎片
- max3232
- boost 学习(1)
热门文章
- 数据库(mysql)基础操作
- Centos7 composer安装时 Warning: This development build of composer is over 60 days old. It is recommended to update it by running ";/usr/bin/composer self-update"; to get the latest version.
- cute-cnblogs 一期样式原文
- 国外一教授坦言,用这方法能迅速成为python程序员,但都不愿意说_编程小十
- 重学 Java 设计模式:实战责任链模式「模拟618电商大促期间,项目上线流程多级负责人审批场景」
- 关于 JOIN 耐心总结,学不会你打我系列
- 微信小程序-创建小程序页面
- Python-16-分配参数
- Windows Server 2019 container容器化-Docker安装
- java.math.BigDecimal转换double double转换java.math.BigDecimal