从其他字符串获取数字

时间:2019-03-31 13:19:15

标签: python

我有很多琴弦。他们里面有一个数字。我的任务是获取所有数字并保存到列表中。


例如:

输入-['ad21ssda', 'sf9sdsfqw', '098jafad', 'adad2']

输出-[21, 9, 98, 2]

2 个答案:

答案 0 :(得分:1)

使用正则表达式:

import re

inputs = ['ad21ssda', 'sf9sdsfqw', '098jafad', 'adad2']
result = [int(x) for x in re.findall(r"\d+", ' '.join(inputs))]
print(result)
# [21, 9, 98, 2]

答案 1 :(得分:0)

具有简单的循环:

input = ['ad21ssda', 'sf9sdsfqw', '098jafad', 'adad2']
output = []
for string in input:
    output_element = ''
    for character in string:
        if character.isnumeric():
            output_element = output_element + character
    if output_element != '':
        output.append(int(output_element))
print(output)

>>> [21, 9, 98, 2]

我猜想正则表达式是首选的解决方案,但是我对它并不熟悉,会以这种方式解决它。