我想从列表a = []中获取所有浮点数,并将其添加到名为number = []的新列表中。有人可以帮我这个代码吗?现在,它给了我一个空白的输出。
a = ['1.2.1','2.1.2', '4', 'invalid']
numbers = []
for item in a:
if item == float:
numbers.append(item)
print(numbers)
所需的输出:
numbers = ['1.2.1','2.1.2']
答案 0 :(得分:1)
您可以将re.match
用于以下正则表达式模式:
import re
a = ['1.2.1', '2.1.2', '4', 'invalid']
print([s for s in a if re.match(r'\d+(?:\.\d+)+$', s)])
这将输出:
['1.2.1', '2.1.2']