资源简介
Python3实现的银行ATM系统,使用了SQLite数据库(Python自带无需安装)持久化储存数据.异常已捕获,剩了一个小bug不想去解决了.留给未来.
代码片段和文件信息
import sqlite3
‘‘‘没有数据库时必须先 取消注释这段代码 执行一遍后即可正常使用程序了 再次注释 用户数据就可以保存到数据库了.‘‘‘
# def create_database():
# ‘‘‘创建了一个数据库结构‘‘‘
# conn = sqlite3.connect(database=‘atm_data.db‘) # 创建一个数据库名称为atm_data.db
# conn.execute(“DROP TABLE USERS; “) # 删除USERS这个表
# # 创建一个USERS表 里面创建一些字段 ID PASSWORD NAME MONEY
# conn.execute(‘‘‘CREATE TABLE IF NOT EXISTS USERS
# (ID INT PRIMARY KEY NOT NULL
# PASSWORD CHAR(16) NOT NULL
# NAME TEXT(10) NOT NULL
# MONEY REAL);‘‘‘)
# conn.commit() # 提交
# conn.close() # 关闭连接
# create_database()
def insert_db(ID_user PASSWORD_user NAME_user MONEY_user=0):
‘‘‘将用户输入的用户信息写入到数据库‘‘‘
conn = sqlite3.connect(‘atm_data.db‘) # 创建一个数据库链接
cmd = “INSERT INTO USERS (IDPASSWORDNAMEMONEY) VALUES ({}\“{}\“\“{}\“{})“.format(ID_user PASSWORD_user
NAME_user
MONEY_user) # 将用户输入的信息写入数据库
print(cmd)
conn.execute(cmd) # 写入数据到数据库
conn.commit() # 提交
conn.close() # 关闭数据库链接
def del_db(user_ID):
‘‘‘注销账户用将账户的用户信息删除‘‘‘
conn = sqlite3.connect(‘atm_data.db‘) # 创建一个数据库链接
cmd = “DELETE FROM USERS WHERE ID = {}“.format(user_ID) # 命令
conn.execute(cmd) # 删除该账号
# 验证一下用户名 和 密码 确认删除 否则 return 请重新输入账号
conn.commit()
conn.close()
def register_user():
‘‘‘注册 / 注销 用户输入信息入口‘‘‘
while True:
try:
user_ID = int(input(‘请输入您的账号:\n‘))
user_password = str(input(‘请输入您的密码:\n‘))
user_password2 = str(input(‘请再次输入您的密码:\n‘))
user_name = str(input(‘请输入开户人的姓名:\n‘))
except:
print(‘输入信息不符合规范请重试...‘)
continue
listA = [user_ID user_password user_password2 user_name] # 将用户输入的信息以列表的方式返回.
return listA
def login_user():
‘‘‘登录信息录入‘‘‘
while True:
try:
user_ID = int(input(‘请输入您需要登录的账号:\n‘))
user_password = str(input(‘请输入您的密码:\n‘))
except:
print(‘登录信息有误请重试.‘)
continue
listA = [user_ID user_password] # 将用户输入的信息以列表的方式返回.
return listA
class Database():
‘‘‘定义了一个数据库操作类.‘‘‘
def __init__(self id):
self.id = id # 当用户登录成功后 记录登录id
def select_db(self):
‘‘‘查询该账户的所有信息‘‘‘
conn = sqlite3.connect(‘atm_data.db‘) # 创建一个数据库链接
message = conn.execute(“SELECT MONEY FROM USERS WHERE ID = {}“.format(self.id)) # 查询该用户信息的SQL语句
for i in message:
print(‘你余额为:{}‘.format(i))
conn.commit()
conn.close()
return i
else:
return ‘没有此用户的信息...‘
def select_other_db(self other_ID):
‘‘‘查询该账户的所有信息‘‘‘
conn = sqlite3.connect(‘atm_d
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 12288 2018-09-07 09:35 atm_data.db
文件 16703 2018-09-07 10:15 atmDateba
----------- --------- ---------- ----- ----
28991 2
相关资源
- python 决策树代码
- pygame实现的贪吃蛇游戏RetroSnaker.py
- Python文件
- QT文件转换成Python的自动化工具*.ui转
- fcntl模块 win
- python爬虫爬取企业详细信息
- Kruskal算法python实现
- 蚁群算法的python代码
- 最小二乘法python代码,不用库函数
- sm3 python encode
- openopc for python 3.x
- 张正友相机标定Python代码
- Python调用QQ微信截图
- python图像裁剪
- 海明校验 python源代码 海明码
- mod_wsgi.so
- Python 强大的图论和网络研究工具 ne
- python从入门到精通视频60集全
- wheel 安装包
- Python程序设计与算法基础教程源代码
- python数据处理csv->图表
- 微博评论Python代码实现
- Python最小距离法
- 五子棋AI python实现
- requests 中文文档
- 手机Python图形界面教程
- Birch python实现
- 用Python脚本对栅格图层进行批量resa
- Python学习路线Python课程大纲Python视频
- 自适应共振理论ART2(Adaptive Resonance
评论
共有 条评论