运算符:
1、算术运算符: + - * / // %
2、关系运算符(比较) ==
3、逻辑运算符 and or not
4、所属 :in not in
5、is 内存地址是否相同
6、赋值运算符 = a = 1 a += 4 a = a + 4
python中没有自增自减
()提高优先级
字符串对象: dir()
位运算:基于二进制的运算
---计算机最小单位:位bit
计算机的底层基于位运算的
&
|
^ 异或
~ 按位取反
>>
<<
字节 1byte = 8bit
10+11
0000 1010
0000 1011
---------------
0001 0101
8位的首位作为符号位
1代表负数
0代表正数
为了解决负数运算问题------原码、反码、补码三个概念
原码:数值的标准的二进制位
反码:符号位不变,其余位取反
补码:反码+1
原码 反码
补码
-3 1000 0011 1111 1100 1111 11012
-2 0000 0010
----------------------------------------- 1000 0001 1111 1110 1111 1111-
正数不存在反码、补码,计算机底层的运算是基于补码
-3+4
-3 1000 0011 1111 1100 1111 1101
4 0000 0100
------------------------------------------
0000 0001
位运算:
&:两真则真,一假则假
|:两假为假,一真则真
^:相反为真,相同为假
~:按位取反 包含符号位
例:~2:0000 0010 ---->1111 1101(补码-1)---->1111 1100(反码符号位不变,其余为按位取反)--->1000 0011(原码)
>>
8>>2: 0000 1000
0000 0010 2 右移:除以2的n次方(右移的位)
<<
8<<2: 0000 1000 左移:乘以2的n次方
0010 0000
三元运算符: 条件成立时的代码 if 判断 else 条件不成立时的代码
程序结构:
顺序结构
选择结构
循环结构
选择结构:
if关键字
最简单的if语句:
if 表达式:
代码1
索引:正向索引:下标从0开始
负数索引,下标从-1开始
字符串的切片:sname[start:end:step] [ )
sname:要操作的序列名称
start:表示切片的开始位置(包含自身),如果不去指定的话,默认从0开始。
end:表示切片的结束位置(不包含自身),如果不指定的话,默认是序列的长度
step:表示切片的步长,如果省略,默认为1
s[:] 切片切的是整个字符串
s[::-1]:字符串反转