gpt4 book ai didi

python - 为什么一个简单的减法会导致不同的输出?

转载 作者:搜寻专家 更新时间:2023-10-30 22:23:05 24 4
gpt4 key购买 nike

我正在做一个使用 Python Flask 作为后端的小型 Web 应用程序项目。一切正常,但出现了一个奇怪的小问题,我无法弄清楚为什么会这样。

@app.route('/buy/<string:id_val>', methods=['POST','GET'])
@is_logged_in
def buy(id_val):
if request.method == 'POST':
buy_amt = request.form['buy_amt']
sell_price = request.form['sell_price']
cur = mysql.connection.cursor()
result = cur.execute('SELECT * from company_warehouse')
value = cur.fetchone()
cur.execute('SELECT * FROM distributor_warehouse WHERE cpID=%s',[id_val])
temp = cur.fetchone()
if temp != None:
cur.execute('UPDATE company_warehouse SET QTY=%s WHERE cpID=%s',(str(int(value['QTY']) - int(buy_amt)),id_val))
cur.execute('UPDATE distributor_warehouse SET QTY=%s WHERE cpID=%s',(str(int(buy_amt)+int(temp['QTY'])),id_val))
else:
cur.execute('UPDATE company_warehouse SET QTY=%s WHERE cpID=%s',(str(int(value['QTY']) - int(buy_amt)),id_val))
cur.execute('INSERT INTO distributor_warehouse(cpID,QTY,COST_PRICE,SELL_PRICE) VALUES(%s,%s,%s,%s)',(id_val,buy_amt,value['PRICE_PER_UNIT'],sell_price))
mysql.connection.commit()
flash('Buyed Successfully','success')
return redirect(url_for('buy_product'))
cur.close()
return render_template('buy_product.html')

这是我的 app.py 问题出现在 str(int(value['QTY']) - int(buy_amt))UPDATE 语句。

This is the output which am getting

最佳答案

无论您作为参数收到的 id_val 是什么,您总是从 company_warehouse 获取第一行。通过更改它,数量将得到正确更新。

cur.execute('SELECT * FROM company_warehouse WHERE cpID=%s',[id_val]) 
value = cur.fetchone()

关于python - 为什么一个简单的减法会导致不同的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58478981/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com