我有一些相当混乱的代码,几乎可以从 Yahoo Finance 为公司生成有形的价格/账面价值(一个名为的不错的模块已经ystockquote
获取了无形的价格/账面价值)。
我的问题是这样的:
对于计算中的变量之一,已发行股票我得到像10.89B和4.9M这样的字符串,其中B和M分别代表十亿和百万。我无法将它们转换为数字,这就是我所在的位置:
shares=''.join(node.findAll(text=True)).strip().replace('M','000000').replace('B','000000000').replace('.','') for node in soup2.findAll('td')[110:112]
这很混乱,但我认为如果不是
.replace('M','000000').replace('B','000000000').replace('.','')
我正在使用带有变量的正则表达式。我想问题只是哪些正则表达式和变量。其他建议也不错。
编辑:
具体来说,我希望有一些适用于小数为零、一位或两位小数的数字,但这些答案看起来都很有帮助。