在MATLAB和Python中转换为二进制

Mic*_*l D 3 python string binary matlab

我有一些Matlab代码,我试图转换为Python.

在Matlab中,代码接受一个字符串并将其转换为double,然后转换为二进制.

x = dec2bin(double(string), 8);
Run Code Online (Sandbox Code Playgroud)

现在,该字符串包含数字,字母,小数点和逗号.Matlab转换它没有问题.

Python中有什么可以做到的吗?

我尝试过使用bin(),首先将字符串更改为float,各种Numpy选项如:

x = numpy.base_repr(string, 2, 8)
Run Code Online (Sandbox Code Playgroud)

numpy.binary_repr()
Run Code Online (Sandbox Code Playgroud)

jab*_*edo 6

您可以通过以下方式轻松完成:

>>> string = "foo"
>>> res = [bin(ord(i)) for i in string]
['0b1100110', '0b1101111', '0b1101111']
Run Code Online (Sandbox Code Playgroud)

matlab中的相同示例给出了相同的结果:

>>> dec2bin(double('foo'), 8)
01100110
01101111
01101111
Run Code Online (Sandbox Code Playgroud)