Python(ATM机low版)
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版)的更多相关文章
- python ATM机 案例代码
利用目前学的流程控制写的 ''' ATM机 需求: 1.登陆 输入账号输入密码 每日只有3次登陆密码错误的机会,超过3次禁止登陆 2.查询余额 3.存款 4.取款 5.转帐 6.退出 ''' info ...
- 用java实现一个ATM机系统(2.0版)
用java实现一个ATM机系统(2.0版) java实现银行ATM自助取款机,实现功能:用户登录.余额查询.存钱.取钱.转账.修改密码.退出系统. 文章目录 用java实现一个ATM机系统(2.0版) ...
- python low版线程池
1.low版线程池设计思路:运用队列queue 将线程类名放入队列中,执行一个就拿一个出来import queueimport threading class ThreadPool(object): ...
- python实现atm机基本操作及购物车
一.需求分析 ATM机要为用户提供转账,提现,还款,付款,消费流水,操作记录等操作接口 ATM机要为管理员提供创建用户,冻结解冻,修改额度的功能 ATM机管理员认证使用装饰器来实现 购物车要提供管理员 ...
- Python之路,Day4 - Python基础4 (new版)
Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...
- 模块购物商城和ATM机代码:
http://outofmemory.cn/python/video/let-us-python/ python为程序员服务 快来加入群[python爬虫交流群](群号570070796),发现精彩 ...
- appium+Python真机运行测试demo的方法
appium+Python真机运行测试demo的方法 一, 打开手机的USB调试模式 二, 连接手机到电脑 将手机用数据线连接到电脑,并授权USB调试模式.查看连接的效果,在cmd下运行命 ...
- 模拟ATM机银行系统
淄博汉企Java基础考核项目 模拟银行自助终端系统 一. 本系统模拟银行用户使用ATM机开户.查询.存款.取款功能,要求使用java语言编程实现. 说明: 1. 对于数据输入异常,可使用java异常处 ...
- JAVA - ATM机程序
ATM机程序 UnionPayTest.java package oo.day06.work; public class UnionPayTest { } interface UnionPay{ // ...
随机推荐
- 【Leetcode】【Medium】Combination Sum
Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C wher ...
- [零基础学JAVA]Java SE面向对象部分.面向对象基础(02)
String类 JAVA:public class StringTest{ public static void main(String args[]){ //尽量避免使用new,这样会产生内存垃圾 ...
- Django测试
创建一个测试 ## app/tests.py import datetime from django.utils import timezone from django.test import Tes ...
- 导入项目@Override报错原因及解决办法
从别人那里拷贝来的项目,在人家的环境里没有错误,可是导入到自己本地工程之后报错,删除掉@Override注解后就不报错,导致该原因的是本地工程的JDK版本未更新. 解决办法:调整JDK版本 如此即可解 ...
- DVR_RDK编译报错
报错信息: abnormal termination of /opt/dm8168/dvr_rdk/../ti_tools/cgt_dsp/cgt6x_7_3_5//bin/cmp6x make[2] ...
- js获取给定时间的下一天
//获取给定时间的下一天 yyyy-MM-dd格式 function getNextDay(d){ d = new Date(d); d = +d + 1000*60*60*24; d = new D ...
- 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 ...
- 阿里云云服务器Windows Server 2012 R2无法安装IIS等组件的解决办法
Windows Server2012 R2数据中心版 不管安装什么组件,都显示存储空间不足,无法应用命令,错误代码0x80070008. 最终确认是服务器配置过低的原因,因为这个型号是低级别的配置,1 ...
- mobBUS
1.今天听陈刚说起modBUS通信协议,这个还是第一次听说,究竟是什么东东,还是上网查查看吧 2.网上有C语言程序. http://blog.163.com/li_g888@126/blog/stat ...
- CSS3-阴影参数基础
box-shadow 语法:text-shadow: x-shadow y-shadow distance color; 值 描述 x-shadow 必需.水平阴影的位置.允许负值. y-sha ...