Разделить список на части и отсортировать каждую часть
Дана некоторая последовательность случайных чисел длиной n.
Разделить список на k (k<4) частей и отсортировать каждую часть. Вывести результат.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Разделить дробное число на 2 части: целая часть числа и его дробная часть
Пользователь вводит с клавиатуры сумму в валюте (дробное число). Вывести по отдельности количество.

Разделить строку и положить каждую часть в массив
Добрый день, подскажите плиз, есть например строка text1:text2:text3 Как данную строку положить в.
Разделить группы словосочетаний на две части каждую
Здравствуйте. Есть список словосочетаний: фенистил капли инструкция детям фенистил капли.
1183 / 759 / 277
Регистрация: 05.09.2021
Сообщений: 1,772

Сообщение было отмечено Rib_03 как решение
Решение
Rib_03, что делать, когда список по длине элементов не делится нацело, думай уже сам.
1 2 3 4 5 6 7
from random import randint n, k = (int(input()) for _ in '__') array = [randint(10, 20) for el in range(n)] for i in range(k): print(*sorted(array[:n // k])) if i != k - 1 else print(*sorted(array)) array = array[n // k:]
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Разбить картинку на части и распечатать каждую часть.
Помогите разбить большую картинку на кусочки и распечатать на ВЫБРАННЫЙ, а не дефолтный, принтер по.
Каждую запись разделить на две части, которые затем переставить местами
Помогите каждую запись(введенную с клавиатуры) разделить на две части, которые затем переставить.

Условно разделить файл на 2 части и удалить вторую часть
Написать программу, используя бестиповые файлы: Условно разделить файл на 2 части и удалить вторую.
Дана произвольная строка, разделить ее на 3 части и поменять их таким образом 2-3-1 часть
Дана произвольная строка, разделить ее на 3 части и поменять их таким образом 2-3-1 часть
Необходимо разобрать строку URL на части и вывести каждую часть с новой строки
Дана строка, представляющая собой адрес URL. Части URL разделяются знаком / или //. Необходимо.

Разделить список на 3 части
Нужно разделить список на 3 части. Т.е. чтобы первый элемент был в первом списке, второй во втором.
Разделить список на две части
Здравствуйте! Подскажите пожалуйста, как реализовать задачу. Есть список чисел. Надо разбить его.
python разделить список на равные группы

Это легко проверяемо. Берём рандомного питониста и просим его написать — wait, oh shi-, значит нет.
Навскидку, проверять лень:
[l for _, l in groupby(enumerate(a), lambda a: a[0] // 4)]
t184256 ★★★★★
( 01.06.20 12:19:40 MSK )
Функциональное решение через свёртку
>>> from functools import reduce >>> input = list(range(14)) >>> reduce(lambda xss, x: xss[:-1] + [xss[-1] + [x]] if len(xss[-1]) < 4 else xss + [[x]], input, [[]]) [[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11], [12, 13]]
Crocodoom ★★★★★
( 01.06.20 13:06:54 MSK )
anonymous
( 01.06.20 13:23:02 MSK )
Ответ на: комментарий от vvn_black 01.06.20 12:15:32 MSK
простой, очевидный, быстронабираемый
WitcherGeralt ★★
( 01.06.20 13:23:56 MSK )
Ответ на: комментарий от anonymous 01.06.20 13:23:02 MSK
Тьфу, не туда посмотрел.
anonymous
( 01.06.20 13:24:07 MSK )
Ответ на: комментарий от WitcherGeralt 01.06.20 13:23:56 MSK
vvn_black ★★★★★
( 01.06.20 13:25:11 MSK )
Ответ на: комментарий от vvn_black 01.06.20 13:25:11 MSK
Ага, самое близкое к дефолтному. Меня этот пост слегка огорчил, когда я понял, что стандартного способа нет.
WitcherGeralt ★★
( 01.06.20 13:26:45 MSK )
Ответ на: комментарий от WitcherGeralt 01.06.20 13:26:45 MSK
надо бросать всё и срочно делать python 4
buratino ★★★★★
( 01.06.20 13:32:16 MSK ) автор топика
Ответ на: комментарий от WitcherGeralt 01.06.20 13:26:45 MSK
Меня этот пост слегка огорчил, когда я понял, что стандартного способа нет.
Так это же везде делается через слайсы. Или нет?
vvn_black ★★★★★
( 01.06.20 13:35:51 MSK )

ОТнаследовать list и перегрузить в нем операцию div, сразу появится
AntonI ★★★★
( 01.06.20 13:39:50 MSK )
Ответ на: комментарий от vvn_black 01.06.20 13:35:51 MSK
Слайсы слайсами, а какой-нибудь хелпер в itertools мог бы и найтись.
WitcherGeralt ★★
( 01.06.20 14:32:03 MSK )
Ответ на: комментарий от AntonI 01.06.20 13:39:50 MSK
перегрузить в нем операцию div, сразу появится
Хорошая идея, только лучше mod , так как от list / 2 ожидаешь всё-таки деления списка пополам
Crocodoom ★★★★★
( 01.06.20 14:32:40 MSK )
Ответ на: комментарий от Crocodoom 01.06.20 14:32:40 MSK

Ну от mod можно ожидать получение среза с хвоста…
Давно пора сделать ЯП куда можно вводить свои операции;-)
AntonI ★★★★
( 01.06.20 14:54:36 MSK )
Ответ на: комментарий от Crocodoom 01.06.20 14:32:40 MSK

перегрузить в нем операцию div, сразу появится
Хорошая идея, только лучше mod, так как от list / 2 ожидаешь всё-таки деления списка пополам
Готового способа нет именно поэтому.
Хочешь кастомное действие, которое должно однозначно пониматься при чтении кода - опиши его как можно более простыми из имеющихся средств языка, не плодя лишних сущностей.
blexey ★★★★★
( 01.06.20 14:56:52 MSK )
Ответ на: комментарий от AntonI 01.06.20 14:54:36 MSK

Давно пора сделать ЯП куда можно вводить свои операции;-)
Но зачем еще один Forth?
blexey ★★★★★
( 01.06.20 15:01:41 MSK )
anonymous
( 01.06.20 15:51:48 MSK )
qulinxao3 ★
( 06.06.20 12:22:11 MSK )
def parting(inp,d): o,c=[],[] for z in inp: c.append(z); if len(c)==d: o.append(c) c=[] else: if c: o.append(c) return o def jojo(ll): return [''.join(l) for l in ll] print(jojo(parting('abcdef1234',4)),file=__import__('sys').stdout)
parting - он конечно в лоб и линейно без всяких лист компиренсив - но вот прям простой, очевидный, быстронабираемый и быстрозапоминаемый
qulinxao3 ★
( 06.06.20 12:47:16 MSK )
qulinxao3 ★
( 07.06.20 19:26:23 MSK )
Ответ на: комментарий от qulinxao3 06.06.20 12:22:11 MSK
порфирьевич
а вот что будет, если посты qulinxao скормить порфирьевичу #порфирьевич ?
развлекался пару дней, скармливая коллекцию мицголизмов порфирьевичу – невозбранно достигнув желаемого.
хотя там простые марковские цепи. и вроде память не очень длинная.
anonymous
( 11.06.20 02:48:45 MSK )
Ответ на: порфирьевич от anonymous 11.06.20 02:48:45 MSK
сообщай итоги (и промежуточные тож)
qulinxao3 ★
( 11.06.20 10:50:52 MSK )
Ответ на: комментарий от qulinxao3 11.06.20 10:50:52 MSK
anonymous
( 11.06.20 15:31:40 MSK )
Ответ на: комментарий от qulinxao3 11.06.20 10:50:52 MSK
философическое
anonymous
( 11.06.20 15:45:41 MSK )
Ответ на: комментарий от qulinxao3 11.06.20 10:50:52 MSK
anonymous
( 11.06.20 16:01:39 MSK )
Ответ на: комментарий от qulinxao3 11.06.20 10:50:52 MSK
anonymous
( 11.06.20 16:26:16 MSK )
Ответ на: комментарий от anonymous 11.06.20 16:26:16 MSK
ещё 20 лет назад такое делали 🙂
buratino ★★★★★
( 11.06.20 16:34:22 MSK ) автор топика
Ответ на: комментарий от qulinxao3 11.06.20 10:50:52 MSK
anonymous
( 11.06.20 16:42:13 MSK )
Ответ на: комментарий от buratino 11.06.20 16:34:22 MSK
вот это да! многобукав. и не уломает же писать 🙂 а есть начальники которые примерно так и могут задвинуть.
мощно. внушаить. и ниачом 🙂
anonymous
( 11.06.20 16:46:15 MSK )

rupert ★★★★★
( 11.06.20 16:52:58 MSK )
Ответ на: комментарий от anonymous 11.06.20 16:46:15 MSK
вот ещё генератор фэнтэзи
buratino ★★★★★
( 11.06.20 16:55:53 MSK ) автор топика
Ответ на: комментарий от buratino 11.06.20 16:55:53 MSK
В процессе финальной схватки герой получает 5000 золотых и по морде. Но он встает и говорит: — Уйди, противный! Злодей от ужаса меняет фамилию.
Всем наступает хэппи-энд, все живут долго и счастливо, а главный герой продолжает в том же духе.
anonymous
( 11.06.20 16:57:25 MSK )
Ответ на: комментарий от anonymous 11.06.20 16:57:25 MSK
он знал
Как оказывается, враг героя — светлая голова. В процессе тяжелого, тупого и нудного разговора выясняется, что герой — хрен моржовый. Вскоре наступает финальная битва между всеми возможными странами, народами и божествами. Напарники героя обижаются и покидают героя.
Сила злодеев такова, что их можно победить только сбросив все, что осталось, в жерло вулкана
anonymous
( 11.06.20 16:58:47 MSK )
Ответ на: комментарий от anonymous 11.06.20 16:57:25 MSK
хоть сейчас в печать:
В одном старом доме с привидениями жил один среднестатистический-ничем-не-примечательный паренек. Из родных и близких у него был воспитавший его друг умершего отца (никому не известный, даже отцу).
И вот однажды к нему подходит странно выглядящий человек и говорит: Ты — избранный! Герой ничуть не удивляется.
Тогда пришелец говорит: — Беги, прячься скорее, ОНИ идут за тобой. Герой со свистом покидает родные места. Он бежит к знакомым странного визитера.
Странный визитер тем временем лежит мертвый.
В пути герой встречает нового друга. Вскоре они вместе становятся атакованы друг другом. Избавившись от неприятелей, герой с компанией добирается до места, где их посылают на.
Как оказывается, враг героя — абстрактное зло в серую полосочку. В процессе тяжелого, тупого и нудного разговора выясняется, что герой — хрен моржовый. Вскоре наступает финальная борьба за мир между героем и главным злодеем. Напарники героя погибают от собственной глупости, произнеся перед этим торжественную речь.
Сила злодеев такова, что их можно победить только найдя древний артефакт (или потеряв, если уже нашли)
В процессе финальной схватки герой получает Оскара за лучшую мужскую роль. Но он встает и говорит: — Со мной Сила! Злодей от ужаса меняет фамилию.
Всем наступает хэппи-энд, все живут долго и счастливо, а главный герой на цыпочках под шумок перебирается в следующую часть произведения.
Разделить один список на два списка
Ваша программа должна разделить один список на два и поместить их в новый список. Т.е. в итоге должен получиться список из 2-х списков.
Если в начальном списке нечетное количество элементов, то в первом списке должно быть больше элементов.
Если в списке нет элементов, то должны быть созданы два пустых списка.
[1, 2, 3, 4, 5, 6] => [[1, 2, 3], [4, 5, 6]]
[1, 2, 3, 4, 5] => [[1, 2, 3], [4, 5]]
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Наполнить два списка: один со строками, второй с числами. После этого создать из них и вывести список кортежей
Нужно использовать zip() и input()
Разделить один список на два
Написать программу разделения списка на два так, чтобы в первом cписке были элементы с первого до.

Разделить список на два списка
//amziprolog dv(,,):-!. dv(, X, Y):- H < 0, A is H, dv(T, , Y). dv(, X, Y):- H >= 0, B is H.
Разделить исходный список строк на два списка
2) Создайте приложение, которое разделит исходный список строк на два списка: список строк.
Регистрация: 26.11.2021
Сообщений: 39
yevgen_84, из простых вариантов это срез
x = [1, 2, 3, 4, 5, 6] print([x[:3], x[3:]])
2421 / 1463 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
1 2 3 4 5 6
def sep(arr): i = len(arr) - len(arr) // 2 return [arr[:i], arr[i:]] a = [1,2,3] print(sep(a))
Регистрация: 12.02.2022
Сообщений: 22
Am I evil? Yes, I am!
![]()
![]()
16119 / 9755 / 2730
Регистрация: 21.10.2017
Сообщений: 21,624
yevgen_84, самый информативный камент в мире!
3540 / 2144 / 566
Регистрация: 02.09.2015
Сообщений: 5,435
1 2 3 4 5 6 7 8 9
def foo(a): mid = (len(a) + 1) // 2 return [a[:mid], a[mid:]] assert [[1, 2, 3], [4, 5, 6]] == foo([1, 2, 3, 4, 5, 6]) assert [[1, 2], [3]] == foo([1, 2, 3]) assert [[1, 2, 3], [4, 5]] == foo([1, 2, 3, 4, 5]) assert [[1], []] == foo([1]) assert [[], []] == foo([])
Регистрация: 12.02.2022
Сообщений: 22
def не проходили
3540 / 2144 / 566
Регистрация: 02.09.2015
Сообщений: 5,435
yevgen_84, будет повод.
Как по-твоему работает индексация в списках? Хочешь сказать, что без функций/методов?
2421 / 1463 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
yevgen_84,
1 2 3 4
arr = [[1, 2, 3, 4, 5, 6], [1, 2, 3], [1, 2, 3, 4, 5], [1], []] for a in arr: i = len(a) - len(a) // 2 print(a, '=>', [a[:i], a[i:]])
2738 / 1219 / 438
Регистрация: 21.11.2021
Сообщений: 2,473
1 2 3 4
a = [1,2,3,4,5] k = sum( tuple( divmod( len(a), 2 ) ) ) c = [ a[:k], a[k:] ] print( c )
Регистрация: 12.02.2022
Сообщений: 22
Здравствуйте помогите решить задачку
Ваша программа должна перенести последний элемент списка из конца в начало, т.е. последний элемент списка должен стать первым. При этом последовательность других элементов не должна меняться.
Пустой список или список только с одним элементом должен остаться прежними
[12, 3, 4, 10] => [10, 12, 3, 4]
2738 / 1219 / 438
Регистрация: 21.11.2021
Сообщений: 2,473
a = [1,2,3,4,5] print(f' => ')
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Есть два списка: один [a, b, c], другой [1, 2, 3]. Нужно вывести один список вида [a-1, b-2, c-3]
Помогите решить, пожалуйста. Есть два списка: один , другой . Нужно вывести один список вида
Разделить один однонаправленный список на два: положительные и отрицательные элементы
Дан однонаправленный список, состоящий из целых чисел. Получить из этого списка два новых. Один.

Разделить один двусвязный список на два: со строчными и прописными символами
Разбить двусвязный список, состоящий из N символов латинского алфавита, на 2 списка так, чтобы в.
SWI-Prolog. Разделить список на два списка по очереди
Разделить список на два списка, чтоб элементы записывались по очереди. Нужно написать прогу чтоб.

Как из один список разделить на 2 списка, чтобы элементы были в хаотичном порядке?
List<string> li = new List<string>().
Разделить линейный список со структурами Train на два списка одинаковой длины
Добрый день! Есть вот такое задание, структуру я создал, а придумать как разбить список не могу).
Как разделить список на список список списков?
1. Что значит "короче"?
2. Где в вашем примере "список список списков"?
3. По какому принципу вы поделили свой исходный список? И почему вы выбрали именно такой вариант, а не [[1,2,3],[4,5,6]] например?
Woshibai @Woshibai Автор вопроса
dmshar, 1) Как можно более кратко.
2) Может, не так слова подобрал. Но я привел пример, который, надеюсь, понятен.
3) Потому что так надо.
Решения вопроса 1

Руслан Гильфанов @ri_gilfanov
Web- and desktop-developer
l = [1, 2, 3, 4, 5, 6] l = [[l[i], l[j]] for i, j in zip(range(0, len(l) - 1, 2), range(1, len(l), 2))] print(l)
Update. По наводке aRegius о срезах, вариант с zip() можно сократить так:
l = [1, 2, 3, 4, 5, 6] l = [[i, j] for i, j in zip(l[0::2], l[1::2])] print(l)
Ответ написан более двух лет назад
Комментировать
Нравится 2 Комментировать
Ответы на вопрос 2

Andrey Dugin @adugin Куратор тега Python
Чуть ли не каждый день этот вопрос задают. Это классический "трюк" на Python, между прочим:
list(zip(*[iter(lst)]*2))
Ответ написан более двух лет назад
Нравится 3 8 комментариев

Алан Гибизов @phaggi Куратор тега Python
Тааак, это надо осмыслить хорошенько 🙂
У меня вот такое получилось:
[[lst[i], lst[i+1]] for i in range(0,len(lst),2)]
В лоб, так сказать.

Алан Гибизов @phaggi Куратор тега Python
Andrey Dugin, а там унутре вместо списка получается ведь кортеж.
может, так?
list(map(list, list(zip(*[iter(lst)]*2))))