my_list =[[1, 2, 3], [4, 5, 6], [7, 8, 9, 10]]
Я стараюсь распечатать my_list
формы:
3 2 1
6 5 4
10 9 8 7
Это мой вывод:
1 2 3
4 5 6
7 8 9 10
Кажется, это очень просто в "путях python", спасибо!
Самый простой ответ, который я мог придумать, - это:
for nested_list in my_list:
print([val for val in nested_list[::-1]])
Как выражено в других ответах, проходящих через ::-1
во вложенный список, изменяется порядок в цикле for.
MEHTOD 1
Мы можем использовать функции списка, .join()
и .join()
.
my_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9, 10]]
for item in my_list:
print ' '.join(str(x) for x in item[::-1])
выход:
3 2 1 6 5 4 10 9 8 7
MEHTOD 2
Мы можем использовать вложенный оператор loop и Slices.
for xs in my_list:
for x in xs[::-1]:
print x,
print
И print()
по умолчанию печатает символы новой строки в конце, если вы не используете: print(end="")
или если вы используете Python 2.x print t,
будет работать.
выход:
3 2 1 6 5 4 10 9 8 7
Слой [:: -1] меняет список в цикле for (но на самом деле не будет изменять ваш список "постоянно"):
def reverse_list(my_list):
new_list = []
for sub_list in my_list:
new_list.append(sub_list[::-1])
return new_list
test_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9, 10]];
reversed_lists = reverse_list(test_list)
for reversed_list in reversed_lists:
print reversed_list
print('\n'.join(' '.join(map(str, i[::-1])) for i in my_list))