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

yizhihongxing

当我们需要在 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. 安装必要的库 要获取图片颜色信息,我们需要安装 PIL 或者 Pillow 库,它们都提供了处理图像的接口。在命令行中输入以下命令进行安装: pip install Pillow 2.读取图片 接下来,我们需要读取图片。我们可以使用 Python 的 PIL 库或者 Pillow 库,读取图…

    python 2023年5月18日
    00
  • python使用minimax算法实现五子棋

    Python使用Minimax算法实现五子棋 Minimax算法是一种常用的博弈树搜索算法,它可以用于实现五子棋等游戏的人工智能。在本文中,我们将介绍如何使用Python实现Minimax算法来实现五子棋的人工智能。我们分为以下几个步骤: 定义游戏状态 定义Minimax算法 示例说明 步骤1:定义游戏状态 在实现Minimax算法之前,我们定义游戏状态。在…

    python 2023年5月14日
    00
  • Python计算点到直线距离、直线间交点夹角

    Python计算点到直线距离、直线间交点夹角是比较基础的数学计算,基于向量点积和叉积的概念。 计算点到直线距离 假设有直线L,过点P,直线上有一点A,我们需要计算点P到直线L的距离。假设向量AP和向量AB的点积(dot product)为cosθ: $$AP·AB = |AP||AB|cosθ$$ 则可以得到垂线段的长度: $$PS = |AP|sinθ =…

    python 2023年6月5日
    00
  • Python全栈之字符串和列表相关操作

    以下是“Python全栈之字符串和列表相关操作”的完整攻略。 1. 字符串相关操作 1.1 字符串的切片操作 在Python中,可以使用切片操作(slice)来获取字符串中的子串。具体来,我们可以使用[start:end:step]的形式来指定切片的范和步长。例如: my_str = ‘hello world’ sub = my_str[0:5] print…

    python 2023年5月13日
    00
  • 火遍全网的Python能干什么?一文了解

    作为一个实用主义的学习者,最关心的问题一定是 “我为什么要选择学Python,学会之后我可以用来做什么?” 在上篇《为什么选择Python入门》文章中,我们已经明白了为什么选择学习Python,本文就带你了解学完Python之后可以用来做什么。 Python之所以能火爆全网,得益于Python广泛的应用领域。 Python的应用领域 纵观全球大中型互联网企业…

    2022年10月25日 Python编程基础
    00
  • Python实现读取json文件到excel表

    接下来我会详细讲解如何用Python实现读取json文件到excel表的完整实例教程,并提供两条示例说明。 1. 准备工作 首先需要掌握以下Python模块: json: 能够处理json格式数据的模块。 pandas: 能够将数据转化为Excel格式并进行导出的模块。 需要注意的是,需要先安装以上两个模块,可以通过pip或其他方法进行安装。 2. 读取js…

    python 2023年5月14日
    00
  • 从 Apache 运行 python 脚本的最简单方法

    【问题标题】:Easiest way to run python script from Apache从 Apache 运行 python 脚本的最简单方法 【发布时间】:2023-04-06 05:21:01 【问题描述】: 我花了很长时间试图弄清楚这一点。我基本上是在尝试开发一个网站,当用户单击特定按钮时,我必须在其中执行 python 脚本。在研究了 …

    Python开发 2023年4月7日
    00
  • python 动态生成变量名以及动态获取变量的变量名方法

    当然,我很乐意为您提供“Python动态生成变量名以及动态获取变量的变量名方法”的完整攻略。以下是详细的步骤和示例: Python动态生成变量名以及动态获取变量的变量名 在Python中,我们可以使用字符串拼接的方式来动态生成变量名,也可以使用globals()函数和locals()函数来动态变量变量名。 1. 动态生成变量名 在Python中,我们可以使用…

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