2014-09-11 94 views
0

print(reprt('Hello\nHello'))将打印b'Hello\nHello',我想它打印如何获得打印格式化其输出在python中?

Hello 
Hello 

代替。原因是有些功能如subprocess.check_output发送了repr输出。

params = r'"C:\cygwin64\bin\bash.exe" --login -c ' + r"""'ls "C:\Users"'""" 

print(subprocess.check_output(params, shell=True)) 
+0

你是在错误的轨道上。 1)为什么明确调用bash,如果你想要一个shell,只需使用shell = True。 2)为什么要使用shell?你可以直接调用'ls'。 3)为什么使用ls?你可以使用os.listdir()来列出目录中的文件。 4)没有命令“发送repr输出”,你对你所看到的感到困惑。显示您正在运行的实际命令以及您看到的实际输出。 – 2014-09-12 11:13:16

回答

-1

然后不使用再版只需要使用

print("hello\nhello") 

演示

tracing.py

print("hello\nhello") 

otherscript.py

import subprocess 

print subprocess.check_output('python tracing.py') 

输出

hello 
hello 
+0

我会引用自己的话:“原因是一些函数,如subprocess.check_output发送repr输出。” – Wicelo 2014-09-11 08:36:55

+0

@Wicelo你可以在这里使用check_output – 2014-09-11 08:37:38

+0

'params = r'“C:\ cygwin64 \ bin \ bash.exe”--login -c'+ r“”“'ls”C:\ Users“ ''“”“ print(subprocess.check_output(params,shell = True))' – Wicelo 2014-09-11 08:38:44

-1

你可以试试这个:

>>> eval(repr("Hello")) 
'Hello'