在Python中重定向系统调用输出
我希望在 python 中执行 os.system('ls') 。该语句的返回值是一个错误代码整数..但我想以字符串形式获取当前目录的内容。如何做到这一点?
I wish to execute os.system('ls') in python. the return value of this statement is an error code integer..but I want to get the contents of the present directory as a string. How to accomplish this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
os.listdir(".")
一般来说,如果你想调用函数并获取参数,你应该使用
subprocess.Popen()
。但是许多基本目录内容都在 os 模块中,因此您不必这样做。os.listdir(".")
In general, if you want to call a function and get the arguments, you should use
subprocess.Popen()
. But a lot of the basic directory stuff is in theos
module so you don't have to do that.Python 作为内置功能,例如 os.listdir() 或 os.walk() 用于列出内容
在文件系统上。自己运行“ls”是非常糟糕的风格。一般来说,查看子流程模块的文档,为您提供与外部命令交互的所有灵活性。
Python as build-in functionality like os.listdir() or os.walk() for listing stuff
on the filesystem. Running 'ls' yourself is very bad-style. In general look at the documentation of the subprocess module giving you all flexibility for interacting with external commands.