这是一个Pig拉丁游戏,它可以工作,但现在如果我输入变量"special"定义的任何字符,我会将其返回为True,但如果我添加另一个字符,它会返回为false。
所以它只检查整个字符串,而不是字符串的任何字符。我希望如果我输入"禁止/",它会被返回为无效。所以,如果在"单词"中找到"special"中定义的任何字符,我希望它返回true。
special = list('[@_!#$%^&*()<>?/|}{~:]')
word=input("nType in a word : ")
if word in special:
print("Your entry is not valid.")
else:
pigLatin()
我以前也试过,但基本上是一样的
if word[0:] in special:
如果有帮助的话,这是全狙击。条件在行:41
小心,我几天前开始的,所以可能看起来很乱。
循环输入中的每个字符,并逐个执行检查。您可以使用any()
和生成器理解:来完成此操作
if any(i in special for i in word):
print("Your entry is not valid.")
您也可以通过检查word
和special
之间的交集是否为空来考虑使用sets
:
if set(word) & set(special):
print("Your entry is not valid.")