我刚刚回到python中,想知道是否有一种简单的方法可以返回给定字符串中存在的整数数。
例如,如果我有一个列表,
['1 5','2 10 23','214 33 1']
遍历列表中的每个项目并查找整数的数量将分别返回2
,3
和3
。
我唯一能想到的就是拥有一个二维列表,其中主列表中的每个项目都是另一个包含单独数字的列表,然后我可以在每个辅助列表上调用len()。有更简单的方法吗?
答案 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()。
谢谢。