【问题标题】:Global variables/ Classes全局变量/类
【发布时间】:2015-06-23 20:33:40
【问题描述】:

我需要将在类方法中创建的值传递给“主程序”中的函数、过程或 def 或任何它被调用的东西

global myValue

class CalcFrame(object):
        def clearFunc(self):
                myValue = 12

def getUrl():
        print myValue

这是我的想法,显然行不通:

我做那个代码,然后我创建一个对象

x = CalcFrame()

调用应该设置全局的方法

x.clearFunc()

然后调用应该打印它的函数

getUrl()

得到错误

NameError:未定义全局名称“myValue”

【问题讨论】:

标签: python


【解决方案1】:

这不是global 关键字的使用方式。

应该这样使用

myValue = None

class CalcFrame(object):
    def clearFunc(self):
            global myValue
            myValue = 12

简而言之,global 允许函数修改一个在全局范围内存在的变量。更多信息请看这里:https://docs.python.org/2/faq/programming.html#what-are-the-rules-for-local-and-global-variables-in-python

【讨论】:

    猜你喜欢
    • 2016-10-06
    • 1970-01-01
    • 2015-05-24
    • 1970-01-01
    • 1970-01-01
    • 2015-08-19
    • 2021-03-13
    • 2023-03-18
    • 1970-01-01
    相关资源
    最近更新 更多