使用Pickle在Python 3中加载多个变量

时间:2018-04-26 01:09:51

标签: python variables tkinter pickle

我最近开始使用Tkinter,并认为为我朋友制作的棋盘游戏创建统计数据表会很有趣。然而,每当我尝试加载统计数据时,它们都是一个统计数据,例如,如果只有一个是4,那么当我加载它时,它们都是4.有人可以解释一下还是帮我解决它?

这是我的代码。

from tkinter import *
import pickle

##############################################
global P
global I
global R
global A
global T
global E
P = pickle.load(open("stats.p", "rb"))
root = Tk()
I = pickle.load(open("stats.p", "rb"))
root = Tk()
R = pickle.load(open("stats.p", "rb"))
root = Tk()
A = pickle.load(open("stats.p", "rb"))
root = Tk()
T = pickle.load(open("stats.p", "rb"))
root = Tk()
E = pickle.load(open("stats.p", "rb"))
root = Tk()


root=Tk()
def addOneP():
global P
P += 1
LP.config(text=P)


def addOneI():
global I
I += 1
LI.config(text=I)


def addOneR():
global R
R += 1
LR.config(text=R)


def addOneA():
global A
A += 1
LA.config(text=A)


def addOneT():
global T
T += 1
LT.config(text=T)


def addOneE():
global E
E += 1
LE.config(text=E)



def save():
    pickle.dump(P, open("stats.p", "wb"))
    pickle.dump(I, open("stats.p", "wb"))
    pickle.dump(R, open("stats.p", "wb"))
    pickle.dump(A, open("stats.p", "wb"))
    pickle.dump(T, open("stats.p", "wb"))
    pickle.dump(E, open("stats.p", "wb"))



##############################################

def reset():
    P=0
    I=0
    R=0
    A=0
    T=0
    E=0

##############################################

root.title("Character Sheet")
root.geometry("720x825")

##############################################

LP = Label(root, text=P)
LI = Label(root, text=I)
LR = Label(root, text=R)
LA = Label(root, text=A)
LT = Label(root, text=T)
LE = Label(root, text=E)

T1 = Label(root, text="Persuasion : ")
T2 = Label(root, text="Intelligence : ")
T3 = Label(root, text="Rampart : ")
T4 = Label(root, text="Accuracy : ")
T5 = Label(root, text="Thrash : ")
T6 = Label(root, text="Enchantment : ")

B1 = Button(root, text="+", command=addOneP)
B2 = Button(root, text="+", command=addOneI)
B3 = Button(root, text="+", command=addOneR)
B4 = Button(root, text="+", command=addOneA)
B5 = Button(root, text="+", command=addOneT)
B6 = Button(root, text="+", command=addOneE)

RESET = Button(root, text="RESET", command=reset)

SAVE = Button(root, text="SAVE", command=save)

##############################################

T1.grid(column=2, row=3)
T2.grid(column=2, row=5)
T3.grid(column=2, row=7)
T4.grid(column=2, row=9)
T5.grid(column=2, row=11)
T6.grid(column=2, row=13)

LP.grid(column=6, row=3) 
LI.grid(column=6, row=5)
LR.grid(column=6, row=7)
LA.grid(column=6, row=9)
LT .grid(column=6, row=11)
LE.grid(column=6, row=13)

B1.grid(column=10, row=3)
B2.grid(column=10, row=5)
B3.grid(column=10, row=7)
B4.grid(column=10, row=9)
B5.grid(column=10, row=11)
B6.grid(column=10, row=13)

RESET.grid(column=10, row=20)

SAVE.grid(column=5, row=20)
##############################################

root.mainloop()

0 个答案:

没有答案