python Accounting script

1. If xiaomingkari has 10000 Yuan went to the shopping mall and found that he didn't have enough money and borrowed it from his parents 5000 The bill is as follows

date (date) save money (save) Spending money (cost) balance (balance) Description information (comment)
20200531 0 0 10000 int
20200531 0 1000 9000 eat
20200531 0 3000 6000 buy a computer
20200531 0 2000 4000 buy cloth
20200531 0 5000 -1000 buy a phone
20200531 5000 0 4000 borrow
20200531 0 1000 3000 play
2. The following script can implement the above operation
from time import strftime import pickle import os try: def save(): data =
strftime('\033[35m%Y-%m-%d\033[0m') money = int(input('How much do you have to
save?:')) comment = input('Which come of money?') with open('account.book','rb')
as fname: list = pickle.load(fname) record = list[-1][-2] balance = record +
moneylist.append([data,money,0,balance,comment]) with open('account.book','wb')
as fname: pickle.dump(list,fname) def cost(): data = strftime(
'\033[35m%Y-%m-%d\033[0m') money = int(input('How much did you spend?:'))
comment= input('Where is it used?:') with open('account.book','rb') as fname:
list = pickle.load(fname) record = list[-1][-2] balance = record - money list.
append([data,0,money,balance,comment]) with open('account.book', 'wb') as fname:
pickle.dump(list, fname) def query(): print(
'\033[34m%-20s%-9s%-9s%-10s%-18s\033[0m' % ('date','save','cost','balance',
'comment')) with open('account.book','rb') as fname: record = pickle.load(fname)
for i in record: print('%-29s%-9s%-9s%-10s%-20s' % tuple(i)) def choice_memu():
promat=''' (0)save (1)cost (2)query (3)exit please choice:''' fname =
'account.book' if not os.path.exists(fname): with open(fname,'wb') as obj: t_t =
strftime('\033[35m%Y-%m-%d\033[0m') data = [[t_t,0,0,10000,'int']] pickle.dump(
data,obj) while 1: cmds = {'0':save,'1':cost,'2':query} choice = input(promat)
if choice not in ['0','1','2','3']: continue if choice == '3': print(
'\033[32msee you\033[0m') break cmds[choice]() if __name__ == '__main__':
choice_memu() except KeyboardInterrupt: print('\033[32msee you\033[0m') except
ValueError: print('\033[31minvalid inputs\033[0m')
3. Compared with the above table, the result is the same

Technology
©2019-2020 Toolsou All rights reserved,
One is called “ Asking for the train ” A small village Finally got the train Spring Boot Lesson 16 :SpringBoot Implementation of multithreading with injection class Chrome OS, For programmers and Windows What does it mean ? Internet Marketing JAVA Convert a string to a numeric type I've been drinking soft water for three years ? What is the use of soft water and water softener You don't know ——HarmonyOS Talking about uni-app Page value transfer problem JavaScript Medium Call and ApplySparkSQL Achieve partition overlay write Character recognition technology of vehicle license plate based on Neural Network