python-mysql超简单银行转账Model(我说了很简单的)
Posted 梦子Python7762
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-mysql超简单银行转账Model(我说了很简单的)相关的知识,希望对你有一定的参考价值。
1首先先建数据库:
数据库结构
表数据
2:建一个表,表里两个字段,一个表示账户ID,一个表示余额,大概明白是这个意思,接下来,我就开始写代码
#--coding=utf8--
#导模板
import sys,mysql.connector
#接受命令行参数
if name ==“main”:
source_acctid=sys.argv[1]
target_acctid=sys.argv[2]
mony=int(sys.argv[3])
#打印出来看一下
print ‘from_acct’,source_acctid
print ‘to_acct’,target_acctid
print ‘transfer_mony’,mony
#获取数据库链接
conn=mysql.connector.connect(
user=‘root’,
password=‘123456’,
database=‘bank’,
charset=‘utf8’,
use_unicode=True
)
#获取游标
cursor=conn.cursor()
#查询余额
sql=u’select money from account where acctid=’
#拼接字符串
sql1=sql+source_acctid
#打印看一下拼出来的效果
print sql1
cursor.execute(sql1)
#执行sql获取到余额,返回的是一个tuple,如(100,)
f=cursor.fetchone()
#关闭游标
cursor.close()
cursor=conn.cursor()
#判断余额大于转出金额,就进行转账
if f[0]>mony:
#写sql
sql0=u’select money from account where acctid=’+target_acctid
cursor.execute(sql0)
x=cursor.fetchone()
#转入账户+
money=x[0]+mony
#转出账户-
money1=f[0]-mony
cursor.close()
cursor=conn.cursor()
sql2=u’update account set money=%s where acctid= %s’
sql3=u’update account set money=%s where acctid=%s’
#执行
cursor.execute(sql2,[money,target_acctid])
cursor.execute(sql3,[money1,source_acctid])
conn.commit()
else:
#其他情况抛异常
raise Exception(‘Not have enough money’)
print conn
print cursor
cursor.close()
conn.close()
3:碰到了很多报错,不听的修改,最后终于数据库数据改掉了,至于异常处理以及其他的啥啥啥,后期再进行加工,今天学习到了数据库连接,进行操作,上面代码粘贴上去没缩进了。
4:欢迎提意见,指正
你要不要也来试试,用 Python 测测你和女神的颜值差距(仅供娱乐,请勿联想) 如果真的遇到好的同事,那算你走运,加油,抓紧学到手。
python、爬虫技巧资源分享Q群:766610200
包含python, pythonweb、爬虫、数据分析等Python技巧,以及人工智能、大数据、数据挖掘、自动化办公等的学习方法。
打造从零基础到项目开发上手实战全方位解析!
点击:加入
以上是关于python-mysql超简单银行转账Model(我说了很简单的)的主要内容,如果未能解决你的问题,请参考以下文章
jsp+servlet+mysql 实现简单的银行登录转账功能
Java基础知识综合练习_使用集合存储_高级银行系统的搭建(注册登录存取款本行转账跨行转账销户特殊操作参数多个客户对象存入到银行类的集合,多个银行对象存入总测试类集合)