注释
方式有三种:
1.# 单行注释
2.python中单引 ’ 和双引 " 用处相同,
三个单引
'''
多
行
注
释
内
容
'''
3.三个双引
"""
多
行
注
释
内
容
"""
运算符
算术运算符
#整除=0
print(3//4)
#取余=1
print(5%4)
#幂次3*3=9
print(3**2)
比较运算符
#!=表示不等于,判断为true
print(4!=7)
逻辑运算符
与and,都为真则为真
或or,一个为真则为真
非not
位运算符
1.bin表示输出二进制形式,输出多个数字可用 , 隔开
2.按位取反:~n=-(n+1)
求负数的原码:正数按位取反得到负数的补码,负数的补码按位取反,再+1,再加负号
3.与&
4.或|
5.异或^
不同则为1
6.<< 2
表示左移2位,>> 2
表示右移2位
三元操作符的条件表达式
small = x if x < y else y
不可变类型与可变类型
不可变类型:字符串 str " " ,内容相同,is(对比内存地址) , ==
可变类型:列表list 、字典dict 、元组tuple,内容相同,is not(对比内存地址), ==
运算符优先级
右边 优于 幂次 优于 左边
算术 优于 移位 优于 位运算优于 逻辑运算
调整浮点型精度
#保留小数点后四位
decimal.getcontext().prec = 4
bool型
0、0.0 、空 为false
非零为true
m次方表示
a^m
通过 ^
快速交换两个整数
前提是a!=b,否则输出均为0
a ^= b
b ^= a
a ^= b
通过 a & (-a)
快速获取a
的最后为 1 位置的整数
a
和(-a)
指的是补码(正数的补码为其本身,负数的补码为按位取反再+1)
元素与集合的操作
(0 表示不在集合中,1 表示在集合中)
扫描二维码关注公众号,回复:
11890184 查看本文章
a | (1<<i) -> 把 i 插入到集合中
a & ~(1<<i) -> 把 i 从集合中删除
a & (1<<i) -> 判断 i 是否属于该集合(零不属于,非零属于)
集合之间的操作
a 差 b -> a & (~b)
负数(十进制表示)的补码
print(bin(-3 & 0xffffffff))