在Python中每行代码之后检查条件

问题描述

我有一个带有脚本的函数,该脚本可读取一些数据并在SAP-GUI中执行一些操作。也许,在GUI中会弹出一个消息窗口,我想抓取该消息窗口以继续执行脚本。为此,我必须在脚本的每一行之后检查是否出现弹出窗口。

我所拥有的:

def mysap_script():
    command1
    command2
    command3

我必须做的,但是要避免:

def mysap_script():
    command1
    if message_window opens: do some actions
    command2
    if message_window opens: do the same action as before
    command3
    if message_window opens: do the same action as before

有没有一种有效且简便的方法解决此问题?

解决方法

您可以使用检查所需条件的函数来包装命令。

def wrapped_cmd(cmd):
    if cond:
        something()
    cmd()

然后像这样调用它

def mysap_script():
    wrapped_cmd(cmd)