簡體   English   中英

Python變量為空我不知道為什么

[英]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__()初始化dossierPdossierM實例變量:

def __init__(self, dossierP, dossierM):
    self.dossierProd = dossierM
    self.dossierModif = dossierM

self.觀察self. 這里。

另外,由於似乎dossierProddossierModif變量僅對具有OBDI類的實例OBDI ,因此刪除dossierProd = ""dossierModif = ""行。

另外,您可能不想在OBDI類實例之間共享listeFichierProdlisteFichierModif列表-在__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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM