今天主讲内容是:
1 扩展赋值运算符
2 位运算符
3 Python运算符优先级
4 复杂类型中的字典类型
Python扩展赋值运算符
其实就是提供了一种简写的方式,将诸如a = a + 1可简写为a += 1。其余运算参考如下:
以下实例演示了Python所有赋值运算符的操作:
Python位运算符
在了解位运算之前,首先要了解二进制数。似乎小学数学中就已经学习了二进制,二进制在计算机中很重要,如果有未掌握的或者记不清楚的同学,看我的视频:
【视频】
十进制:
每个位有10种变化表示数字:0,1,2,3,4,5,6,7,8,9.
每个位的权值:个位为1,十位为10,百位为100...
逢10进1
例:123 = 1*100 + 2*10 + 3*1
十六进制:
每个位有16种变化表示数字:0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F.
每个位的权值:最低位为1,下一位为16,再下一位为256...
逢16进1
例:123 = 1*256 + 2*16 + 3*1 转换为十进制数:291
3FF = 3*256 + 15*16 + 15*1 转换为十进制数:1023
二进制数:
每个位有2种变化表示数字:0,1.
每个位的权值:最低位为1,下一位为2,再下一位为4...
逢2进1
例:101 = 1*4+ 0*2+1*1 转换为十进制数:5
二进制位与:
1 & 1 = 1,其余为0
二进制位或:
0 | 0 = 0,其余为1
二进制位非:
~0 = 1
~1 = 0
二进制位异或:
0 ^ 0 = 0
1 ^ 0 = 1
0 ^ 1 = 1
1 ^ 1 = 0
二进制位右移:
1000 >> 1 = 0100
0101 >> 1 = 0010
0101 >> 2 = 0001
二进制位左移:
0010 << 1 = 0100
1010 << 1 = 0100
1010 << 2 = 1000
Python中二进制,16进制,8进制转换及表示
利用下列函数将一个10进制数转换为其他进制数:
按位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下:
下表中变量 a 为 163,b 为 105二进制格式如下:
a = 0b10100011
b = 0b01101001
-----------------
a&b = 0010 0001
a|b = 1110 1011
a^b = 1100 1010
~a = 0101 1100
Python运算符优先级:
运算符是有优先级的,就像加减乘除混合运算时要先乘除后加减一样。
以下表格列出了从最高到最低优先级的所有运算符:
复杂数据类型:其实是Python的内置数据对象。
上次讲了:
List类型:a = [1, 2, 3, 4, 5, 6]; b = ['hello', 'david', 3, 2, 1]
元组类型:a = (1, 2, 3, 4, 5, 6)
今天要讲一下:
字典类型:a = {"name":"Tom", "age":12, "class": "7-5"}
字典类型是List类型的特殊形式,每个元素都由"名称-值",就像我们填写的个人情况表格:
等等,而后,就可通过名字查询,修改: