Python 检查对称性的代码在某些测试用例中失败

Python 检查对称性的代码在某些测试用例中失败,python,python-2.7,Python,Python 2.7,我在尝试让这段代码在所有情况下运行时遇到麻烦: def symmetric(p): """ returns true if list is symmetric""" if p==[]:return True n=len(p) m=len(p[0]) if m !=n: return False i=0 j=0 t=False while i < n: while j < n:

我在尝试让这段代码在所有情况下运行时遇到麻烦:

def symmetric(p):
    """ returns true if list is symmetric"""
    if p==[]:return True
    n=len(p)
    m=len(p[0])
    if m !=n:
        return False
    i=0
    j=0
    t=False
    while i < n:
        while j < n:
            if not p[i][j]==p[j][i]:
                return False
            j=j+1
        i=i+1
    return True
def对称(p):
“”“如果列表是对称的,则返回true”“”
如果p=[]:返回True
n=len(p)
m=len(p[0])
如果我=n:
返回错误
i=0
j=0
t=假
而i
当我运行这个程序时,它会在某些情况下被忽略。 我似乎看不出我做错了什么


我希望
[[['algebra'、'combinations'、'graphs']、['combinations'、'topology']、['graphs'、'topology'、'sets']]
返回
False
,但它没有返回。

break
语句只结束内部
循环

既然你已经发现了不对称性,就用return:

i, j = 0
while i < n:
    while j < n:
        if not p[i][j] == p[j][i]:
            return False
        j += 1
    i += 1
return True
更好的方法是,在
范围()上使用
进行
循环:


break
语句仅结束内部
while
循环

既然你已经发现了不对称性,就用return:

i, j = 0
while i < n:
    while j < n:
        if not p[i][j] == p[j][i]:
            return False
        j += 1
    i += 1
return True
更好的方法是,在
范围()上使用
进行
循环:


break
语句仅结束内部
while
循环

既然你已经发现了不对称性,就用return:

i, j = 0
while i < n:
    while j < n:
        if not p[i][j] == p[j][i]:
            return False
        j += 1
    i += 1
return True
更好的方法是,在
范围()上使用
进行
循环:


break
语句仅结束内部
while
循环

既然你已经发现了不对称性,就用return:

i, j = 0
while i < n:
    while j < n:
        if not p[i][j] == p[j][i]:
            return False
        j += 1
    i += 1
return True
更好的方法是,在
范围()上使用
进行
循环:


请务必向我们提供通过和未通过的案例。我的程序没有为输入返回False[[1,2],[1,2]]请回答您的问题以添加类似的详细信息。还有其他案例,包括正确的案例吗?请提供通过和未通过的案例。我的过程没有为输入返回False[[1,2],[1,2]]请回答您的问题以添加类似的详细信息。还有其他案例,包括正确的案例吗?请提供通过和未通过的案例。我的过程没有为输入返回False[[1,2],[1,2]]请回答您的问题以添加类似的详细信息。还有其他案例,包括正确的案例吗?请提供通过和未通过的案例。我的过程没有为输入返回False[[1,2],[1,2]]请回答您的问题以添加类似的详细信息。还有更多的案例,包括正确的案例吗?非常感谢。我仍然有一个例子没有通过,如下所示:“对于输入[['代数','组合数学','图形'],['组合数学','拓扑','集合'],['图形','拓扑','集合']],您的过程没有返回False。”。顺便提一下,这个问题是udacity intro到计算机科学轨道的一个可选测验,非常感谢。我仍然有一个例子没有通过,如下所示:“对于输入[['代数','组合数学','图形'],['组合数学','拓扑','集合'],['图形','拓扑','集合']],您的过程没有返回False。”。顺便提一下,这个问题是udacity intro到计算机科学轨道的一个可选测验,非常感谢。我仍然有一个例子没有通过,如下所示:“对于输入[['代数','组合数学','图形'],['组合数学','拓扑','集合'],['图形','拓扑','集合']],您的过程没有返回False。”。顺便提一下,这个问题是udacity intro到计算机科学轨道的一个可选测验,非常感谢。我仍然有一个例子没有通过,如下所示:“对于输入[['代数','组合数学','图形'],['组合数学','拓扑','集合'],['图形','拓扑','集合']],您的过程没有返回False。”。顺便提一下,这个问题是从udacity intro到计算机科学轨道的一个可选测验