0 / 0 / 0
Регистрация: 11.09.2015
Сообщений: 67

Выведите нумерованный список пар из элементов списков a и b

07.11.2019, 13:39. Показов 6606. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создайте список a, состоящий из каких-то элементов.
Создайте список b такого же размера, как a, состоящий из каких-то элементов.
Выведите нумерованный список пар из элементов списков a и b.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.11.2019, 13:39
Ответы с готовыми решениями:

Выведите нумерованный список пар из элементов списков a и b
Создайте список a, состоящий из каких-то элементов. Создайте список b такого же размера, как a, состоящий из каких-то элементов. ...

Сформировать список, элементы которого равны среднему арифметическому пар соответствующих элементов двух списков
Даны два списка вещественных чисел одинаковой длины. Сформировать список, элементы которого равны среднему арифметическому пар...

Выведите список, состоящий из пар определяющих положение точек
У вас есть два списка : 1, 5, 20, 9, 10 6, 9, 8, 5 ,20 Первый это координата точки по оси Х, второй по оси У. Выведите список,...

13
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
07.11.2019, 13:44
Лучший ответ Сообщение было отмечено Вероника_В как решение

Решение

Вероника_В,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
>>> a=list('каких-то элементов')
>>> b=list('какие-то элементы!')
>>> print(*zip(a,b))
('к', 'к') ('а', 'а') ('к', 'к') ('и', 'и') ('х', 'е') ('-', '-') ('т', 'т') ('о', 'о') (' ', ' ') ('э', 'э') ('л', 'л') ('е', 'е') ('м', 'м') ('е', 'е') ('н', 'н') ('т', 'т') ('о', 'ы') ('в', '!')
>>> for i,e in enumerate(zip(a,b)):
...     print(f'{i}={e}')
... 
0=('к', 'к')
1=('а', 'а')
2=('к', 'к')
3=('и', 'и')
4=('х', 'е')
5=('-', '-')
6=('т', 'т')
7=('о', 'о')
8=(' ', ' ')
9=('э', 'э')
10=('л', 'л')
11=('е', 'е')
12=('м', 'м')
13=('е', 'е')
14=('н', 'н')
15=('т', 'т')
16=('о', 'ы')
17=('в', '!')
3
0 / 0 / 0
Регистрация: 11.09.2015
Сообщений: 67
07.11.2019, 14:18  [ТС]
File "<ipython-input-38-2f8bd308eae6>", line 8
0=('к', 'к')
^
SyntaxError: can't assign to literal
0
07.11.2019, 14:21

Не по теме:

Welemir1, просто в шоке от таких студентов. Я все.

0
WebDeveloper
 Аватар для Sear
107 / 106 / 4
Регистрация: 02.02.2011
Сообщений: 1,799
07.11.2019, 14:26
скопировать результат еще удивляться почему не работает (((
1
0 / 0 / 0
Регистрация: 11.09.2015
Сообщений: 67
07.11.2019, 14:36  [ТС]
извините, правда тупанула мозг уже не работает...(
0
 Аватар для codcw
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
24.11.2019, 20:50
Welemir1, можете объяснить, зачем тут: "print(*zip(a,b))" звёздочка? то есть, я уже проверил, без неё выведет <zip object at 0x00000000035BC348>, но интересно узнать как это работает
и ещё, если можно, вот этот кусочек кода: "for i,e in enumerate(zip(a,b)):", а именно "for i,e in", не совсем понятно, как это работает если вводятся две переменные
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7391 / 4818 / 1246
Регистрация: 30.03.2015
Сообщений: 13,693
Записей в блоге: 29
25.11.2019, 06:18
Цитата Сообщение от codcw Посмотреть сообщение
звёздочка?
почитай про распаковку, если коротко, то * говорит - тут у меня некая последовательность элементов (зип), распакуйте их, то есть достаньте все оттуда.
Цитата Сообщение от codcw Посмотреть сообщение
for i,e in enumerate(zip(a,b)):", а именно "for i,e in", не совсем понятно, как это работает если вводятся две переменные
ничего никуда не вводится)
мы пишем: для перечисления от слияния а и б получить индекс элемента и сам элемент, присвоив переменным i и e соответственно. Тут тебе советую почитать про перечисления enumerate - оно всегда возвращает сам элемент и его индекс, это очень удобно в ряде случаев. Тут просто применение не простое для первого знакомства, попробуй от простого списка перечисление получить и вывести = сразу все поймешь.
1
 Аватар для codcw
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
25.11.2019, 16:18
Welemir1,спасибо за ответ, просто в моём понимании если я например пишу "for i in list", то на первой итерации я грубо говоря получу "i=list[0]", а в случае же с "for i,e in list" я получаю "i=list[0][0]" и "e=list[0][1]", и поэтому было немного непонятно, но щас вроде потестил, можно получается и больше переменных, скажем так, вытаскивать, например "for i,e,j in list"
0
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
25.11.2019, 18:10
Цитата Сообщение от codcw Посмотреть сообщение
в случае же с "for i,e in list" я получаю "i=list[0][0]" и "e=list[0][1]"
вы получите ошибку.
Python
1
2
3
4
5
6
7
8
9
10
>>> list_ = [1,2,3,4,5,6,7,8,9]
>>> for i,e in list_:
    print(i,e)
 
    
Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    for i,e in list_:
TypeError: cannot unpack non-iterable int object
>>>
но вы внимательно посмотрите то что вам предоставили
Python
1
for i,e in enumerate(zip(a,b)):
zip
это немного по другому
for i,e in (zip(a,b)) я получаю "i= а[0]" и "e=b[0]
0
 Аватар для codcw
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
25.11.2019, 19:24
Semen-Semenich,
я же специально написал "грубо говоря"
то есть, я имею ввиду что если у меня будет
Python
1
lst = [(1,2),(2,4)]
то при вызове
Python
1
2
for i,e in lst:
    print(i,e)
я получаю "i==lst[0][0]" и "e==lst[0][1]"
Python
1
2
3
4
5
6
7
8
lst = [(1,2),(2,4)]
for i,e in lst:
    print(i==lst[0][0],e==lst[0][1])
 
>>> 
True True
False False
>>>
0
 Аватар для Semen-Semenich
5234 / 3479 / 1175
Регистрация: 21.03.2016
Сообщений: 8,306
25.11.2019, 19:52
codcw, нужно уточнять. list_ = [1,2,3,4,5,6,7,8,9] и lst = [(1,2),(2,4)] это немного разные подходы.
Python
1
2
3
4
5
6
>>> lst = [(1,2),(2,4)]
>>> for el in lst:
    a, b = el
    print(el,'a,b =>',a,b)
(1, 2) a,b => 1 2
(2, 4) a,b => 2 4
0
 Аватар для codcw
815 / 527 / 214
Регистрация: 22.12.2017
Сообщений: 1,495
25.11.2019, 21:00
Semen-Semenich, но речь же шла про enumerate(zip(a,b)), поэтому я думал что это само собой разумеется, вот и не уточнял
0
0 / 0 / 0
Регистрация: 06.02.2017
Сообщений: 12
25.10.2021, 23:21
Подскажите как можно решить через enumerate()?
Классу 8 "Б" было поручено организовать школьные дежурства в новом учебном году. Ученики должны дежурить по трое, и перед классным руководителем была поставлена задача организовать тройки дежурных, составив план дежурств.

8 "Б" — очень дружный класс. Когда пришло время назначать план школьных дежурств, каждый из учеников 8 "Б" напрочь отказался принимать в этом участие, пока ему не пообещают, что в течение года он подежурит с каждым из своих друзей.

Классный руководитель 8 "Б" и учитель истории Мария Ивановна — замечательный человек и прекрасный педагог. Она решила пойти навстречу своим ученикам. Мария Ивановна сразу поняла, что ей предстоит решить сложную комбинаторную задачу и, не мешкая, приступила к опросу своих учеников.

К окончанию опроса выяснилось, что все ребята дружат со всеми. Мария Ивановна сразу сообразила, что ей предстоит организовать
N троек, где N — количество ребят в классе. Помогите Марии Ивановне написать программу, составляющую всевозможные тройки дежурных.

Дан текстовый файл studygroup.txt, содержащий имена школьников 8 "Б". При помощи itertools.combinations вывести все способы назначения трёх дежурных.

Гарантируется, что в 8 "Б" классе не менее 3 человек.

Формат ввода
Имена школьников перечислены в одной строке через пробелы в файле studygroup.txt.

Формат вывода
Выведите несколько строк вида

1: student_A 2: student_B 3: student_C
Имена школьников и сами строки должны быть выведены в том порядке, в котором их предполагает вывод функции itertools.combinations().

Используйте стандартный вывод на экран, то есть через print.

Между двоеточием и именем ученика - один пробел, между именем ученика и цифрой - один пробел.
Ввод:
Dima Petya Sasha Misha Egor
Вывод:
1: Dima 2: Petya 3: Sasha
1: Dima 2: Petya 3: Misha
1: Dima 2: Petya 3: Egor
1: Dima 2: Sasha 3: Misha
1: Dima 2: Sasha 3: Egor
1: Dima 2: Misha 3: Egor
1: Petya 2: Sasha 3: Misha
1: Petya 2: Sasha 3: Egor
1: Petya 2: Misha 3: Egor
1: Sasha 2: Misha 3: Egor

Моё решение:
Python
1
2
3
4
5
import itertools as it
f = open('studygroup.txt').readline()
a = f.split()
for x, y, z in it.combinations(a, 3):
    print('1:',x,'2:', y,'3:', z, sep=' ', end='\t\n')
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
25.10.2021, 23:21
Помогаю со студенческими работами здесь

Рекурсия: определить функцию Pair (X,Y), создающую список из соответствующих пар списков X и Y
Доброго времени суток. Может ли кто-нибудь кто разбирается в Erlang, помочь решить задачу? Вроде задача простая, но я не могу понять как её...

Выведите на экран список. Посчитайте и выведите на экран сумму его элементов, индексы которых строго больше десяти
l = print(&quot;Список&quot;)

Функция преобразует целочисленный список в список списков подряд идущих нечетных элементов
Не могу написать функцию, которая преобразует целочисленный список в список списков подряд идущих нечетных элементов. ( - &gt;,]). ...

Получить список списков и вернуть список из N-х элементов подсписков
Доброго времени суток! пожалуйста помогите с функциональным программированием! ^_^ Условие задачи: напишите функцию ] -&gt; Int...

Список из пар элементов
write_2( L ) , здесь L список. Предикат истеннен если: список L будет выведен на экран парами элементов, каждая пара в новой строке,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru