无法打印os.urandom()

时间:2015-05-15 14:00:25

标签: python python-2.7 printing

我有以下问题。我试图打印os.urandom(10)的输出,我在输出中什么也得不到。现在我已经通过打印os.urandom的repr找到了一个解决方法但是它真的很奇怪,特别是考虑到os.urandom的实际类型是字符串。

有没有人遇到同样的问题或者知道为什么会这样? 我在Spyder上使用python 2.7,下面是这个现象的副本:

>>> import os
>>> out = os.urandom(10)
>>> print out
>>> out
'\x96\x02\x1b\xa9\xa2z\xc4\xf0\xa4\xfa'
>>> type(out)
<type 'str'>
>>> print repr(out)
'\x96\x02\x1b\xa9\xa2z\xc4\xf0\xa4\xfa'

1 个答案:

答案 0 :(得分:3)

这些是非打印字符。完全不按原样打印它们是不合理的。如果您只想使用hexdump,请使用binascii.hexlify()