每次10分钟跟我学Python(第十四次课)

大家好!我是幻化意识流。

今天继续跟我学Python。

上次课,我们做了铺垫,就是先学习了把一个数字转换成各种进制,其实,我们这节课用到的就是二进制数,为什么呢?请往下看:

因为,这节课我们要学习新知识点——位运算:

实践是检验真理的唯一标准!操练起来:

每次10分钟跟我学Python(第十四次课)

拷贝代码:

bit1=bin(255)

print('255转二进制为:'+bit1)

bit2=int(bit1,2)

print('二进制转回十进制:'+str(bit2))

bit3=~0b11111111

print('0b11111111的取反操作结果为:'+str(bit3))

bit4=~bit3

print('bit3再取反得:'+str(bit4))

bit5=bin(-256)

print('-256的二进制为:'+str(bit5))

bit6=~-256

print('-256取反为:'+str(bit6))

结果:

每次10分钟跟我学Python(第十四次课)

以上只是位运算中取反的操作,发现什么规律了吗?

~255 = (255+1)* -1 =-256

~-256=(-256+1)*-1=255

即 ~X=(X+1)* -1 这个可以作为一个取反的公式来记忆。

思考其他位运算:

或、与、异或、位移 分别代表什么意思呢?

每次10分钟跟我学Python(第十四次课)

或:二者有一个真就是真

与:二者都为真才是真

异或:二者不同为真,相同为假

右移或左移N位

接着练习:

每次10分钟跟我学Python(第十四次课)

代码:

num1=0b01001110

num2=0b11100101

print('num1是0b01001110')

print('num2是0b11100101')

print('两数的或操作结果为:'+str(bin(num1|num2)))

print('两数的与操作结果为:'+str(bin(num1&num2)))

print('两数的异或操作结果为:'+str(bin(num1^num2)))

print('num1左移两位操作结果为:'+str(bin(num1<<2)))

print('num1右移两位操作结果为:'+str(bin(num1>>2)))

输出结果:

每次10分钟跟我学Python(第十四次课)
展开阅读全文

页面更新:2024-04-22

标签:意识流   位移   知识点   公式   真理   规律   记忆   代码   操作   代表   发现   数字   科技   习新

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top