假设我有一个如下列表。
n = [[1, 3, "String1"], [3, 2, "String2"]]
我想使用in
检查列表中是否有一个元素。我的问题是我不知道元素的字符串元素是什么。我已经尝试了下面的内容,但它没有用。
import types
# Collection of data
data = [[1, 3, "String1"], [3, 2, "String2"]]
# Check to see if an element with two pre-
# determined numbers, and an unknown string
# exists.
assert [1, 3, types.StringType] in n
但这不起作用。我该怎么做呢?
答案 0 :(得分:1)
>>> data = [[1, 3, "String1"], [3, 2, "String2"]]
>>> class AnyString(str):
... def __eq__(self, other):
... return isinstance(other, str)
...
>>> check = [1, 3, AnyString()]
>>> check in data
True
答案 1 :(得分:0)
我能想到的最简单的方式:
assert [1,3] in (l[0:2] for l in n)
或:
assert any([1,3] == l[0:2] for l in n)