2016-01-09 24 views
1

我正在使用Google財務模塊來獲取Python中的庫存數據。我想從列表中分離出LastTradePrice並將其轉換爲整數。有什麼建議麼?謝謝。在Python列表中分離字符串

from googlefinance import getQuotes 
import json 

stockinfo = getQuotes('VSMGX') 

stockdata = json.dumps(stockinfo, indent=1) 

的stockdata看起來像這樣

[ 
{ 
    "ID": "904726512134516", 
    "LastTradeDateTimeLong": "Jan 8, 4:00PM EST", 
    "Index": "MUTF", 
    "LastTradeWithCurrency": "$22.26", 
    "LastTradeTime": "4:00PM EST", 
    "StockSymbol": "VSMGX", 
    "LastTradePrice": "22.26", 
    "LastTradeDateTime": "2016-01-08T16:00:00Z" 
} 
] 
+2

你真的想要它是一個整數? '22.26'會回到'22'。 '[float(d ['LastTradePrice'])對於股票數據中的任何錯誤''。 BTW'info1'不存在 - 你的意思是'stockinfo'嗎? – AChampion

+0

是的,我應該使用浮動。謝謝!你的回答起作用 –

+0

糟糕,我只是寫了與@AChampion相同的代碼,令牌令牌!那麼它是一個成語:-) – alexis

回答

0

其實,你想有一個浮動,因爲lastTradePrice有小數。迭代列表並提取最近交易價格的關鍵字的字典值。

lastTradedPrices = [] 
for data in stockdata: 
    lastTradedPrices.append(float(data["LastTradePrice"])) 
1

如果所有的記錄有最後交易價格,只是用一個列表理解:

tradePrices = [ float(d["LastTradePrice"]) for d in stockdata ] 

編輯:將其轉換爲float爲@mattsap建議。發現得好!