我不能将这个解决方案应用于我在这里找到的类似问题。在可视化代码中用python和lxml抓取web页面之后,
[...]
tree = html.fromstring(browser.page_source)
data = tree.xpath('//tr[@title="something"]/td[2]/text()')
如果我打印(数据),我会得到这个列表。数据是列表吗?
['\n 1.27\n ', '\n 1.81\n ', '\n 4.90\n ', '\n
2.07\n ', '\n 2.12\n ']
我的目标是只从每个字符串中提取数字。我读到过一个正则表达式函数,不确定它是否是解决方案
replace($MyString, '[^0-9]', '')
发布于 2018-06-14 03:54:03
一种简单的方法是使用strip()
。您可以通过执行以下操作来清理列表:
clean_data = [d.strip() for d in data]
这将为您提供:
['1.27', '1.81', '4.90', '2.07', '2.12']
如果您希望它们作为实际的int
,只需使用int(d.strip())
即可
https://stackoverflow.com/questions/50845165
复制相似问题