python调用外部程序的实操步骤

当我们需要在 Python 中执行一些本地系统的运行程序时,可以使用 Python 内置的 subprocess 模块进行调用。

以下是调用外部程序的实际步骤:

1.导入 subprocess 模块:

python
import subprocess

2.指定需要调用的外部程序的路径以及执行的参数:

python
cmd = ['program_path', 'arg1', 'arg2', 'arg3']

其中,'program_path' 表示外部程序的路径,'arg1', 'arg2', 'arg3' 表示需要传递给外部程序的参数。

3.使用 subprocess.Popen() 函数执行外部程序:

python
result = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

Popen() 中的 stdout 和 stderr 参数分别表示标准输出和标准错误输出,这里我选择将它们当做管道。

4.通过 result.stdout 或 result.stderr 读取输出结果:

python
output, err = result.communicate()

这里使用 communicate() 方法获取标准输出和标准错误输出,以便后续操作。

下面是两个调用外部程序的示例。

  • 示例1:在 Python 中执行 Linux 命令 'ls -l',并将结果输出到控制台

我们可以使用 Linux 命令 'ls -l' 来列出当前目录下的所有文件和文件夹的详细信息,下面是调用该命令的代码示例:

```python
import subprocess

cmd = ['ls', '-l']
result = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
output, err = result.communicate()

print(output.decode())
```

运行输出:

total 8
drwxr-xr-x 5 user staff 160 Sep 1 12:34 folder
-rw-r--r-- 1 user staff 62 Sep 1 12:34 file1.txt
-rw-r--r-- 1 user staff 76 Sep 1 12:34 file2.txt

  • 示例2:在 Python 中调用 ffmpeg 实现视频剪切

我们可以使用 ffmpeg 命令来对视频进行剪辑编辑,下面是通过 python 调用 ffmpeg 完成视频剪辑的代码示例:

```python
import subprocess

# 视频剪辑的命令
cmd = ['ffmpeg','-i','input_video.mp4', '-ss', '00:00:02','-t', '00:00:10','-c:v', 'copy','-c:a', 'copy', 'output_video.mp4']
result = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
output, err = result.communicate()

print("剪辑完成!")
```

该示例中,剪辑命令对应的参数和参数含义如下:

  • -i: 输入视频文件名
  • -ss: 开始时间,格式为 HH:MM:SS
  • -t: 结束时间,格式为 HH:MM:SS
  • -c:v copy: 编码器和视频数据直接复制,无需重新编码
  • -c:a copy: 编码器和音频数据直接复制,无需重新编码
  • output_video.mp4: 输出视频文件名

运行输出:

剪辑完成!

以上就是调用外部程序的实际步骤和两个示例的详细说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python调用外部程序的实操步骤 - Python技术站

(0)
上一篇 2023年5月31日
下一篇 2023年5月31日

相关文章

  • Python实现扫码工具的示例代码

    下面我详细讲解一下 Python 实现扫码工具的示例代码的完整攻略。 1. 需要的 Python 库 在 Python 中实现扫码工具,我们需要使用一些第三方库。 opencv-python: 实现图像处理,可以用来打开摄像头和捕获图像。 pyzbar: 解码二维码,读取二维码的信息。 pillow: 显示图片或编码图片。 可以使用 pip 命令来安装以上三…

    python 2023年5月19日
    00
  • python起点网月票榜字体反爬案例

    标题:Python起点网月票榜字体反爬攻略 背景 近期,一些小说网站开始使用字体反爬技术,其中包括起点网。这种技术会将数字、字母等常见字符用特殊的字体进行替换,而无法被普通的爬虫直接解析。本文将介绍如何通过Python爬虫绕过起点网月票榜字体反爬机制。 方案 本方案采用Selenium模拟浏览器访问页面,通过BeautifulSoup解析页面,最后得到月票榜…

    python 2023年6月3日
    00
  • 从 python 连接到 oracle 时,sys 用户的登录被拒绝

    【问题标题】:logon denied for sys user when connecting from python to oracle从 python 连接到 oracle 时,sys 用户的登录被拒绝 【发布时间】:2023-04-03 15:28:04 【问题描述】: 我在使用 python 3.4 连接到 Oracle 11g 时遇到登录被拒绝错…

    Python开发 2023年4月8日
    00
  • Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例

    下面就来详细讲解如何实现Python3监控Windows和Linux系统的CPU、硬盘、内存使用率和各个端口的开启情况的完整攻略。 一、监控CPU、内存、硬盘 1. 安装psutil模块 psutil是一个跨平台的库,可以方便地实现对系统的各项性能指标的获取,如CPU、内存、硬盘等。在Python3中使用pip安装即可。 pip3 install psuti…

    python 2023年5月30日
    00
  • python进阶从青铜到王者一定会用上的Python技巧

    Python进阶从青铜到王者一定会用上的Python技巧 Python是一种广泛使用的高级编程语言,它在数据分析、科学计算、Web开发、机器学习、深度学习等领域均得到了广泛的应用。本文将介绍几个从Python初学者到Python高手都常常用到的Python技巧,帮助你从青铜装备逐步进阶到王者。 一、列表推导式 列表推导式(List comprehension…

    python 2023年6月3日
    00
  • Python 异常处理Ⅳ过程图解

    Python 异常处理过程图解 概述 异常处理是编写高可靠性程序的关键技能。当发生异常时,程序不会终止,而是跳转到相应的异常处理代码块。Python 中的异常处理包括 try、except、else 和 finally 四个关键字。错误类型需要与 Exception 类或其子类相匹配。 异常处理过程图解 异常处理流程如下: 程序运行,尝试执行 try 代码块…

    python 2023年5月13日
    00
  • Ubuntu 下 vim 搭建python 环境 配置

    下面是关于在Ubuntu下使用vim搭建Python环境的攻略。 简介 在使用Python进行开发的过程中,一个好的编辑器对于开发效率提升至关重要。在Ubuntu系统中,Vim是一款非常受欢迎的编辑器,本文将详细介绍如何使用Vim搭建Python开发环境。 步骤 以下是Vim搭建Python环境的步骤: 1. 安装Vim 如果你还没有在Ubuntu中安装Vi…

    python 2023年6月3日
    00
  • python定位xpath 节点位置的方法

    下面是关于”Python定位XPath节点位置的方法”的完整攻略。 标题:Python定位XPath节点位置的方法 简介 XPath是一种用来在XML文档中定位元素的语法规则,可以用于解析XML和HTML文档。Python语言通过使用XPath语法来轻松获取XML和HTML文档中的对象。Python中有多种方式来实现XPath定位,其核心是使用lxml库内置…

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部