码迷,mamicode.com
首页 > 编程语言 > 详细

python中os.popen, os.system()区别

时间:2018-12-12 00:38:27      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:app   pac   nload   padding   pen   dia   ati   注意   val   

直接上个例子吧,注意结果,os.system的结果只是命令执行结果的返回值,执行成功为0:

1
2
3
4
5
6
7
8
9
10
>>> a=os.system(‘ls‘)
Applications             Movies                   python-oldboy
Applications (Parallels) Music                    python3.sublime-build
Desktop                  Pictures                 rpro.log
Documents                Public                   test.py
Downloads                PycharmProjects          test.pyc
GitHub_source            Python_Assignment
Library                  oradiag_shane
>>> a
0

可以看到,a为0

但用os.popen就可以读出执行的内容,popen返回的是file read的对象,对其进行读取使用read(),就可看到执行的输出:

1
2
3
4
5
6
>>> b=os.popen(‘ls‘)
>>> b.read()
‘Applications\nApplications (Parallels)\nDesktop\nDocuments\nDownloads\nGitHub_source\nLibrary\nMovies\nMusic\nPictures\nPublic\nPycharmProjects\nPython_Assignment\noradiag_shane\npython-oldboy\npython3.sublime-build\nrpro.log\ntest.py\ntest.pyc\n‘
>>> type(b)
<class ‘os._wrap_close‘>
>>>

可以看出,输出的结果比较特殊,带换行符\n

python中os.popen, os.system()区别

标签:app   pac   nload   padding   pen   dia   ati   注意   val   

原文地址:https://www.cnblogs.com/hcxy2007107708/p/10105527.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!