首页 >后端开发 >Python教程 >使用 Python 实现自动化。

使用 Python 实现自动化。

Linda Hamilton
Linda Hamilton原创
2024-12-02 15:15:16321浏览

Automações com Python.

此代码旨在在不同的终端上异步运行 Python 程序。我将一步步解释代码各部分的作用。

1. 子流程模块导入

import subprocess

子进程模块允许您从Python程序创建和管理操作系统进程。此处用于在新终端窗口中启动 Python 程序。

2. execute_program函数

def executar_programa(caminho_programa):
    try:
        # Executa o programa em uma nova janela de terminal
        subprocess.Popen(
            ["python", caminho_programa],
            creationflags=subprocess.CREATE_NEW_CONSOLE
        )
        print(f"Programa {caminho_programa} iniciado com sucesso.")
    except Exception as e:
        print(f"Erro ao iniciar o programa {caminho_programa}: {e}")

该函数负责在新的终端窗口中运行Python程序:

  • Program_path 参数: 要运行的 Python 脚本的绝对路径。

  • subprocess.Popen: 在操作系统中启动一个新进程。

    • 列表 ["python", program_path] 是将在终端中执行的命令。第一个“python”项是Python解释器,第二个program_path项是要执行的Python脚本。
    • creationflags=subprocess.CREATE_NEW_CONSOLE: 此标志为进程创建一个新的终端窗口,而不是在当前终端窗口中运行它。
  • try 和 except: try 块尝试执行程序。如果发生错误(例如脚本路径不正确), except 块会捕获异常并打印错误消息。

3. 主要功能

def main():
    # Caminhos para os programas que você deseja executar
    programa1 = r"C:\Users\hbvbr\Documents\DEV\AlgotradingCopia\eaEquiti\eaEquiti108.py"
    programa2 = r"C:\Users\hbvbr\Documents\DEV\AlgotradingCopia\eaEquiti690\eaEquiti690.py"
    programa3 = r"C:\Users\hbvbr\Documents\DEV\AlgotradingCopia\eaFtmo\eaFtmo.py"
    programa4 = r"C:\Users\hbvbr\Documents\DEV\AlgotradingCopia\eaEquiti224\eaEquiti224.py"

    # Executa cada programa em um terminal separado
    executar_programa(programa1)
    executar_programa(programa2)
    executar_programa(programa3)
    executar_programa(programa4)

在主函数中:

  • 定义程序的路径:这里定义了四个变量(program1、program2、program3、program4),其中包含要运行的Python脚本的绝对路径。路径被写入原始字符串(以 r 为前缀)以避免反斜杠问题。

  • 调用execute_program函数:对于每个程序,都会调用execute_program函数。每个 Python 脚本都在新的终端窗口中运行。

4. 条件执行 if __name__ == "__main__":

import subprocess
  • if __name__ == "__main__"::此条件检查 Python 文件是否正在直接执行(而不是作为另一个脚本中的模块导入)。如果直接执行,将调用 main() 函数并启动程序。

流程总结:

  1. 脚本首先执行 main 函数。
  2. 主函数为四个脚本中的每一个调用execute_programa,并传递程序路径。
  3. execute_program 函数使用 subprocess.Popen 在新的终端窗口中运行每个 Python 脚本。
  4. 如果尝试运行任何程序时出现任何错误,错误将被捕获并显示一条消息。

它在操作系统中的工作原理:

  • 使用 CREATE_NEW_CONSOLE 的 subprocess.Popen 将打开一个新的操作系统终端窗口(在 Windows 上,通常是 cmd 或 PowerShell),并在每个窗口中运行指定的 Python 程序。

这就是代码的基本功能!如果您需要更多细节或调整,请随时询问。

以上是使用 Python 实现自动化。的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn