Python 我使用这样的全局变量是否犯了错误?
我试图使用全局变量,以便在代码开始时声明它们,就像在C#中一样。但是,当我在一个函数中编辑它们,并尝试在另一个函数中调用它时,它会抛出一个错误,表示未声明该变量 这是我声明变量的地方:Python 我使用这样的全局变量是否犯了错误?,python,tkinter,Python,Tkinter,我试图使用全局变量,以便在代码开始时声明它们,就像在C#中一样。但是,当我在一个函数中编辑它们,并尝试在另一个函数中调用它时,它会抛出一个错误,表示未声明该变量 这是我声明变量的地方: from tkinter import * import os global Name global Wmain global directory global Username global Password global Code 这是我更改目录变量的位置: def NameGet(): Nam
from tkinter import *
import os
global Name
global Wmain
global directory
global Username
global Password
global Code
这是我更改目录变量的位置:
def NameGet():
Name = NameEntry.get()
directory = ('C:\\Users\\Bradley\\Desktop\\Log In system\\Members\\' + Name + '.txt')
CheckFile(Name)
这就是我得到错误的地方:
def SignUpFinished():
with open(directory, W) as F:
F.write(Username)
F.write(Password)
F.write(Code)
F.close()
现在我觉得我要么犯了一个真正的新手错误,要么我的代码有问题。有什么想法吗 要使用全局变量,需要在方法内部显式设置它 例如:
a=4
def func():
global a
print(a)
func()
无论您想在函数中使用什么变量,您都需要在开始时添加
global var
(其中var是您想要更改的var)。与其使用这么多全局变量,我建议使用一个类来管理与同一任务相关的不同方法。如果是这种情况,那么最好将它们粘贴到自己的文件中,然后导入它们。如果您需要更改这些值,那么您可能希望将它们包装到一个单例类中。当我尝试将global放在前面时,因为我在语句中使用了global,我假设它会抛出一个错误。是否有人能够向我展示一个基本类,我可以将其用于结构,因为我从未深入到类中