Python - 计算字符串中的整数数量?

时间:2016-04-20 18:40:04

标签: python string list

我刚刚回到python中,想知道是否有一种简单的方法可以返回给定字符串中存在的整数数。

例如,如果我有一个列表,

['1 5','2 10 23','214 33 1']

遍历列表中的每个项目并查找整数的数量将分别返回233

我唯一能想到的就是拥有一个二维列表,其中主列表中的每个项目都是另一个包含单独数字的列表,然后我可以在每个辅助列表上调用len()。有更简单的方法吗?

2 个答案:

答案 0 :(得分:1)

只需使用列表理解。这要求整数在字符串列表中用空格“分隔。”

data = ['1 5','2 10 23','214 33 1']
int_per_string = [len(x.split(' ')) for x in data]

返回:

Out[8]:[2, 3, 3]

答案 1 :(得分:0)

根据您保存的示例,对于列表中的每个项目,它们用空格分隔。因此,您可以尝试使用 .isdigit()

    numCount=[]
    for item in list:
        index=0
        sublist = item.split()
        for subitem in sublist:
            if subitem.isdigit():
                index +=1
        numCount.append(index)
    print(numCount)

我希望这会对你有所帮助。如果要检查包含字符串的数字,也可以使用 subitem.isalnum()而不是 subitem.isdigit()

谢谢。