Why does it say this--> TypeError: 'bool' object is not iterable

Why does it say this--> TypeError: 'bool' object is not iterable

内容只是一个文本文件

tokens = content.split()
topics = [e for (n, x) in enumerate(tokens) for (n2, x2) in enumerate(tokens) for (i, e) in enumerate(tokens) if any(x2.isdigit()) if '.' in x if re.findall('\D+', x) if n < i < n2]

我不明白我是如何遍历 bool 的,还有更简洁、更快速的方法来理解这个列表吗?

你的问题来自 - any(x2.isdigit()) ,我猜 x2 是一个字符串,所以 x2.isdigit() returns a bool ,你不能使用 any() 函数就可以了。

尝试不使用 any() 函数来检查 x2 是否为数字 -

if x2.isdigit()

如果你想检查x2里面有没有数字,你可以试试-

if any(i.isdigit() for i in x2)

虽然我不知道你想做什么,所以无法检查其他逻辑是否正确。

any() 函数用于 iterable (列表或生成器表达式等),以检查它们是否为真。