Python 如何按顺序打印列表?
我得到了一个错误的输出Python 如何按顺序打印列表?,python,Python,我得到了一个错误的输出[[1,3,2,0,0],[3,2,0,0],[2,0,0],[0,0],[0],[0]。 有人能修好吗,我被困在这里了 if __name__=="__main__": row = [[4, 6, 5, 3, 3], [2, 4, 3, 1, 1], [4, 6, 5, 3, 3], [3, 5, 4, 2, 2], [1, 3, 2, 0, 0], [1, 3, 2, 0, 0]] for x in row: diff2 = [(x[z:
[[1,3,2,0,0],[3,2,0,0],[2,0,0],[0,0],[0],[0]。
有人能修好吗,我被困在这里了
if __name__=="__main__":
row = [[4, 6, 5, 3, 3], [2, 4, 3, 1, 1], [4, 6, 5, 3, 3], [3, 5, 4, 2, 2], [1, 3, 2, 0, 0], [1, 3, 2, 0, 0]]
for x in row:
diff2 = [(x[z:]) for z in range(len(row)-1)]
print(diff2)
输出
[[4, 6, 5, 3, 3], [4, 3, 1, 1], [5, 3, 3], [2, 2], [0]]
如果我明白你想要什么:
>>> print([r[i:] for i, r in enumerate(row)])
[[4, 6, 5, 3, 3], [4, 3, 1, 1], [5, 3, 3], [2, 2], [0], []]
或者如果你不想要最后的名单
>>> print([r[i:] for i, r in enumerate(row[:-1])])
[[4, 6, 5, 3, 3], [4, 3, 1, 1], [5, 3, 3], [2, 2], [0]]
如果要为切碎列表对实际元素进行排序:
>>> print([sorted(r[i:]) for i, r in enumerate(row[:-1])])
[[3, 3, 4, 5, 6], [1, 1, 3, 4], [3, 3, 5], [2, 2], [0]]
已排序排序:
>>> print(sorted([sorted(r[i:]) for i, r in enumerate(row[:-1])]))
[[0], [1, 1, 3, 4], [2, 2], [3, 3, 4, 5, 6], [3, 3, 5]]
为了什么?第一个列表不删除任何内容,第二个列表删除第二个列表中的第一个元素,第三个列表删除第三个列表中的第一个和第二个元素,第四个列表删除第四个列表中的第一个、第二个和第三个元素乔,不要假设我们知道你想要实现什么。解释预期的结果。@Joe请编辑你的问题,在更连贯的句子中准确地包含你想做的事情。@Joe。我反对你的问题,因为它无法解释你想做什么。在编程中,清晰地表达您想要创建的内容是任何成功编码的基本先决条件。感谢它的工作,我不需要对它进行排序,因为我正在实现一个算法,我需要索引