SQL查询在python中返回什么数据结构?

时间:2020-07-09 06:40:24

标签: python sql sqlite

我想计算'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的结构是什么?

1 个答案:

答案 0 :(得分:1)

这具有CS50财务项目的所有显着特征。来自the spec

lookup,[是]在给定symbol(例如NFLX)的情况下返回股票的函数 用三个键的dict形式的公司报价:name,其 值是str,即公司名称; price,其值为 float;和symbol,其值为str,是规范化的(大写) 股票代号的版本,无论该代号如何 传递到lookup

时大写