Python实现将格雷码转换为二进制码

在一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码(Gray Code);

本文将使用Python实现将格雷码转换为二进制码;

实现如下:

def gray2binary(n):
    n = int(n, 2)
    mask = n
    while mask:
        mask >>= 1
        n ^= mask
    return bin(n)[2:].zfill(4)

gray = input('请输入格雷码: ')
print('二进制码:', gray2binary(gray))

输出:

请输入格雷码: 0111
二进制码: 0101

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/gray-to-binary.html

分类: 计算机技术
推荐阅读:
C程序计算二阶行列式的值 本文将使用C语言编写程序计算二阶行列式的值;程序通过定义一个2*2数组用于存储输入的二阶行列式;再通过前文的公式计算出二阶行列式的值;
PySide6使用Qt Designer创建的UI 在本文中,你将学会使用Qt Designer画出UI,并在Python中使用它;
PySide6 事件的传播机制 在PySide6中,界面上的按钮(QPushButton)和QWidget部件都可以定义keyPressEvent来处理键盘按键事件。当按键事件发生时,系统会根据事件的传播机制来确定哪个部件的keyPressEvent方法将被执行。
Golang安装gin库的详细教程及错误解决方法 Gin是用Go(Golang)编写的Web框架。 它具有类似于martini的API,其性能比httprouter快40倍。 如果您需要性能和良好的生产率,您会喜欢Gin
Go语言获取命令行参数 本文将在Go语言中使用标准库 os 获取命令行参数;Go语言的 os 库中有一个 Args 属性,可通过它读取程序运行时的命令行参数;
gin及其依赖库完整下载和安装方法 因为在线安装Gin需要科学访问外网,所以你无法使用最简单的方式安装Gin;虽然有其它方法可以安装成功,但那些方法对萌新朋友们不够友好。所以我打包了Gin及其依赖库并上传到了百度网盘,并附上了安装方法。