2016-03-23 31 views
0

Bu inanılmaz derecede noobish, ama burada ne istiyorum bir örnek: __init__ çalışmalarında girişimlerininBir değişkeni python'da dosya olarak nasıl bildiririm?

class A: 
    def __init__(self): 
     self.m_file = file() # name required 
     self.m_file = None # readonly attribute error 
     self.m_file = "" # readonly attribute error 
    def ButtonPressed(self): 
     self.m_file = open(tkFileDialog.askopenfilename(), 'r') 

Yok. python init variable as file için arama yapmayı denedim, ancak bu anahtar kelimeler soruyu yanıtlamayan çok sayıda yayın oluşturdu.

+3

yılında başka bir yere kullanmaya çalışmadan önce Yok olup olmadığını kontrol etmenizi sağlayan gibi ben bu satırı

def __init__(self): self.m_file = None 

tutarak öneriyoruz; dinamik olarak yazılmıştır. "Self.m_file" öğesine ne atarsanız, her neyse 'ButtonPressed() 'üzerine yazılır, bu nedenle' __init__' içinde ne yaptığınız önemli değildir. – DaveBensonPhillips

+0

Python'da değişkenleri bildirmezsiniz. ButtonPressed'de atandığında dosyanıza sahip olacaksınız. –

+0

Asıl soru nedir? Son hedefin nedir? Bu bana açık değil. – Goodies

cevap

2

Açıklamalarda belirtildiği gibi, ButtonPressed yöntemindeki open() işlevi __init__ çağrısında yapılan herhangi bir şeyin üzerine yazacaktır. Bu değişken Sen Python değişken tiplerini önceden beyan edemez sınıfa

-2

open() method Büyük olasılıkla kullanmak istiyorsunuz. Bunu yapıcınızda yapmak isteyeceğinizi düşünmüyorum ama open() sizin aradığınız şey.

İlgili konular