【问题标题】:python - globals to access the variables between __main__ and classpython - 访问 __main__ 和类之间的变量的全局变量
【发布时间】:2018-07-09 14:47:18
【问题描述】:

我想在 ma​​in 和一个类之间共享一个值。怎么做?

我正在从 ma​​in 调用一个类。此类执行一个功能,如果它失败,则希望继续执行其他功能。最后,如果任何函数失败,则希望传递状态“False”,如果所有函数都已成功执行,则传递“True”状态。

我想将状态传递回 ma​​in。我在课堂上试过 globals()[status] = True 和 def name = '__main': 调用类方法后。 如果全局()[状态]: print '所有方法执行成功。'

可以在类和ma​​in之间共享一个变量吗?全局变量对我不起作用。

【问题讨论】:

  • 你能发布你的代码吗?
  • 通常你会 return 来自函数的值并将它们作为参数传递给其他函数......!?
  • 在没有实际代码的情况下很难调试,但是如果将 __main 更改为 __main__ 会发生什么?同样比较两个值需要== 而不是=

标签: python python-2.7 class


【解决方案1】:

有你的课:

class testClass():

    def __init__(self):
        self.state = 1

    def funA(self):
        try:
            print("success_#1")
        except:
            self.state = 0

    def funB(self):
        try:
            print("success_#2")
        except:
            self.state = 0

    def funC(self):
        try:
            print("success_#3")
        except:
            self.state = 0

有你的主要:

test = testClass()

while(1):
    test.funA()
    test.funB()
    test.funC()

    if(test.state == 0):
        print("error")
        exit()

【讨论】:

    【解决方案2】:

    globals()['dirCopyFailed'] = False 工作。 我错过了单引号。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-21
      • 2022-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多