[英]how to eliminate checking of alphanumeric character from middle of string python regex
[英]Checking if any character in a string is alphanumeric
我想檢查字符串中的任何字符是否為字母數字。 我為此編寫了以下代碼,它工作正常:
s = input()
temp = any(i.isalnum() for i in s)
print(temp)
我的問題是下面的代碼,它與上面的代碼有什么不同:
for i in s:
if any(i.isalnum()):
print(True)
for循環迭代仍然在第一個代碼中發生,那么為什么不拋出錯誤呢? 第二個代碼拋出:
回溯(最近一次調用最后一次):TypeError中的文件“”,第18行:'bool'對象不可迭代
在第二個函數中,您將any
應用於單個元素,而不是整個列表。 因此,如果字符i
是字母數字,則會得到一個bool元素。
在第二種情況下,當您使用單個元素時,您無法真正使用any
一個。 相反,你可以寫:
for i in s:
if i.isalnum():
print(True)
break
哪個更類似於你的第一個案例。
any()
需要一個可迭代的。 這就足夠了:
isalnum = False
for i in s:
if i.isalnum():
isalnum = True
break
print(isalnum)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.