python实现日常记账本小程序


Posted in Python onMarch 10, 2018

python实现收支的自动计算,能够查询每笔账款的消费详情,具体内容如下

1、函数需要两个文件:一个类似钱包功能,存放钱;另一个用于记录每笔花销的用途

#!/usr/bin/env python 
import cPickle as p 
 
with open('wallet.data','w') as f: 
  p.dump(10000,f) 
 
with open('record.txt','w') as f: 
  pass

2、功能实现

#!!/usr/bin/env python 
#coding:utf8 
 
import cPickle as p 
import time 
 
date = time.strftime('%Y%m%d') 
 
def save_money(): 
  sav_count=int(raw_input('save money: ')) 
  sav_comment = raw_input('doing what: ') 
 
  with open('wallet.data') as f: 
    balance = p.load(f) 
 
  new_bal = balance + sav_count 
  with open('wallet.data','w') as f: 
    p.dump(new_bal,f) 
 
  content = '%-12s%-8s%-8s%-10s%-25s\n'%(date,'N/A',sav_count,new_bal,sav_comment) 
  with open('record.txt','a')as f: 
    f.write(content) 
 
 
 
def spend_money(): 
  spe_count=int(raw_input('spend money: ')) 
  spe_comment = raw_input('doing what: ') 
 
  with open('wallet.data') as f: 
    balance = p.load(f) 
 
  new_bal = balance - spe_count 
  with open('wallet.data','w') as f: 
    p.dump(new_bal,f) 
 
  with open('record.txt','a')as f: 
    content = '%-12s%-8s%-8s%-10s%-25s\n'%(date,spe_count,'N/A',new_bal,spe_comment) 
    f.write(content) 
 
def query_info(): 
  line = '='*63 
  content = '%s\n%-12s%-8s%-8s%-10s%-25s'%(line,'Date','Cost','Save','Balance','Comment') 
 
  with open('wallet.data') as f: 
    new_bal = p.load(f) 
 
  print 'new balance: ',new_bal 
 
  print content 
  with open('record.txt') as f: 
    for line in f: 
       print line 
 
 
 
def show_menu(): 
  prompt = ''''' 
  '0':'spend_money' 
  '1':'save_money' 
  '2':'query_info' 
  '3':'quit' 
''' 
  while True: 
    CMDs={'0':spend_money,'1':save_money,'2':query_info} 
    choice = raw_input('which do you want to do ?%s: '%prompt) 
    if choice not in '012': 
      break 
    CMDs[choice]() 
 
 
if __name__=='__main__': 
  show_menu()

3、程序还有改进处,例如将两个文件以参数的形式传入,会简化代码。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
分享Python字符串关键点
Dec 13 Python
Python开发之快速搭建自动回复微信公众号功能
Apr 22 Python
Python爬取qq music中的音乐url及批量下载
Mar 23 Python
Python实现替换文件中指定内容的方法
Mar 19 Python
Pycharm在创建py文件时,自动添加文件头注释的实例
May 07 Python
实例讲解Python爬取网页数据
Jul 08 Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 27 Python
Python面向对象基础入门之设置对象属性
Dec 11 Python
Python代码实现删除一个list里面重复元素的方法
Apr 02 Python
获取Pytorch中间某一层权重或者特征的例子
Aug 17 Python
如何利用Python动态模拟太阳系运转
Sep 04 Python
PyTorch device与cuda.device用法
Apr 03 Python
python实现简单神经网络算法
Mar 10 #Python
TensorFlow saver指定变量的存取
Mar 10 #Python
TensorFLow用Saver保存和恢复变量
Mar 10 #Python
tensorflow创建变量以及根据名称查找变量
Mar 10 #Python
Python2中文处理纪要的实现方法
Mar 10 #Python
python实现冒泡排序算法的两种方法
Mar 10 #Python
Python使用pyh生成HTML文档的方法示例
Mar 10 #Python
You might like
可快速识别放射性物质-国外大神教你diy一个开放式辐射探测器
2020/03/12 无线电
如何写php程序?
2006/12/08 PHP
为百度UE编辑器上传图片添加水印功能
2015/04/16 PHP
PHP实现对数组分页处理实例详解
2017/02/07 PHP
js TextArea的选中区域处理
2010/12/28 Javascript
Hallo.js基于jQuery UI所见即所得的Web编辑器
2016/01/26 Javascript
JS封装的三级联动菜单(使用时只需要一行js代码)
2016/10/24 Javascript
详解Angular2 关于*ngFor 嵌套循环
2017/05/22 Javascript
JScript实现表格的简单操作
2017/08/15 Javascript
ng-repeat指令在迭代对象时的去重方法
2018/10/02 Javascript
傻瓜式vuex语法糖kiss-vuex整理
2018/12/21 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
Vue实现日历小插件
2019/06/26 Javascript
Vue实现将数据库中带html标签的内容输出(原始HTML(Raw HTML))
2019/10/28 Javascript
使用kbone解决Vue项目同时支持小程序问题
2019/11/08 Javascript
15分钟学会vue项目改造成SSR(小白教程)
2019/12/17 Javascript
js键盘事件实现人物的行走
2020/01/17 Javascript
详解Python爬虫的基本写法
2016/01/08 Python
python遍历一个目录,输出所有的文件名的实例
2018/04/23 Python
Python if语句知识点用法总结
2018/06/10 Python
Python3.5 Json与pickle实现数据序列化与反序列化操作示例
2019/04/29 Python
Python3标准库之dbm UNIX键-值数据库问题
2020/03/24 Python
关于Keras Dense层整理
2020/05/21 Python
记录模型训练时loss值的变化情况
2020/06/16 Python
详解python定时简单爬取网页新闻存入数据库并发送邮件
2020/11/27 Python
html5实现多文件的上传示例代码
2014/02/13 HTML / CSS
意大利独特而优质的家居用品:Fazzini
2018/12/05 全球购物
女性时尚网购:Chic Me
2019/07/30 全球购物
Java程序开发中如何应用线程
2016/03/03 面试题
物业电工岗位职责
2013/11/20 职场文书
经济管理专业毕业生自荐信范文
2014/01/02 职场文书
对外汉语专业大学生职业生涯规划范文
2014/09/13 职场文书
乡镇领导班子四风整顿行动工作汇报
2014/10/25 职场文书
2014年工人工作总结
2014/11/25 职场文书
入党宣誓大会后的感想
2015/08/10 职场文书
合作合同协议书
2016/03/21 职场文书