查看“︁python os.popen close:IOError”︁的源代码
←
python os.popen close:IOError
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于这些用户组的用户执行:*、
用户
您可以查看和复制此页面的源代码。
前提:手机未连上adb 版本: <pre> F:\W\MP\trunk\python> python --version Python 2.7.3 </pre> 执行如下脚本: <pre class="prettyprint"> import os import traceback fout = os.popen("adb shell ls /system/bin/abcd") fout.close() print 'hello' </pre> ==> <pre> F:\W\MP\trunk\python> python pytest.py Traceback (most recent call last): File "pytest.py", line 5, in <module> fout.close() IOError: [Errno 0] Error </pre> <br> 对IOError进行catch后,虽也会抛出异常,但被catch后不会影响脚本的运行: <pre class="prettyprint"> import os import traceback try: fout = os.popen("adb shell ls /system/bin/abcd") fout.close() except IOError: #traceback.print_exc() pass print 'hello' </pre> ==> <pre> F:\W\MP\trunk\python> python pytest.py hello </pre> 原因:python的一个bug,即当os.popen执行任务失败,返回负数时,在close时会抛出上述异常: http://bugs.python.org/issue602245 另外,现在也不建议用os.popen,推荐使用 subprocess: http://www.gossamer-threads.com/lists/python/bugs/615568?do=post_view_threaded#615568
返回
python os.popen close:IOError
。
导航菜单
个人工具
创建账号
登录
命名空间
页面
讨论
大陆简体
查看
阅读
查看源代码
设置
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
工具
所有页面
文件列表
页面信息
特殊页面