我想计算'totalStock',但由于p ['stockValue']不是整数,因此出现typeError。我试图使用int()函数,但它也无法正常工作。
def index():
# Get user ID
user_ID = session['user_id']
# Query for symbol, name, shares and store in variable
purchaseData = db.execute('SELECT symbol, name, shares FROM purchases WHERE id = :id', id=user_ID)
#Store all info in userData
userData = {}
stockCount = 0
for i in purchaseData:
userData['symbol'] = i['symbol']
userData['name'] = i['name']
userData['shares'] = i['shares']
userData['price'] = lookup(i['symbol'])
# Calculate stock value
userData['stockValue'] = lookup(i['symbol']) * i['shares']
# Count rows
stockCount += 1
# Query for remaining cash
userData['remainingCash'] = db.execute('SELECT cash FROM users WHERE id = :id', id=user_ID)
# Calculate total value
totalStock = 0
for p in userData:
totalStock = totalStock + int(p['stockValue'])
userData['totalValue'] = userData['remainingCash'] + totalStock
# Return render and send values
return render_template('index.html', rows=stockCount, **userData)
purchaseData的结构是什么?
答案 0 :(得分:1)
这具有CS50财务项目的所有显着特征。来自the spec:
时大写
lookup
,[是]在给定symbol
(例如NFLX)的情况下返回股票的函数 用三个键的dict
形式的公司报价:name
,其 值是str
,即公司名称;price
,其值为float
;和symbol
,其值为str
,是规范化的(大写) 股票代号的版本,无论该代号如何 传递到lookup