【急求】: python 处理字符串时的奇怪现象

【急求】: python 处理字符串时的奇怪现象

我的python 代码如下:


if __name__ == '__main__' :

    import commands

    # 用于统计cpu 的使用情况
    out = commands.getoutput(""" top -n 1 |grep Cpu |awk '{print $2$3$4$5$6}' """)

    print out
    print out.strip().split(',')


其输出为:

0.2%us,0.1%sy,0.0%ni,99.6%id,0.1%wa,
['0.2%\x1b(B\x1b[m\x1b[39;49mus', '\x1b(B\x1b[m\x1b[39;49m\x1b(B\x1b[m0.1%\x1b(B\x1b[m\x1b[39;49msy', '\x1b(B\x1b[m\x1b[39;49
m\x1b(B\x1b[m0.0%\x1b(B\x1b[m\x1b[39;49mni', '\x1b(B\x1b[m\x1b[39;49m\x1b(B\x1b[m99.6%\x1b(B\x1b[m\x1b[39;49mid', '\x1b(B\x1b
[m\x1b[39;49m\x1b(B\x1b[m0.1%\x1b(B\x1b[m\x1b[39;49mwa', '\x1b(B\x1b[m\x1b[39;49m\x1b(B\x1b[m']

第一行是正确的 ,就是一串cpu的状态,但是一旦一样  split() 就变成上面的东西了。
很奇怪,搞不明白,不知道是top 命令的问题,还是 python:split 的问题? 请高手指点。。。
print out.strip().split(',')
这个返回的是数组类型,你可以这样来输出
tmp = out.strip().split(',')
for t in tmp:
    print t
好的,我测试一下,谢谢了啊。