У меня есть список питонов [1,2,3,4,5,6] Я должен напечатать [1,2,3,6,5,4]?Первая половина в порядке возрастания и следующая половина в порядке убывания
[1,2,3,4,5,6]
[1,2,3,6,5,4]
просто используя отрезок длины списка, затем сортируйте его
list=[1,2,3,4,5,6] middle = len(list)//2 print(sorted(list[:middle])+sorted(list[middle:],reverse=True))
l=[1,2,3,6,5,4] l[0:int(len(l)/2)]+sorted(l[-int(len(l)/2):],reverse=True)
Выход
[1, 2, 3, 6, 5, 4]
x = [1,2,3,4,5,6] a = x[:int(len(x)/2)] b = x[int(len(x)/2):] print(sorted(a) + sorted(b, reverse=True))
Вы можете архивировать, как это,
In [24]: mid = len(lst)//2 In [25]: sorted(lst[:mid]) + sorted(lst[mid:],reverse=True) Out[25]: [1, 2, 3, 6, 5, 4]
По спискам:
# mix list up a bit l = [3,4,1,2,5,6] len_l = len(l) l.sort() # sort it again # print first half, then last half reversed print(l[0:len_l//2]+l[len_l:len_l//2-1:-1])
Вывод:
Попробуйте получить половину, затем поменяйте местами:
>>> l=[1,2,3,4,5,6] >>> l[len(l)//2:]=l[len(l)//2:][::-1] >>> l [1, 2, 3, 6, 5, 4] >>>
нарезка + нарезка + реверс.