Im正在通过以下方式读取/proc//cmdline文件:
pfile = '/proc/%s/cmdline' % pid
if os.path.isfile(pfile):
fh = open(pfile, 'r')
pname = repr(fh.read())
fh.close()
print pname
输出:
^{pr2}$如果我去掉repr,单词之间就没有空格了
'myexeargarg2'
所以我改成了
' '.join(fh.read().split('\x00'))
然后,我得到:
'myexe arg arg2'
不知道有没有其他方法可以把\x00转换成一个空间?在
如果您查找ASCII表,您将看到} ,可以查看哪些字符是可打印的:
\x00
是空字符。当您打印某些内容时,str
会被调用,它试图创建数据的可打印版本,不可打印字符不会被打印。通过查看^{{输出}当你看到这个^不可打印}。在
但是,}必须在那里可见,因为这是重新创建原始数据所必需的。在
repr
试图生成可以重新创建原始数据的内容,因此{如果你想在任何你有
\x00
的地方得到空间,你只需要用一个fh.replace('\x00', ' ')
的空间来^{这里有一个简短的例子,可以帮助你回答你的问题。在
它将替换出现的事件作为解释here。在
相关问题 更多 >
编程相关推荐