'Operate on .dat file, pickle mod

I have project to do in my studies and it is my first project in Python. I must create simply program for bank. With GUI I'm creating an account on classes and save data to .dat file. My objects have name, surname, number and few more less-important data. My problems relies on troubles with ATM software. I can`t log in, that is I can't look for the appropriate object in the file. Which command i should use to do it. Can you show example program ? I need a help.

FILENAME = 'klient.dat' import pickle import tkinter

def login():

 ????

def main():

main_window = tkinter.Tk()
main_window.minsize(450, 650)
main_window.title("ATM")

top_frame = tkinter.Frame()
top2_frame = tkinter.Frame()
top3_frame = tkinter.Frame()
top4_frame = tkinter.Frame()
bot_frame = tkinter.Frame()


top_frame.pack()
top2_frame.pack()
top3_frame.pack()
top4_frame.pack()
bot_frame.pack()


name_entry = tkinter.StringVar()
surname_var = tkinter.StringVar()
number_var = tkinter.StringVar()

top_label = tkinter.Label(top_frame, \
                                text=' \n Bankomat \n', font=('Verdana', 10), \
                                height=3)

name_label = tkinter.Label(top_frame, \
                                    text='Podaj imie do zalogowania:  ',
                                    font=('Verdana', 10), height=3)
name_entry = tkinter.Entry(top_frame, width=15)

surname_label = tkinter.Label(top2_frame, \
                                    text='Podaj nazwisko do zalogowania:  ',
                                    font=('Verdana', 10), height=3)
surname_entry = tkinter.Entry(top2_frame, width=15)

number_label = tkinter.Label(top3_frame, \
                                    text='Podaj numer konta do zalogowania:  ',
                                    font=('Verdana', 10), height=3)
number_entry = tkinter.Entry(top3_frame, width=15)

login = tkinter.Button(bot_frame, \
                            text='login ', font=('Verdana', 10), \
                            bg='blue', fg='white', \
                            height=3, width=10, \
                            command=login)
quit_button = tkinter.Button(bot_frame, \
                            text='Exit', font=('Verdana', 10), \
                            bg='red', fg='white', \
                            height=3, width=10, \
                            command=main_window.destroy)

top_label.pack()
name_label.pack(side='left')
name_entry.pack(side='left')
surname_label.pack(side='left')
surname_entry.pack(side='left')
number_label.pack(side='left')
number_entry.pack(side='left')
login.pack(side = 'left')
quit_button.pack(side = 'left')


tkinter.mainloop()
main()


Solution 1:[1]

Firstly, you should to use

import pickle
import tkinter
FILENAME = 'klient.dat'

instead of

FILENAME = 'klient.dat' import pickle import tkinter

Secondly, you haven't inserted this code

main_window = tkinter.Tk()
main_window.minsize(450, 650)
main_window.title("ATM")...

to function main()

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1