檢查列表蟒蛇
回答
"bla"
是真正
"13" in a
是真正
因此,"bla" and "13" in a
是真正
你想寫什麼大概是:("bla" in a) and ("13" in a)
這裏你不需要括號。'in'運算符的優先級高於'和'運算符。請參閱:http://docs.python.org/2/reference/expressions.html#summary –
我知道,這只是爲了清晰起見,因爲提問者不熟悉這一點。 –
你的布爾表達式被評估爲("bla") and ("13" in a)
,非空字符串評估爲真,所以如果"13" in a
爲真,那麼整個表達式將評估爲真。
相反,使用all()
:
all(x in a for x in ("bla", "13"))
或者只是檢查這兩個分別:
"bla" in a and "13" in a
您應該使用
In [1]: a = "FIFA 13"
In [2]: "bla" in a and "13" in a
Out[2]: False
您的代碼不會被解釋就像是閱讀:
("bla") and ("13" in a)
"bla"
是truthy,所以它是一個自動評估爲True
。 "13" in a
可能是True
。 False and True
評估爲True
,所以"bla"
沒有真正考慮。
你必須更明確一點:
'bla' in a and '13' in a
或者你可以使用一個不可讀的一行:
all(map(a.__contains__, ('bla', '13')))
對於短路的一行,我想你」你必須使用itertools.imap
而不是map
..
我們也可以使用'operator.contains()','all(map(lambda x:contains(a,x),(「bla」,「12」))) ' –
- 1. 蟒蛇SQL查詢檢查
- 2. 蟒蛇查找表
- 3. 蟒蛇 - 從列表
- 4. 蟒蛇從列表
- 5. 檢查音節,蟒蛇
- 6. 蟒蛇FLV檢查器
- 7. 蟒蛇檢查matlab安裝
- 8. 蟒蛇:檢查空列表拋出ValueError異常
- 9. 檢查兩個列表元素蟒蛇值
- 10. 蟒蛇 - 檢查字符串的一部分是在列表
- 11. 檢查列表LST,如果它在蟒蛇
- 12. 蟒蛇檢查值不是在unicode列表
- 13. 如何從列表蟒蛇
- 14. 拉平列表蟒蛇
- 15. 操縱列表項蟒蛇
- 16. 如何從列表蟒蛇
- 17. 蟒蛇放入列表
- 18. 蟒蛇排序列表
- 19. 找到列表串 - 蟒蛇
- 20. 如何從列表蟒蛇
- 21. 文本列表蟒蛇
- 22. 蟒蛇導入CSV列表
- 23. 蟒蛇,從列表字典
- 24. 蟒蛇列表寫爲csv
- 25. 列表到字典蟒蛇
- 26. 取下蟒蛇列表項
- 27. 蟒蛇:whtat是從列表
- 28. 打印列表,如蟒蛇
- 29. 列表排序爲蟒蛇
- 30. 蟒蛇:創建列表
你的意思是:''bla「在a和」13「中的一個' –
如果編程就像說英語,那麼錯誤的數量一個軟件會顯着減少。 – Fred
@Fred這非常非常值得商榷。英語是高度模糊的,對於編程語言而言是非常不合意的屬性。 – NullUserException