import os
class ATM:
@staticmethod
def regst():
while 1:
nm = input('请输入你的名字:')
mm = input('请输入你的密码:')
mm1 = input('请再次输入你的密码:')
if mm == mm1:
print('注册成功')
money=input('输入你存的钱:')
user=User(nm,mm,money)
f1=open('zhanghu.txt',mode='a',encoding='utf-8')
f1.write(nm+' '+mm+' '+money)
f1.write('\n')
f1.flush()
f1.close()
break
else:
print('两次密码不一样,重新注册') def quqian(self, status): # status 0 , 1
money2 = int(input('请输入你想取的钱:'))
f4 = open('zhanghu.txt', mode='r', encoding='utf-8')
f5 = open('zhanghu1.txt', mode='w', encoding='utf-8')
for line in f4:
if line.split()[0]==self.name and line.split()[1]==self.mima:
if status == 0:
self.qian =int(line.split()[2])+int(money2)
else:
self.qian = int(line.split()[2]) - int(money2)
print('你的账户还有%s元'%self.qian)
f5.write(self.name + ' ' + self.mima + ' ' + str(self.qian))
f5.write('\n')
else:
f5.write(self.name + ' ' + self.mima + ' ' + self.qian)
f5.write('\n')
f4.flush()
f5.flush()
f4.close()
f5.close()
os.remove('zhanghu.txt')
os.rename('zhanghu1.txt', 'zhanghu.txt') class User(ATM):
def __init__(self,name,mima,qian):
self.name=name
self.mima=mima
self.qian=qian
while 1:
n=input('注册输1,登录输2,退出输其他')
if n=='1':
fn=getattr(ATM,'regst')
fn()
elif n=='2':
na1=input('输入你的名字:')
mi1=input('输入你密码:')
f6 = open('zhanghu.txt', mode='r', encoding='utf-8')
for line in f6:
if line.split()[0] == na1 and line.split()[1] == mi1:
user=User(line.split()[0],line.split()[1],line.split()[2])
f6.flush()
f6.close()
print('登录成功')
while 1:
n1=input('存钱输1,取钱输2,查询输3,退出输其他')
if n1=='1':
user.quqian(0)
elif n1=='2':
user.quqian(1)
elif n1=='3':
user.chaxun()
else:
break
break
else:
print('登录不成功')

Python(ATM机low版)的更多相关文章

  1. python ATM机 案例代码

    利用目前学的流程控制写的 ''' ATM机 需求: 1.登陆 输入账号输入密码 每日只有3次登陆密码错误的机会,超过3次禁止登陆 2.查询余额 3.存款 4.取款 5.转帐 6.退出 ''' info ...

  2. 用java实现一个ATM机系统(2.0版)

    用java实现一个ATM机系统(2.0版) java实现银行ATM自助取款机,实现功能:用户登录.余额查询.存钱.取钱.转账.修改密码.退出系统. 文章目录 用java实现一个ATM机系统(2.0版) ...

  3. python low版线程池

    1.low版线程池设计思路:运用队列queue 将线程类名放入队列中,执行一个就拿一个出来import queueimport threading class ThreadPool(object): ...

  4. python实现atm机基本操作及购物车

    一.需求分析 ATM机要为用户提供转账,提现,还款,付款,消费流水,操作记录等操作接口 ATM机要为管理员提供创建用户,冻结解冻,修改额度的功能 ATM机管理员认证使用装饰器来实现 购物车要提供管理员 ...

  5. Python之路,Day4 - Python基础4 (new版)

    Python之路,Day4 - Python基础4 (new版)   本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...

  6. 模块购物商城和ATM机代码:

    http://outofmemory.cn/python/video/let-us-python/ python为程序员服务  快来加入群[python爬虫交流群](群号570070796),发现精彩 ...

  7. appium+Python真机运行测试demo的方法

    appium+Python真机运行测试demo的方法 一,    打开手机的USB调试模式 二,    连接手机到电脑 将手机用数据线连接到电脑,并授权USB调试模式.查看连接的效果,在cmd下运行命 ...

  8. 模拟ATM机银行系统

    淄博汉企Java基础考核项目 模拟银行自助终端系统 一. 本系统模拟银行用户使用ATM机开户.查询.存款.取款功能,要求使用java语言编程实现. 说明: 1. 对于数据输入异常,可使用java异常处 ...

  9. JAVA - ATM机程序

    ATM机程序 UnionPayTest.java package oo.day06.work; public class UnionPayTest { } interface UnionPay{ // ...

随机推荐

  1. 【Leetcode】【Medium】Combination Sum

    Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C wher ...

  2. [零基础学JAVA]Java SE面向对象部分.面向对象基础(02)

    String类 JAVA:public class StringTest{ public static void main(String args[]){ //尽量避免使用new,这样会产生内存垃圾 ...

  3. Django测试

    创建一个测试 ## app/tests.py import datetime from django.utils import timezone from django.test import Tes ...

  4. 导入项目@Override报错原因及解决办法

    从别人那里拷贝来的项目,在人家的环境里没有错误,可是导入到自己本地工程之后报错,删除掉@Override注解后就不报错,导致该原因的是本地工程的JDK版本未更新. 解决办法:调整JDK版本 如此即可解 ...

  5. DVR_RDK编译报错

    报错信息: abnormal termination of /opt/dm8168/dvr_rdk/../ti_tools/cgt_dsp/cgt6x_7_3_5//bin/cmp6x make[2] ...

  6. js获取给定时间的下一天

    //获取给定时间的下一天 yyyy-MM-dd格式 function getNextDay(d){ d = new Date(d); d = +d + 1000*60*60*24; d = new D ...

  7. Gradle Goodness: Unpacking an Archive

    To create an archive with Gradle is easy. We have several tasks like Zip, Tar, Jar, War and Ear to c ...

  8. 阿里云云服务器Windows Server 2012 R2无法安装IIS等组件的解决办法

    Windows Server2012 R2数据中心版 不管安装什么组件,都显示存储空间不足,无法应用命令,错误代码0x80070008. 最终确认是服务器配置过低的原因,因为这个型号是低级别的配置,1 ...

  9. mobBUS

    1.今天听陈刚说起modBUS通信协议,这个还是第一次听说,究竟是什么东东,还是上网查查看吧 2.网上有C语言程序. http://blog.163.com/li_g888@126/blog/stat ...

  10. CSS3-阴影参数基础

    box-shadow 语法:text-shadow: x-shadow y-shadow distance color; 值  描述  x-shadow  必需.水平阴影的位置.允许负值. y-sha ...