2012-10-13 22 views
0

好吧,我需要一個字符串轉成float做一些數學然後回字符串串的浮動做一些數學然後回字符串

def item_price(data):  #grabs price of item 
    soup = BeautifulSoup(data) 
    info = soup.find('span', itemprop='price').text 
    info = info.replace("$","") 
    info = float(info);   # but evary thing below this line goes wrong 
    info = info * .2 + info 
    info = "$" + string(info); 
    return(info); 
+2

'但這條線以下的東西出問題了 - >出了什麼問題? –

+2

嘗試'str(info)'而不是'string(info)'。 –

回答

0

雖然我不知道什麼BeautifulSoap,但我認爲它是分號。試試這個,看看它是否有效:

from decimal import * 

def item_price(data):  
    soup = BeautifulSoup(data) 
    info = soup.find('span', itemprop='price').text 
    info = info.replace("$","") 
    info = Decimal(info) 
    info = (info * Decimal(0.2)) + info 
    return '${0:.2f}'.format(info) 

注意:你有一些其他明顯的語法問題,我試圖清理。此外,請注意,您應該使用小數(超過浮動)來獲得金錢。

Link to Decimal docs

相關問題