Python 3.5.2:检查字符串中的字符形成一个列表,与使用!=进行检查不同

ROBlack蜗牛

我想编写一个过滤字符串中的字母“ m”或“ M”的程序。使用此版本时:

sentence = "Therem are a lotm of Ms in here andm iM hope tmo find then amll"
not_good = ["m", "M"]
result = list(filter(lambda x : x not in not_good,sentence))
result1 = "".join(result)
print(result1)

给了我我想要的东西:There are a lot of s in here and i hope to find then all

当我尝试此版本的代码时:

sentence = "Therem are a lotm of Ms in here andm iM hope tmo find then amll"

result = list(filter(lambda x : x != "m" or x != "M" ,sentence))

result1 = "".join(result)

print(result1)

它打印出句子: Therem are a lotm of Ms in here andm iM hope tmo find then amll

另外,如果我想使用此代码制作仅包含“ m”和“ M”的字符串:

result = list(filter(lambda x : x == "m" or x == "M" ,sentence))
result1 = "".join(result)
print(result1)

它工作得很好。我有 :mmMmMmm

为什么第二个版本的代码没有完成而第一个版本的工作呢?另外,在==工作时为什么不!=呢?

也许我不能使用=!搜索一个字符串?不要这样...

请帮助初学者程序员!

此外,英语不是我的母语,因此,对于任何错误,我深表歉意。

元烤面包机

您想要的是条件的倒置x == "m" or x == "M",而您可以not (x == "m" or x == "M")针对这种情况

至于为什么x != "m" or x != "M"不能按您想要的方式工作,您可以看到,如果x是m,x显然不是M,那么条件为True,因此该字符将通过过滤器并最终得到结果。

一种更正式的表达方式是通过戴摩根定律De Morgan's Law),但简而言之,在这种情况下:

not (x == "m" or x == "M") -> (x == "m" and x == "M")

同样对于我们原来的错误案例;虽然不是我们想要的,但以下表达式是相同的。

(x != "m" or x != "M") -> not (x != "m" and x != "M")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

对 Sqlite 和 python 表中的项目进行检查

如何检查字符串是否包含Python列表中的任何3个元素

QCheckBox的背景色在用户检查时与python代码对其进行检查时有所不同

使用python从JSON文件中解析数据并进行检查

检查字符串是否在字母列表中-Python3

logger.disabled稍后在python日志记录模块中进行检查。有什么根据?

更新txt文件以在python将数据保存到其中时进行检查

用于在晚上10点至上午9点之间进行检查的python脚本

Python 3:检查一个字符串是否有另一个列表中的多个匹配项

Python - 拆分并枚举一个字符串,检查字符串中是否有2个单词在一定距离内

Chrome上传“太快”以进行检查

如何对“0”进行检查?

nicEdit textarea名称进行检查

Python:要在包含子字符串和完整字符串的同一列表中进行检查,将它们合二为一?

有没有更快的方法可以通过python使用nltk从单词列表中进行检查?

Python-检查字符串中的最后一个字符是否为数字

Python-检查字符串中的最后一个字符是否为数字

用python检查字符串是否在列表中

如何检查列表中是否有超过 3 个相同的字符串,Python

Python 按最后 3 个字符和一个数字对字符串列表中的字符串进行排序

Python检查字符串的第一个和最后一个字符

检查字符串是否包含另一个字符串的3个字符长的子字符串

如何浏览2个清单并进行检查

Python - 检查字符串中是否至少有 3 个数字

使用python3检查字符串是否是有效的回文

Azure Eventhubs(Python):使用Blob存储进行检查点-启用检查点时EventProcessor中的keyerror问题

使用Python检查字符串是否在文件中

进行检查-将字符串转换为Elixir中的映射

Substring [整个单词]使用字符串变量进行检查