[英]Python Variable empty i don't know why
伙计们,我的变量有问题。
当我实例化类时,变量dossierProd和dossierModif不为空,但是当我要使用另一个函数时,她为空。
import glob
class OBDI:
dossierProd = ""
dossierModif = ""
listeFichierProd = []
listeFichierModif = []
def __init__(self, dossierP, dossierM):
dossierProd = dossierM
dossierModif = dossierM
def recupListeFichier(self):
HERE MY VARIaBLE dossierProd & dossierModif as empty
for fichier in glob.glob(str(self.dossierProd) + '*.csv'):
self.listeFichierProd.append(fichier.replace("\\", "/"))
for fichier in glob.glob(str(self.dossierModif) + '*.csv'):
self.listeFichierModif.append(fichier.replace("\\", "/"))
if len(self.listeFichierProd) != len(self.listeFichierModif):
print "toto
您知道为什么我的变量为空吗?
谢谢您的回应。 对不起,我的英语不好 ;)
哦,谢谢,这个错误是如此愚蠢。 我习惯了Java
您尚未在__init__()
初始化dossierP
和dossierM
实例变量:
def __init__(self, dossierP, dossierM):
self.dossierProd = dossierM
self.dossierModif = dossierM
self.
观察self.
这里。
另外,由于似乎dossierProd
和dossierModif
变量仅对具有OBDI
类的实例OBDI
,因此删除dossierProd = ""
和dossierModif = ""
行。
另外,您可能不想在OBDI
类实例之间共享listeFichierProd
和listeFichierModif
列表-在__init__()
初始化列表:
def __init__(self, dossierP, dossierM):
self.dossierProd = dossierM
self.dossierModif = dossierM
self.listeFichierProd = []
self.listeFichierModif = []
并删除listeFichierProd = []
和listeFichierModif = []
行。
确保您了解以下线程中讨论的内容:
希望能有所帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.