【问题标题】:Giving input to terminal in python在python中给终端输入
【发布时间】:2016-08-21 13:36:05
【问题描述】:

我正在编写代码来读取串行输入。一旦串行输入被读取,我必须在它下面添加一个时间戳,然后是某个软件的输出。为了从软件中获取输出,我希望 python 将某个命令写入终端,然后读取终端上的输出。您能否建议我如何进行最后一步:即写入终端然后读取输出?我是python的初学者,所以如果这听起来微不足道,请原谅。

【问题讨论】:

标签: python python-2.7 terminal


【解决方案1】:

要运行命令并获取返回的输出,您可以使用子进程模块的 check_output 函数。

import subprocess

output = subprocess.check_output("ls -a", shell=True)

这将返回 MacOS/Linux 中的当前目录内容并存储输出以供您稍后在程序中读取。 “shell=True”允许您以字符串“ls -a”的形式执行命令。如果您不使用“shell=True”,您将把命令作为每个命令部分的列表传递,例如 subprocess.check_output(["ls", "-a"])。 Subprocess 是 Python 附带的一个很棒的模块,它允许大量的命令行执行。

因此,使用子进程,您应该能够使用 shell 命令调用另一个程序、代码、命令等。

【讨论】:

    【解决方案2】:

    您需要在软件中实现 python。

    另外,我相信这是今年 GCSE Computing 的一项任务,因为我有幸选择我们正在做的测试,并且有一个关于序列号的问题。

    【讨论】:

      猜你喜欢
      • 2016-10-29
      • 2021-03-27
      • 1970-01-01
      • 1970-01-01
      • 2018-11-04
      • 1970-01-01
      • 2017-12-04
      • 2020-12-15
      • 1970-01-01
      相关资源
      最近更新 更多