指稍后在cod中创建的对象

2024-09-30 16:35:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在制作一个python应用程序,我有一个类,它带有一个函数,可以更改在该类之后创建的变量。我不能把这个变量放在类之前,因为这个变量引用了类中的变量,我最终得到了一个悖论。它看起来像这样:

class LeClass:
    def __init__(self):
        #Casual__init__Stuff

    def LeFunction(self):
        A = 1

A = LeClass()

有人有办法吗?谢谢


Tags: 函数self应用程序initdefclassstuff办法
2条回答

当您尝试使用该变量时,只需告诉python首先查找类外的变量

代码如下:

class LeClass:
def __init__(self):
    pass
    #Casual__init__Stuff

def LeFunction(self):
    global A
    A = 1


A = LeClass()
print("First Print :", A)
A.LeFunction()
print("Second Print :", A)

下面是代码的输出: 

First Print : <__main__.LeClass object at 0x7f2ba3f1bb38>
Second Print : 1

声明变量A全局,然后从类代码中赋值:

global A
A = 1

否则,在方法返回后,A将是一个超出范围(不再可访问)的局部变量

相关问题 更多 >