在Python中访问列表列表中的变量

在Python中访问列表列表中的变量,python,list,python-2.7,Python,List,Python 2.7,如何访问“X”的字符串 list = [['X','Y','Z'], ['X','Z','Y']] 例如,我想定义一个函数来返回True如果两个列表的list[1]都等于'X',您可以使用all查看每个子列表中的所有第I个元素是否相同: def is_equal(l, i): first = l[0][i] return all(sub[i] == first for sub in l) 如果i超出和子列表的范围,您可能需要捕获索引器: def is_equal(l, i):

如何访问“X”的字符串

list = [['X','Y','Z'], ['X','Z','Y']]

例如,我想定义一个函数来返回
True
如果两个列表的
list[1]
都等于
'X'

,您可以使用
all
查看每个子列表中的所有第I个元素是否相同:

def is_equal(l, i):
    first = l[0][i]
    return all(sub[i] == first for sub in l)
如果
i
超出和子列表的范围,您可能需要捕获索引器:

def is_equal(l, i):
    try:
        first = l[0][i]
        return all(sub[i] == first for sub in l)
    except IndexError:
        return False
如果要显式传递要检查的值:

def is_equal(l, i, x):
    try:
        return all(sub[i] == x for sub in l)
    except IndexError:
        return False

all('X'在X[0]中表示您的_列表中的X)
这是一个答案,写下它并在回答的问题上签名:)我可以;但它太琐碎了;OP一点也没有尝试。
all('X'在X[0]中表示X在您的\u列表中)
是错误的,
在“FOO X”中的“X”是错误的True@Eric,不用担心,您可能希望让用户知道
i
是否超出了任何子列表的范围
def check_list(list):
    for a in list:
        if a == "X"
            return True
    return False

def check_list_list(list):
    try:
        return check_list(list[1])
    except IndexError:
        return False