?#python基础知识#
#赋值运算符
#a=3
#a+=2 #print(a)?????????????运算结果为5
#a-=1 #print(a)?????????????运算结果为2
#a*=2 #print(a)???????????运算结果为6
#a/=2 #print(a)?????????????运算结果为1.5
#a//=2 #print(a)?????????????运算结果为1
#a%=2 #print(a)?????????????运算结果为1
#a**=2 #print(a)?????????????运算结果为9
#解释 #Eg.1 #a+=2??????相当于???????a=a+2 #Eg.2 #a//=2?????相当于???????a=a//2 #Eg.3 #a%=2??????相当于???????a=a**2
#符号 #+=???????-=?????????*=??????????/=????????//=????????%=???????**= #加等于????减等于??????乘等于???????除等于?????整除等于????模等于????幂等于
#位运算符
#令a=20 #??b=10
#按位与:& #print(a&b) #将a与b全部转化为二进制,则a为00010100,b为1010 #将a与b对齐,并进行计算 #00010100 #00001010 #当两个对齐的数都为1时落1 #由于全都未对齐,所以运算结果为00000000=0
#按位或运算符:| #print(a|b) #计算过程为令其两个转化为二进制,并令其对齐进行运算 #?或运算只要有一个是1,它就是1 #00010100 #00001010 #00011110 #所以运算结果为00011110
#左移动运算符:<< #print(a<<2)??????运算结果为80 #左移多少位相当于乘以2的多少次幂,a=20,乘以2的两次幂所以结果为80 #如果print(a<<3)???运算结果为160 #运算过程????print(a<<3) #00010100左移三位得10100再补上三个0,得10100000,再转化为二进制,结果为160
#右移动运算符:>> #print(a>>2)???????运算结果为5 #右移多少位相当于除以2的多少次幂,a=20,除以2的两次幂所以结果为5 #运算过程?????print(a>>2) #00010100左移两位得000101,再在前面补两个0,得出结果即为5
#按位取反运算符:~ #对数据的每一个二进制位进行取反,把1变成0,把0变成1 #print(~3)??????????运算结果为-4 #相当于?如果是print(~x)=-x-1 #运算过程??????print(~3) #将3转化为二进制为11,在其前面补位,得00000011 #将00000011进行取反,变成11111100 #计算机运算中以1开头打位的表示负数,需将其先按位取反,得到00000011 #00000011再加上1(指其数值加1)变成00000100,将00000100转换为十进制为4 #再在其前面加上一个负号,得出结果即为-4
#按位异或运算符:^ #print(a^b)????????运算结果为30 #运算过程 #当两个二进制位不同时得到1 #???????????00010100 #???????????00001010 #得到结果为?00011110 #转换为十进制,得出结果为30
ps结尾:由于本人是小白,正在成长中,如有错误还请各位大佬不吝啬地指出。以上内容纯为原创文章,里面包含了大量的我个人主观想法,比较适合像我一样的计算机小白作为笔记加以记忆。以上文章中所用符号均为英文输入法所打,由于本人由pycharm(我运行代码时所常用软件)中复制粘贴出来,可能会存在部分中英符号不协调,还请谅解,多多担待。
?point?????:??????#为解释说明,无特殊含义 ????????????????????????运行代码时所用标点均需为英文 ?
|