python - 使用subprocess模块的时候出问题?

 手机用户2402852307 发布于 2022-10-30 05:34

版本为最新的3.5.0
输入的是文档中的示例代码,非但没有得到想要的结果,还出现了如下错误

>>> subprocess.run(["ls", "-l"])  # doesn't capture output
CompletedProcess(args=['ls', '-l'], returncode=0)

>>> subprocess.run("exit 1", shell=True, check=True)
Traceback (most recent call last):
  ...
subprocess.CalledProcessError: Command 'exit 1' returned non-zero exit status 1

>>> subprocess.run(["ls", "-l", "/dev/null"], stdout=subprocess.PIPE)
CompletedProcess(args=['ls', '-l', '/dev/null'], returncode=0,
stdout=b'crw-rw-rw- 1 root root 1, 3 Jan 23 16:23 /dev/null\n')

结果应该如上所示。代码在文档17.5. subprocess — Subprocess management中。
我输入以后得到的结果如下:

>>> import subprocess
>>> subprocess.run(["ls", "-1"])
Traceback (most recent call last):
  File "", line 1, in 
    subprocess.run(["ls", "-1"])
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35-32\lib\subprocess.py", line 696, in run
    with Popen(*popenargs, **kwargs) as process:
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35-32\lib\subprocess.py", line 950, in __init__
    restore_signals, start_new_session)
  File "C:\Users\Administrator\AppData\Local\Programs\Python\Python35-32\lib\subprocess.py", line 1220, in _execute_child
    startupinfo)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。

环境为自带的IDLE,请问这是怎么回事?

1 个回答
  • 大概是因为win下面没有 ls 这个程序吧……

    2022-10-31 21:15 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有