只从变量中获取数字

时间:2015-12-25 07:06:47

标签: python beautifulsoup

我试图创建一个简单的脚本,向我显示BRL x USD之间的货币值,我得到了我获得值的部分,但不是我将来需要转换操作的浮点变量。

如何只获取brlxusd变量中的数字?现在它打印出" 0.253059 USD",我只想要" 0.253059"一部分。

import urllib
from bs4 import BeautifulSoup

def currencyValues():
    url = urllib.urlopen('http://www.x-rates.com/calculator/?from=BRL&to=USD&amount=1')
    soup = BeautifulSoup(url, "html.parser")

    for usdbrl in soup.find_all("span", class_="ccOutputRslt"):
            brlxusd = usdbrl.text
            print "BRL x USD rate today: %s" % brlxusd

currencyValues()

2 个答案:

答案 0 :(得分:2)

快速简单的方法是在brlxusd中拆分字符串并将浮动部分与USD部分分开。你的for循环中的代码将是:

brlxusd = usdbrl.text
brlxusd = brlxusd.split(" ")[0]
# if you want to convert it to float use float(brlxusd.split(" ")[0])
print "BRL x USD rate today: %s" % brlxusd

假设所有数据的格式与您所说的相同。

答案 1 :(得分:0)

  

如何只获取brlxusd变量中的数字?现在呢   打印出“0.253059 USD”,我只想要“0.253059”部分。

>>> brlxusd = '0.253059 USD'
>>> brlxusd.split()[0]
'0.253059'