import json
import datetime
import time
#初始数据一定要通过程序的方式读入
#一个文本文件中只能保存一种对象
#写入初始数据
# d='[{"时间": "2021/03/04 15:20:21", "项目": "收到王敏货款", "金额": 20000, "分类": "收入"}]'
# with open(r"data.txt","w") as f:
# f.write(d)
#读json数据
def readData():
with open(r"data.txt",'r') as f :
jsonData = f.read()
dataList = json.loads(jsonData)
return dataList
#写json数据
def writeData(dataList):
jsonData = json.dumps(dataList,ensure_ascii=False)
with open(r"data.txt","w") as f:
f.write(jsonData)
print("数据写入成功")
#显示账目
def showData():
sumIn = 0
sumOut = 0
dataList = readData()
print("************************************************")
for data in dataList:
if data["分类"] == "支出":
sumOut += data["金额"]
print(data["时间"]," ",data["项目"]," ",-data["金额"])
else:
sumIn += data["金额"]
print(data["时间"]," ",data["项目"]," ",data["金额"])
print("************************************************")
print("总收入为:",sumIn)
print("总支出为:",sumOut)
print("结余为:",sumIn-sumOut)
#增加一笔账目
def addData():
dataList = readData()
content = input("请输入账单明细:")
amount = float(input("请输入金额:"))
c = int(input("选择(1.收入 2.支出):"))
sort = ("支出")
if c == 1:
sort = ("收入")
t = datetime.datetime.now().strftime("%Y/%m/%d %H:%M:%S")
data = {"时间":t,"项目":content,"金额":amount,"分类":sort}
dataList.append(data)
writeData(dataList)
#主函数
if __name__ =='__main__':
while 1==1:
showData()
choice = int(input(print("如需记账请按1,退出请按2")))
if choice ==1:
addData()
time.sleep(2)
print("\n\n\n")
else:
break
Python实践|记账本
最新推荐文章于 2023-02-22 13:49:05 发布