我遇到了一種關于例程的奇怪格式的 Python 代碼。實際意義是什么?
def get_values() -> list:
query = "select value from table"
result = db.execute(query)
return [ value[0] for value in result ]
我認為這-> list意味著該例程回傳資料型別串列但我不明白如何回傳(構建串列)?為什么會這樣value[0]?
uj5u.com熱心網友回復:
如果您使用 sqlite3(猜測)execute()回傳一個<sqlite3.Cursor>包含滿足查詢條件的元組的迭代。
就像是
('2006-01-05', 'BUY', 'RHAT', 100, 35.14)
('2006-03-28', 'BUY', 'IBM', 1000, 45.0)
('2006-04-06', 'SELL', 'IBM', 500, 53.0)
('2006-04-05', 'BUY', 'MSFT', 1000, 72.0)
...
然后
[value[0] for value in result]
創建 中所有第一列的串列result。
['2006-01-05', '2006-03-28', '2006-04-06', '2006-04-05', ...]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/469367.html
標籤:Python python-3.x
