#!/usr/bin/env python#coding:utf8

importos,sysimporttime‘‘‘1.运行该脚本会生成一个balance.txt文件,并设置初始账户余额:¥10000

2.运行该脚本会生成一个account.txt文件,并记录账户消费信息详情。‘‘‘

defsave():

date= time.strftime("%Y-%m-%d")

cost=0while 1:try:

save= int(raw_input("请输入存款金额:").strip())exceptValueError:print "\033[31m请输入数值类型,重新输入!\033[0m"

continue

except(KeyboardInterrupt,EOFError):

sys.exit("\n\033[31m程序退出\033[0m")if save <=0:print "\033[31m请输入一个大于0的存款金额:\033[0m"

continue

while 1:try:

comment= str(raw_input("请输入存款信息:"))except(KeyboardInterrupt,EOFError):

sys.exit("\n\033[31m程序退出\033[0m")if notcomment:continue

break

breakbalance=rekcon_balance(save,cost)

a.write(‘%-12s%-12s%-12s%-12s%-12s\n‘ %(date, cost, save, balance, comment))

a.flush()

with open(‘balance.txt‘, ‘w‘) as b:

balance=str(balance)

b.write(balance)defcost():

save=0

date= time.strftime("%Y-%m-%d")while 1:try:

cost= int(raw_input("请输入消费金额:").strip())exceptValueError:print "\033[31m请输入数值类型,重新输入!!!\033[0m"

continue

except(KeyboardInterrupt,EOFError):

sys.exit("\n\033[31m程序退出\033[0m")if cost <=0:print "\033[31m请输入一个大于0的消费金额:\033[0m"

continue

breakbalance=rekcon_balance(save,cost)while balance == -1:print "\033[31m余额不足,请充值或进行其他操作!!!\033[0m"

break

else:while 1:try:

comment= str(raw_input("请输入消费信息:"))except(KeyboardInterrupt,EOFError):

sys.exit("\n\033[31m程序退出\033[0m")if notcomment:continue

breaka.write(‘%-12s%-12s%-12s%-12s%-12s\n‘ %(date, cost, save, balance, comment))

with open(‘balance.txt‘, ‘w‘) as b:

balance=str(balance)

b.write(balance)

a.flush()defrekcon_balance(save,cost):try:

with open(‘balance.txt‘, ‘r‘) as b:

balance=b.readline()

balance=int(balance)exceptIOError:

balance= 10000balance+=saveif cost >balance:

balance= -1

returnbalance

balance-=cost#with open(‘balance.txt‘, ‘w‘) as f:

#balance = str(balance)

#f.write(balance)

returnbalancedefbalance():try:

with open(‘balance.txt‘, ‘r‘) as b:

balance=b.readline()exceptIOError,e:

balance= 10000

print "\033[31m初始账户余额:\033[0m¥%s" %balanceelse:print "\033[31m当前账户余额:\033[0m¥%s" %balancedefview():print ‘账户金额详细信息‘.center(78,‘*‘)print "%-12s%-12s%-12s%-12s%-12s\n" %(‘Date‘, ‘Cost‘, ‘Save‘, ‘Balance‘, ‘Comment‘),

with open(‘account.txt‘,‘r‘) as b:for line inb.readlines():printline,print ‘*‘.center(70,‘*‘)defshow_menu():

cmds={‘0‘: save, ‘1‘: cost, ‘2‘: balance, ‘3‘: view, ‘4‘: quit

}

prompt= """\033[32m-----------------------------

(0): save money

(1): cost money

(2): balance

(3): view detail

(4): quit

-----------------------------\033[0m

Please Input Your Choice:"""

while 1:try:

choice=raw_input(prompt).strip()[0]except(KeyboardInterrupt,EOFError):

sys.exit("\n\033[31m程序退出\033[0m")exceptIndexError:print "\033[31m无效输入,请重新输入!!!\033[0m"

continue

if choice not in ‘01234‘:print "\033[31m无效输入,请重新输入!!!\033[0m"

continue

if choice == 4:breakcmds[choice]()if __name__ == ‘__main__‘:

a= open(‘account.txt‘,‘a‘)printshow_menu()

a.close()

python打造记账本_Python实现简单的记账本功能相关推荐

  1. python打造记账本_python实现日常记账本小程序

    python实现收支的自动计算,能够查询每笔账款的消费详情,具体内容如下 1.函数需要两个文件:一个类似钱包功能,存放钱:另一个用于记录每笔花销的用途 #!/usr/bin/env python im ...

  2. python手机端秒杀_python实现简单淘宝秒杀功能

    这篇文章主要为大家详细介绍了python实现简单淘宝秒杀功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Python淘宝秒杀的具体代码,供大家参考,具体内容如下 昨天茅台在 ...

  3. python打造记账本,记账本-简单的python脚本

    #====================================# #花销记账单# #====================================# #datetime:2020 ...

  4. python淘宝秒杀_python实现简单淘宝秒杀功能

    本文实例为大家分享了Python淘宝秒杀的具体代码,供大家参考,具体内容如下 昨天茅台在线上搞秒杀,本来想着靠我惊人的手速去秒一瓶,结果. 所以痛定思痛,想想还是用脚本更靠谱.就在网上搜啊搜,看到se ...

  5. python实现用户登录_Python实现简单的用户登录功能并且限制次数

    1 建立一个名称为u_info的文件用来存储用户名和密码信息,如图所示 文件内容如下: zhangxiaosan-123456 lixi-123456 2 写登录功能的函数,用def代码创建名称为lo ...

  6. python分布式爬虫框架_python之简单Scrapy分布式爬虫的实现

    分布式爬虫:爬虫共用同一个爬虫程序,即把同一个爬虫程序同时部署到多台电脑上运行,这样可以提高爬虫速度. 在默认情况下,scrapy爬虫是单机爬虫,只能在一台电脑上运行,因为爬虫调度器当中的队列queu ...

  7. python打造excel神器_超简单:用Python让Excel飞起来

    前言 如何获取学习资源 章Python快速上手 1.1为什么要学习用Python控制Excel 1.2Python编程环境的搭建 1.2.1安装Python官方的编程环境IDLE 1.2.2安装与配置 ...

  8. python抢茅台_python实现简单淘宝秒杀功能

    本文实例为大家分享了Python淘宝秒杀的具体代码,供大家参考,具体内容如下 昨天茅台在线上搞秒杀,本来想着靠我惊人的手速去秒一瓶,结果.... 所以痛定思痛,想想还是用脚本更靠谱.就在网上搜啊搜,看 ...

  9. python excel表格排序_Python实现EXCEL表格的排序功能

    EXCEL的数值排序功能还是挺强大的,升序.降序,尤其自定义排序,能够对多个字段进行排序工作. 那么,在Python大法中,有没有这样强大的排序功能呢?答案是有的,而且本人觉得Python的排序功能, ...

  10. python给excel排序_Python实现EXCEL表格的排序功能示例

    Python实现EXCEL表格的排序功能示例 EXCEL的数值排序功能还是挺强大的,升序.降序,尤其自定义排序,能够对多个字段进行排序工作. 那么,在Python大法中,有没有这样强大的排序功能呢?答 ...

最新文章

  1. Perl 模块安装总结
  2. zabbix常用配置
  3. 【Pytorch】model.train()和model.eval()用法和区别,以及model.eval()和torch.no_grad()的区别
  4. Sphinx 文档例子
  5. 自动化登陆博客园脚本
  6. GridView里面的Item高度设置
  7. 软件需求工程 高校教学平台 项目总体计划
  8. ps格式文件如何打开
  9. Twaver-HTML5基础学习(32)Network样式andTree样式
  10. 洛谷 P1194 买礼物 题解
  11. 服务(Service)
  12. Java数据结构项目
  13. ssh连接服务器超时解决方案
  14. C ++ Primer Plus 第六版 第九章编程练习答案
  15. 抖音返利CPS系统APP平台开发
  16. 如何让爆满的C盘腾出 10G空间
  17. Polynomial类 多项式
  18. java中将html特殊字符作转义和取消转义操作
  19. java计算机毕业设计商店管理系统源码+数据库+系统+lw文档+mybatis+运行部署
  20. 非985/211面试大厂校招经历经验总结(安全工程师/渗透工程师)

热门文章

  1. RepairImages\superboot-6410.bin
  2. 惠普打印机驱动服务器系统,在打印机服务器(系统WIN2003)上安装了HP5100 打印机,客户机系统WIN7 64位,现没法添加HP5100的驱动...
  3. OPPO Find X5系列领衔OPPO春季新品发布会,多款产品亮相
  4. Linux下的编辑器整理
  5. winrar4.0 注册码
  6. 教育OA系统该如何选择?
  7. 基于Java的旅游信息管理系统的设计与实现
  8. 2019年春季学期《软件工程》教学总结
  9. tmb100a linux,天猫魔盒TMB100E短接降级官方1.7版本
  10. 深入浅出MYSQL查询索引失效