小编Smi*_*ith的帖子

在python中将整数转换为二进制

为了将整数转换为二进制,我使用了以下代码:

>>> bin(6)  
'0b110'
Run Code Online (Sandbox Code Playgroud)

什么时候擦除'0b',我用这个:

>>> bin(6)[2:]  
'110'
Run Code Online (Sandbox Code Playgroud)

我能做些什么,如果我想表明6作为00000110代替110

python binary integer

159
推荐指数
9
解决办法
25万
查看次数

在Python 2.7中将字符串更改为字节类型

在python 3.2中,我可以轻松地更改对象的类型.例如 :

x=0
print(type (x))
x=bytes(0)
print(type (x))
Run Code Online (Sandbox Code Playgroud)

它会给我这个:

<class 'int'>
<class 'bytes'>
Run Code Online (Sandbox Code Playgroud)

但是,在python 2.7中,似乎我不能用同样的方法来做到这一点.如果我做相同的代码,它给我这个:

<type 'int'>
<type 'str'>
Run Code Online (Sandbox Code Playgroud)

如何将类型更改为字节类型?

python byte types version

11
推荐指数
2
解决办法
3万
查看次数

以正确的方式编写十六进制(在python中)

我有一个二进制文件来读取,我想以适当的十六进制形式显示结果.代码如下:

file=open('myfile.chn', 'rb')   
while 1:  

        b=fic.readline(1)
        print(b)
file.close()
Run Code Online (Sandbox Code Playgroud)

结果如下:

b'\xff'  
b'\xff'  
b'\x01'  
b'\x00'  
.  
.  
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能改变结果如下:

FF  
FF  
01  
00  
.  
.
Run Code Online (Sandbox Code Playgroud)

python hex

1
推荐指数
1
解决办法
864
查看次数

使用python的二进制文件中的EOF

我已经制作了一个代码来读取二进制文件,如下所示:

file=open('myfile.chn','rb')  
i=0  
for x in file:  
   i=i+1  
   print(x)  
file.close()
Run Code Online (Sandbox Code Playgroud)

结果如下(其中一部分): b'\x00\x00\x80?\x00\x00\x00\x005.xx\x00S\xd4\n'

如何检测此二进制文件的EOF?我想在找到EOF后打印().我试过这个,但什么都没发生.

if (x=='\n'):
print()
Run Code Online (Sandbox Code Playgroud)

(更新)

@aix:假设文件的结果很少,就像例子一样,每一行的末尾都有'\n',我想在每一行之间加一个空格.

b'\x00\x00\x80?\x00\x00\x00\x005.xx\x00S\xd4\n'

b'\x82\x93p\x05\xf6\x8c4S\x00\x00\xaf\x07j\n'
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

python binary eof

1
推荐指数
1
解决办法
2742
查看次数

标签 统计

python ×4

binary ×2

byte ×1

eof ×1

hex ×1

integer ×1

types ×1

version ×1