python指定宽度20输出,python输入一个二进制数,输出其对应的十进制数据
以Python的二进制运算和汉明距离的计算为例,最近发现了一个很好的网站叫LeetCode,提出了一些疑问。以后想把在LeetCode学到的新知识磨练一下,想尽量抽时间记录下来,分享给大家。
今天先从LC面前的问题说起:
给定两个整数x和y,计算汉明距离。
Hamming distance:
汉明距离,表示对应于两个(相同长度)字的不同位数。我们用d(x,y)来表示两个单词的x和y之间的汉明距离。两个字符串进行异或,统计结果是1的个数,这就是汉明距离。我会贴出我自己的答案:
class solution(object):defhamming distance(definition)self,x,Y): :typex:int:typey:int:int hamming _ distance=0s=str(关于减肥的往事))为1: hamming _ distance=1返回hamming _ distance(python内置函数减肥的老故事))用于将输入的十进制数转换为二进制数。
Python 0b字符用作前缀来表示二进制数。二进制数也可以加、减、乘、除。
其次,玄幻之门。python的位操作符。
1.AND运算(,AND)规则:00=0;01=0;10=0;11=1;
例子:1 4
0001
0100
=
0000
因此,1 ^ 4=0
2,OR运算,OR)规则:0 0=0;01=1;10=1;11=1;
例子:1 4
0001
0100
=
0101
因此,1 4=5
3.异或运算()规则:0=0;0^1=1;1^0=1;1^1=0;
例子:1 ^ 4
0001
^
0100
=
0101
因此,1 ^ 4=5
4)逆运算(())3358www。Sina . com/))1=0;~0=1;
规则:5 ~ 1比1
0101
1110
=
0100
因此,当5 ~1=4时,最低位为零。
5、右移运算))例子:将一个数的二进制位全部右移,正数左移0,负数左移1,右移丢弃。
规则:a=a 2
将A的二进制位向右移动2位
每向右移动一位就相当于将其数除以2。
6.左移运算)例子:将数的所有二进制位左移几位,右加0,舍弃左边的二进制位。
规则:a=a 2
将A的二进制位左移2位,右加0。
每次左移都相当于将数字乘以2。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。