2016-09-29 45 views
1

我已經用Python 3做了一個程序,它保存了使用泡菜的上一次運行。但是,我需要使用.txt文件。據我所知,它可以用open和.write命令完成?但我不太確定如何去做。該程序適用於泡菜,但我必須學習如何使用文本文件。我將不勝感激任何幫助! 這是功能模塊,它每次運行後保存信息:即時通訊使用泡菜,但我需要使用文本文件

import pickle 
class TV(object): 
def __init__(self, name): 
    self.name = name 
    try: 
     self.load() 
    except: 
     self.Kanal = 1 
     self.Volym = 1 




def __str__(self): 
    printstring = str("\n".join(("%s:","Kanal: %s", "Volym: %s"))%(self.name, self.Kanal, self.Volym)) 
    return printstring 


def bytKanal(self,kanal): 
    self.Kanal = kanal 
    self.save() 
    return kanal 

def sank_volym(self): 
    if self.Volym!=0: 
     self.Volym -= 1 
    self.save() 
    return self.Volym 

def hoj_volym(self): 
    if self.Volym!=10: 
     self.Volym += 1 
    self.save() 
    return self.Volym 

def save(self): 
    file = open(self.name+".txt","wb") 
    file.write(pickle.dumps(self.__dict__)) 
    file.close() 

def load(self): 
    file = open(self.name+".txt","rb") 
    datapickle = file.read() 
    file.close() 

    self.__dict__=pickle.loads(datapickle) 

回答

2

既然你只序列實例字典我會推薦JSON

def save(self): 
    with open(self.name+".txt","w") as file: 
     file.write(json.dumps(self.__dict__)) #json 


def load(self): 
    with open(self.name+".txt","r") as file: 
     json_data = file.read() 

    self.__dict__=json.loads(json_data) #json! 

您可能還需要了解JSON:https://en.wikipedia.org/wiki/JSON

+0

謝謝! Json做了訣竅:) –

相關問題