好的,所以我正在开发一个DnD应用程序,我想使用filedialog.asksaveasfile()命令保存字符表。
以下是代码:
def save(self):
file_=filedialog.asksaveasfile(parent=self, mode="w",title=\
"Save your Character Sheet",defaultextension=".dndcs",filetypes=[("Character Sheets", ".dndcs"), ("All Files", ".*")])
#file_= open(str(saveName),"w")
string=""
list_vars=[self.player,self.character, self.dm,self.str,self.int,self.wis,self.dex,self.con,self.cha,self.JPpoison,\
self.JPwands,self.JPparalysis,self.JPbreath,self.JPspell,self.class_,self.race,self.align,self.AC,self.HP,self.maxHP,self.XPtotal]
for i in range(len(list_vars)):
string=str(list_vars[i].get())+"\n"
print(string)
file_.write(string)
file_.close()
它不会返回任何类型的异常,但是当我尝试使用编辑器打开文件时,我看到的只是第一行的0。
出了什么问题?
答案 0 :(得分:3)
所以经过无数次尝试解决这个问题后,我注意到我犯了一个小错误。 实际上,它不是:ù
string=str(list_vars[i].get())+"\n"
但是:
string+=str(list_vars[i].get())+"\n"
除此之外,此代码可以使用,随意使用它。