1.变量、运算符&数据类型
(1)注释
- 单行注释
用#表示单行注释
#这是单行注释
- 多行注释(区间注释)
可以用三个单引号
'''
第一行注释
第二行注释
第三行注释
'''
也可以用三个双引号
"""
第一行注释
第二行注释
第三行注释
"""
(2)运算符
- 算术运算符
操作符 | 名称 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
// | 整除 |
% | 取余 |
** | 幂 |
代码举例:
print(1 + 2) #3
print(1 - 2) #-1
print(1 * 2) #2
print(1 / 2) #0.5
print(9 // 4) #2
print(9 % 4) #1
print(2 ** 3) #8
2.比较运算符
操作符 | 名称 |
---|---|
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
== | 等于 |
!= | 不等于 |
代码举例
print(2 > 1) #True
print(1 >= 2) #False
print(1 < 3) #True
print(3 <= 4) #True
print(1 == 1) #True
print(3 != 5) #True
- 逻辑运算符
操作符 | 名称 |
---|---|
and | 与 |
or | 或 |
not | 非 |
代码举例
print((1 < 2) and (1 < 4)) #True
print((1 < 2) or (1 > 3)) #False
print(not (1 == 1)) #False
- 位运算符
操作符 | 名称 |
---|---|
~ | 按位取反 |
& | 按位与 |
I | 按位或 |
^ | 按位异或 |
<< | 左移 |
>> | 右移 |
代码举例
print(bin(4)) #0b100
print(bin(5)) #0b101
print(bin(~4), ~4) #-0b101, -5
- 三元运算符
代码举例
x, y = 4, 5
if x < y:
small = x
else:
small = y
print(small)
#4
- 其他运算符
操作符 | 名称 |
---|---|
in | 存在 |
not in | 不存在 |
is | 是 |
is not | 不是 |
代码举例
print('A' in ['A', 'B', 'C']) #True
print('f' not in ['A', 'B', 'C']) #True
print('a' is 'g') #False
print('s' is not 'a') #True
注:
①一元运算符顺序优于二元运算符
②先进行算数运算,后进行移位运算,最后位运算
③最后结合逻辑运算
(3)变量及赋值
①使用变量前先进行赋值
如:x =3
②变量名对大小写敏感(A != a)
③变量名可以包括字母、数字、下划线(不可以数字开头)
如:dagou2,dudu_
(4)数据类型与转换
类型 | 名称 |
---|---|
int | 整型 |
float | 浮点型 |
bool | 布尔型 |
代码举例
x = 100
print(x, type(x))
#100<class 'int'>
注:
获取类型信息 type(object)
判断两个类型是否相同 isinstance()
类型转换
整型 | int(x, base = 10) |
---|---|
字符串 | str(object = ‘ ’) |
浮点型 | float(x) |
(5)print()函数
print(*objects, step = ' ', end = '\n', file = sys.stdout, flush = False)
2.位运算
(1)原码、反码、补码
注意:首位一位是符号位
计算机内部使用补码
原码:其二进制表示
反码:正数的反码就是原码,负数的反码符号位不变,其他位取反
补码:正数的补码就是原码,负数的反码等于补码+1
(2)利用位运算实现整数集合
print(bin(3)) #0b11
print(bin(-3)) #-0b11
print(bin(-3 & 0xffffffff))
此处为了获得负数(十进制)的补码,需要手动将其和十六进制数0xffffffff进行按位与操作,在交给bin()输出