reverse()问题
matrix = [,,
]
for i in range(len(matrix)):
print(matrix.reverse())
我想把子列表里面的数都反转过来,反转成,,,为什么写成上面这个样子后结果显示为None,None,None呢?
请大神赐教,谢谢。 你好!这个问题是因为reverse()函数没有返回一个新的列表,而是直接修改了原来的列表,并返回None。
所以当你尝试打印matrix].reverse()时,输出的是None。你可以通过下面的方法修正代码:
matrix = [,
,
]
for i in range(len(matrix)):
matrix.reverse()
print(matrix)
这样,matrix].reverse()会直接修改matrix],然后你可以打印出修改后的matrix]。
这个修改后的代码将输出:
isdkz 发表于 2023-3-17 17:37
你好!这个问题是因为reverse()函数没有返回一个新的列表,而是直接修改了原来的列表,并返回None。
所 ...
补充:如果不想修改源列表,可以使用 python 内置的 reversed() 方法,然后将 reversed() 返回的 reversed_iterator 对象转换为列表,代码如下:
rev = list(reversed(matrix))
print(rev)
页:
[1]