Python 在列表理解/生成器表达式中,`x in y`的对立面是什么?

Python 在列表理解/生成器表达式中,`x in y`的对立面是什么?,python,list-comprehension,any,in-operator,generator-expression,Python,List Comprehension,Any,In Operator,Generator Expression,我举了一个这样的例子: identified_characters = ["a","c","f","h","l","o"] word = "alcachofa#" if any(character in word for character not in identified_characters): print("there are un

我举了一个这样的例子:

identified_characters = ["a","c","f","h","l","o"]
word = "alcachofa#"
if any(character in word for character not in identified_characters):
    print("there are unidentified characters inside the word")
else:
    print("there aren't unidentified characters inside the word")
但是not会带来语法错误,所以我想如果有一个out-of-in函数,理论上你可以改变not-in并保留语法

我还认为给定结果的逻辑应该是任意函数的对立面,但我向上看,ppl得出结论,任意函数的对立面不应该是全部,在这种情况下,在这里不起作用。

在for语句中使用not,而在word部分的字符上使用not

已识别的字符=[a、c、f、h、l、o] 阿尔卡霍法 如果word中的字符有任何未识别的字符: 打印单词中有无法识别的字符 其他: 打印单词中没有未识别的字符 For循环可以用in,但不能用in,因为它们不知道notin的意思!For循环用于遍历列表或任何iterable,不能遍历iterable中没有的内容,因为它们不知道iterable中没有的内容。也可以通过以下方式使用not all:

在for语句中使用not,而不是在word部分的字符上使用not

已识别的字符=[a、c、f、h、l、o] 阿尔卡霍法 如果word中的字符有任何未识别的字符: 打印单词中有无法识别的字符 其他: 打印单词中没有未识别的字符
For循环可以用in,但不能用in,因为它们不知道notin的意思!For循环用于遍历列表或任何iterable,不能遍历iterable中没有的内容,因为它们不知道iterable中没有的内容。您还可以按以下方式使用not all:

您不能循环使用所有可能不在已识别字符中的项目;莫名其妙地有很多。这在概念上甚至没有意义

也实现了您想要的检查,如果word中的已识别字符中没有未识别字符,则必须循环word,而不是已识别字符的补码

已识别的_字符={a,c,f,h,l,o} 阿尔卡霍法 如果word中的字符有任何未识别的字符: 打印单词中有无法识别的字符 其他: 打印单词中没有未识别的字符
您不能循环所有可能不在已识别字符中的项目;莫名其妙地有很多。这在概念上甚至没有意义

也实现了您想要的检查,如果word中的已识别字符中没有未识别字符,则必须循环word,而不是已识别字符的补码

已识别的_字符={a,c,f,h,l,o} 阿尔卡霍法 如果word中的字符有任何未识别的字符: 打印单词中有无法识别的字符 其他: 打印单词中没有未识别的字符
为什么你认为pycharm在这个问题的上下文中有任何作用?这只是为了澄清我正在与pycharm合作,我对python和Keras有点陌生,而且我知道,像我这样不会说流利英语的新手在googlingYou热的时候,有一种倾向,就是在其中加入他们正在使用的API的名称。通常,未标识字符中的字符实际上是一个合法表达式,但不能在列表理解/生成器表达式中简单地表示x不在y中。您只需要在列表的末尾添加一个if子句,即:单词中的字符if character not in identified_characters。但不管怎样,正如人们在这里指出的那样,在这种情况下,set确实是你想要的,你可以一次性对你的字母执行所有的set并集/包含/排除操作。为什么你认为pycharm在这个问题的上下文中有任何作用?我只是想澄清一下,我正在使用pycharm,我对python和Keras有点陌生,我知道,像我这样不会说流利英语的新手,在googlingYou热的时候,有一种倾向,就是把他们正在使用的API的名称包括进来。通常,未标识字符中的字符实际上是一个合法表达式,但不能在列表理解/生成器表达式中简单地表示x不在y中。您只需要在列表的末尾添加一个if子句,即:单词中的字符if character not in identified_characters。但无论如何,正如人们在这里指出的,在这种情况下,set是你真正想要的,您可以一次性对字母执行所有的集合并集/包含/排除操作。您的代码将标识的_字符视为必需字符列表而不是允许字符列表。@user2357112supportsMonica修复了此问题。您的代码将标识的_字符视为必需字符列表而不是允许字符列表字符。@user2357112supportsMonica已修复it@MiguelFernandoMaciasMacias:@MiguelFernandoMaciasMacias我刚刚运行了它,它打印了一些身份不明的字符
在字里行间。你可能正在运行一个旧版本或其他东西。事实上,让我收回这一点,它确实有效。也许我只是看错了output@MiguelFernandoMaciasMacias:@MiguelFernandoMaciasMacias我刚刚运行了它,它打印了单词中有未经识别的字符。你可能正在运行一个旧版本或其他东西。事实上,让我收回这一点,它确实有效。也许我只是看错了输出