是否可以将多个变量传递给未在调用它的前一个函数中局部声明(或全局声明)的函数?

冲劲

在 python/Selenium 中,我有一个 web 自动化脚本,它使用 5 个单独的函数来完成一个任务。函数调用链是线性的,因为每个调用都依赖于最后一个执行。

我遇到的问题是我不想全局声明要在最终函数“checkout”中使用的所有变量。我不能在任何函数中输入变量,因为它会延迟时间关键的函数。

然而,我可以在计时器结束和程序开始之前接受这些。这些变量当前都是执行此操作的主函数的本地变量。在这样做时,我必须通过每个函数传递所有 10 个变量,直到最后一个。有没有办法避免这种情况,而只是将变量“传递”给最终函数,尽管它们不是在前一个函数中全局或局部声明的?

安德烈洪德拉里

您可以将所有函数作为方法放在一个类中,该类将这些变量保存为一种状态,例如:

class MyRunner():

    def __init__(self, val1, val2, val3):
        self.val1 = val1
        self.val2 = val2
        self.val3 = val3

    def method1(self):
        print("Call of method 1", self.val1, self.val2, self.val3)

    def method2(self):
        print("Call of method 2", self.val1, self.val2, self.val3)

    def method3(self):
        print("Call of method 3", self.val1, self.val2, self.val3)


runner = MyRunner(10, 20, 30)
runner.method1()
runner.method2()
runner.method3()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将变量传递给在另一个函数中声明的函数

将函数变量声明为局部变量而不是全局变量是否影响效率?

在函数内声明一个变量以在函数外使用(但不能全局声明)

在DB2中,如何声明一个变量以在函数中的多个已声明的全局临时表中使用。

是否可以将几个不同的函数声明指向一个函数定义

Scala:将函数A作为参数传递给函数B,B为函数A声明一个隐式参数

是否可以在Python中向前声明一个函数?

我可以在构造函数中创建一个局部函数并调用它吗

试图将 int* 传递给函数并在另一个函数内部运行。 int* 在 main 中声明

如何将一个函数的另一个对象的属性传递给一个函数,并在javascript中调用它?

使用全局变量的函数是否可以使用函数声明时而不是调用时的变量值?

将多个id传递给一个ajax函数

将多个数组传递给一个函数

试图声明一个函数的局部变量,但得到范围错误

是否可以将Groovy闭包定义为变量传递给函数以执行,而另一个变量作为传递的调用的一部分?

将局部变量从函数传递给另一个 - 自动化无聊的练习

是否可以将 &self 传递给 rust 中的另一个函数

如何将一个函数作为参数传递给Perl中的另一个函数,然后调用它?

javascript - 函数表达式和声明中局部变量的范围

我可以将一个函数传递给另一个函数,该函数调用具有依赖性的函数吗?

将一个函数传递给另一个函数,其中内部函数可以访问较大函数 python 中的变量

如何声明两个类,以便可以将它们传递给同一函数?

将一个函数变量正确传递给另一个函数?

Scala Akka:在接收函数中声明一个全局变量

将全局变量传递给函数是否有问题?

我是否可以在R中仅为类的多个对象声明一个通用函数(例如“ plot”或“ summary”)?

在函数式编程中,函数可以调用在其作用域之外声明但未作为参数传递的另一个函数吗?

将声明表变量传递给另一个存储过程

在声明函数之前调用它