迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

Python 中的 Pexpect

作者:迹忆客 最近更新:2023/07/02 浏览次数:

我们将通过示例介绍Python中的Pexpect。


Python 中的 Pexpect

Python 是一种非常流行的语言,用于数据科学和机器学习。 它是一种非常强大的语言,因为 Python 具有可用于不同目的的内置库。

在这篇文章中,我们将研究Python中的pexpect。 Pexpect 是一个功能强大的库,用于创建子进程并自动控制它们。

它可以测试漏洞或执行我们能想到的任何任务。

大多数情况下,它可用于测试系统的用例,以检查系统在某些任务下的工作情况以及系统在这些任务下的执行情况。 我们还可以用它来自动化日常生活中的一些小任务。

我们可以使用它来组织安装脚本,以便在多个服务器上下载软件包。 Pexpect 是 Expect 系列交互式多线程命令行解释器的 Python 接口。

Pexpect 是一个用于通过网络连接在远程计算机上生成网络程序的库。

它通常用于编写网络服务脚本,例如 SSH 或 Telnet。 它对于独立的生成程序也很有用。

现在让我们在我们正在开发的软件中安装 pexpect。 在 Python 中安装 pexpect 最简单的方法是使用 pip 包管理器。

我们可以使用以下命令安装它。

# python
pip install pexpect

如果没有安装pip,可以使用以下命令安装。

# python
pip install python-pip

Python 中 Pexpect 的方法

现在,让我们讨论如何在应用程序中使用 pexpect。 我们可以通过三种不同的方法在我们的应用程序中使用 pexpect。

我们将讨论的第一个方法是 run() 方法。

Pexpect 中的 Run() 方法

Run() 是 pexpect 的一个强大方法,可用于执行命令并返回从该命令接收到的结果。 此方法取代了另一个强大的库方法 os.system。

现在,让我们使用这个方法通过 echo 命令打印 Hello World。 首先,我们将导入 pexpect 库,然后,我们将使用 run() 方法,如下所示。

# python
import pexpect

print(pexpect.run('echo Hello World'))

输出:

Linux系统上的pexpect run方法

从上面的示例中可以看出,我们的方法使用 pexpect 的 run() 方法执行 Python 文件内的命令行代码。

从上面的示例中需要注意的一件重要事情是,该命令适用于 Linux 系统,而不是 Windows。

Pexpect 中的 Spawn() 方法

现在我们将讨论 pexpect 的另一种方法,该方法可用于生成子进程并控制它们。 由于我们用命令行提示符替换了 run() 方法中的字符串,因此我们可以在 spawn() 中执行相同的操作,并使用它来执行 shell 命令并在执行后获取结果。

现在,让我们在示例中使用它,在该示例中我们将使用 spawn() 方法启动一个子进程。 我们将使用相同的场景来使用 spawn 来回显字符串。

之后,我们将向 expect() 方法发送一个数组,以从数组中的字符串匹配上述命令,并返回与我们的命令匹配的元素的位置,如下所示。

# python
import pexpect

childProcess = pexpect.spawn("echo Hello World")

# prints he matched index of string.
print(childProcess.expect(["Python", "Hello World", "Child Process"]))

输出:

Linux系统上的pexpect spawn和expect方法

从上面的例子可以看出,字符串在数组中的位置是第二位,而且数组是从0开始的,所以输出的是正确的位置。

在本文中,我们讨论了 pexpect 的三种方法,它们可用于执行不同的功能,并且它们可以一起使用以使其成为一个大函数,如上一个示例所示。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Pandas read_csv()函数

发布时间:2024/04/24 浏览次数:254 分类:Python

Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。

Pandas 追加数据到 CSV 中

发布时间:2024/04/24 浏览次数:352 分类:Python

本教程演示了如何在追加模式下使用 to_csv()向现有的 CSV 文件添加数据。

Pandas 多列合并

发布时间:2024/04/24 浏览次数:628 分类:Python

本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。

Pandas loc vs iloc

发布时间:2024/04/24 浏览次数:837 分类:Python

本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便