Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
 Аватар для borockov
4 / 4 / 3
Регистрация: 05.11.2012
Сообщений: 245

Сравнение многомерного списка

06.03.2021, 16:44. Показов 1442. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день друзья, подскажите пожалуйста, можно ли в python сравнивать многомерные списки? Например, у меня есть список:
Python
1
list1 = [['baksan', kbr'], ['baksan', 'kbr07'], ['baksan', 'KBR7'], ['nalchik', 'kbr'], ['nalchik', 'kbr20'], ['nalchik', 'kbr21']]
Python
1
list2 = [['baksan', 'kbr41'], ['baksan', 'kbr5345'], ['baksan', 'KBR12564'], ['nalchik', 'kbr123'], ['nalchik', 'kbr20784' ]]
Мне нужно получить список такого вида:

Python
1
list3 = [['baksan', 'kbr','kbr41'], ['baksan', 'kbr07','kbr5345'], ['baksan', 'KBR7','KBR12564'], ['nalchik', 'kbr','kbr123'], ['nalchik', 'kbr20','kbr20784'], ['nalchik', 'kbr21','предыдущее значение']]


То есть, мне надо объединить по парам два этих списка, ключом для объединения, я предполагаю выбрать значение первого элемента в list1 (в данном случае - baksan, nalchik)
пройтись циклом по списку list2, при первом найденом совпадении, добавить в list3 первый и второй элемент list1, и второй элемент list2, но, если во время итерации цикла, нет совпадений,
то в list3, добавить так же первый и второй элемент list1, и предыдущий элемент list2.
Друзья, я не прошу за меня решить эту задачу, просто дайте направление в какую сторону копать, может есть модули какие то?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.03.2021, 16:44
Ответы с готовыми решениями:

Создание многомерного списка
Условие: На вход с консоли подаются одно число n. Необходимо создать многомерный список n Ответ: 2 , ] 3 , ], , ]]

ввод многомерного списка с клавиатуры
Здравствуйте, питонисты! Может, кто знает, как ввести список вроде ]] с клавиатуры (метод list преобразует в список только первые скобки,...

Преобразование многомерного списка в одномерный
Помогите пожалуйста разобраться. Написал код , который раскрывает скобки. Для однократного использования работает, но если попытаюсь...

7
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
06.03.2021, 16:55
Цитата Сообщение от borockov Посмотреть сообщение
подскажите пожалуйста, можно ли в python сравнивать многомерные списки?
Цитата Сообщение от borockov Посмотреть сообщение
мне надо объединить по парам два этих списка,
все понятно)))

borockov, у тебя длины списков разные как собрался это решать?
0
 Аватар для borockov
4 / 4 / 3
Регистрация: 05.11.2012
Сообщений: 245
06.03.2021, 17:30  [ТС]
Хм...я не знаю как это решить, а что если вместо списка, у меня будут txt файлы? Сравнить txt файлы вышеописанным образом можно? Ну, типа построчно?

Добавлено через 12 минут
Изначально, значения двух этих списков у меня находятся в тхт, я подумал что сравнить их будет легче в списках, ну типа обращаться по индексу к ним
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
06.03.2021, 18:44
borockov, давай ближе к делу, если разное количество строк то как соединять?
и приведи пример!
например первый файл
1 2 3
2 3
3

второй файл
1 2 4
2 5

как их соединить чтобы тебя устроило?
0
06.03.2021, 19:12

Не по теме:

Welemir1, автор был в ступоре, после вашего вопроса в полном тупике.

0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
06.03.2021, 20:01
Semen-Semenich, ну зато он вернется с четким пониманием и сформулированным ТЗ
0
 Аватар для borockov
4 / 4 / 3
Регистрация: 05.11.2012
Сообщений: 245
06.03.2021, 21:49  [ТС]
Semen-Semenich, да, был в ступоре =))
в общем
есть два тхт:
Содержимое первого тхт:
;;;avada;;;bakar;;;
;;;avada;;;tapan;;;
;;;avada;;;torres.kolin;;;
;;;magazine;;;fernando;;;
;;;magazine;;;baster.main;;;
;;;magazine;;;andrea_get;;;
;;;magazine;;;f.galano;;;
Содержимое второго тхт:
;;;avada;;;caravella;;;
;;;avada;;;strongman;;;
;;;avada;;;kalipso23;;;
;;;magazine;;;expaty;;;
;;;magazine;;;burning_man;;;
;;;magazine;;;flamingos;;;

что я хочу получить:
;;;avada;;;bakar;;;caravella;;;
;;;avada;;;tapan;;;strongman;;;
;;;avada;;;torres.kolin;;;kalipso23;;;
;;;magazine;;;fernando;;;expaty;;;
;;;magazine;;;baster.main;;;burning_man; ;;
;;;magazine;;;andrea_get;;;flamingos;;;
;;;magazine;;;f.galano;;;
как видим в первом тхт больше строчек,для последней строки ;;;magazine;;;f.galano;;; нет пары, в таком случае, к нему надо добавить последний вариант из второго тхт, в данном случае у нас получается это flamingos;;;, соответственно получаем полную строку
;;;magazine;;;f.galano;;;flamingos;;;
все объединения идут не просто так, а по ключам, например ;;;avada;;; ключ из первого тхт, к нему мы добавляем значение ;;;avada;;; из второго тхт, и у нас получается ;;;avada;;;bakar;;;caravella;;; но, меня вгоняет в ступор то, что при повторной итерации цикла, вторая строчка тоже равно ;;;avada соответственно, опять во втором тхт, мы найдем ту же строку что и первый раз, как можно этого избежать? Как можно при отсутствии ключа во втором тхт добавить предыдущее значение?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
07.03.2021, 10:01
borockov, тебя попросили дать пример на простыз числах, даже привели их пример, но ты все равно нагородил кучу непонятно текста? ну как так? почему вы не читаете что вам пишут?

Добавлено через 2 минуты
Цитата Сообщение от borockov Посмотреть сообщение
что я хочу получить:
;;;avada;;;bakar;;;caravella;;;
;;;avada;;;tapan;;;strongman;;;
;;;avada;;;torres.kolin;;;kalipso23;;;
;;;magazine;;;fernando;;;expaty;;;
;;;magazine;;;baster.main;;;burning_man; ;;
;;;magazine;;;andrea_get;;;flamingos;;;
;;;magazine;;;f.galano;;;
как это соединить с

Цитата Сообщение от borockov Посмотреть сообщение
соответственно получаем полную строку
;;;magazine;;;f.galano;;;flamingos;;;
так какой должны быть последняя строка?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.03.2021, 10:01
Помогаю со студенческими работами здесь

Оставить уникальные значения из многомерного списка
Есть список школьников, через запятые, без пробелов: Вася,20,м,10А Женя,19,м,11А Женя,19,ж,9Б Вася,20,м,10В Лена,24,ж,11А ...

Вывод многомерного списка одной строкой
Всем привет. Изучаю Python. Хочу вывести многомерный список одной строкой. Попробовал так: print(" | ".join(map(str,...

Перевод многомерного списка строк в многомерный список чисел
Есть многомерный список состоящий из строковых чисел, нужно его сделать просто числами c плавающей запятой, оставив изначальную структуру. ...

Как добавить в конец многомерного списка строку через append?
Здравствуйте , подскажите как добавить в конец списка строку , нужно добавить ip адрес и количество повторений это два разных столба. ...

Как проще всего создать копию многомерного списка в Python 3?
Пусть мы имеем список А и нам надо создать список В, все элементы которого такие же как у списка А. После этого в списке В мы изменим один...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru