【发布时间】:2017-10-18 19:37:40
【问题描述】:
我想检查字符串中是否有任何字符是字母数字。我为此编写了以下代码,并且运行良好:
s = input()
temp = any(i.isalnum() for i in s)
print(temp)
我的问题是下面的代码,它和上面的代码有什么不同:
for i in s:
if any(i.isalnum()):
print(True)
for 循环迭代仍在第一个代码中发生,为什么它没有抛出错误?第二个代码抛出:
Traceback(最近一次调用最后一次): 文件“”,第 18 行,在 TypeError: 'bool' 对象不可迭代
【问题讨论】:
-
any语句在您的两个函数中具有不同的作用域。在第二种情况下,您将any应用于单个元素。
标签: python string alphanumeric