Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 16.03.2019
Сообщений: 81

Частичное удаление элементов в списке

11.12.2019, 11:00. Показов 1714. Ответов 8

Студворк — интернет-сервис помощи студентам
Есть многомерный список:
[[['21423220.117', '7', '112579780.69417', '43.600', '21423224.117', '5', '87724520.80315', '32.600'], ['20019970.328', '6', '105205659.49716', '40.600', '20019974.742', '5', '81978447.11315', '31.700']], [['22612109.211', '6', '118827429.43216', '38.400', '22612111.898', '3', '92592814.94513', '19.600', '22612113.023', '6', '92592755.91816', '37.000']]]
Нужно удалить все цифры длина которых равна 1: т. е. в данном списке: 7, 5, 6, 5, 6, 3, 6. Подскажете как это сделать?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2019, 11:00
Ответы с готовыми решениями:

Удаление соседних одинаковых элементов в списке
Ребят помогите или подскажите где можно поглядеть. Задача: Дан список чисел.Нужно вернуть список, где все соседние элементы были бы...

Удаление элементов в списке
Помогите написать программу(скорее функцию), где нужно удалить в списке элементы с позиции N по K. Список циклический однонаправленный. ...

Удаление не повторяющихся элементов в списке.
Нужно добавить условие при слиянии 2 списков. Условие такое: удалить не схожие элементы из списка, т.е. L1={1,2,2,3,5,6,6,7,8} Нужно чтоб...

8
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
11.12.2019, 11:15
Подсказываю:
Цикл перебора, количество символов, сравнение, удаление.
0
0 / 0 / 0
Регистрация: 16.03.2019
Сообщений: 81
11.12.2019, 11:20  [ТС]
Damenikx, на примере, если можно.
0
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
11.12.2019, 11:23
Хорошо. Только вот вопрос, а список так же должен остаться многомерным?
0
0 / 0 / 0
Регистрация: 16.03.2019
Сообщений: 81
11.12.2019, 11:37  [ТС]
Damenikx, да
0
1303 / 843 / 409
Регистрация: 12.03.2018
Сообщений: 2,305
11.12.2019, 11:41
Лучший ответ Сообщение было отмечено Getter17 как решение

Решение

Python
1
2
3
4
5
lst = [[[...]]]
for item in lst:
    for i, row in enumerate(item):
        item[i] = [r for r in row if len(r) > 1]
print(lst)
1
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38180 / 21115 / 4307
Регистрация: 12.02.2012
Сообщений: 34,723
Записей в блоге: 14
11.12.2019, 11:45
Цитата Сообщение от Getter17 Посмотреть сообщение
цифры длина которых равна 1
- у все цифр длина = 1. Неужели трудно написать по-человечески (Удалить все однозначные числа)?
0
0 / 0 / 0
Регистрация: 16.03.2019
Сообщений: 81
11.12.2019, 11:55  [ТС]
Catstail, Сформулировал, как смог, но мне интересно как это делать с длиной числа, т.к. может пригодиться и для двузначных и т. д.

Добавлено через 3 минуты
ioprst, Благодарю.
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38180 / 21115 / 4307
Регистрация: 12.02.2012
Сообщений: 34,723
Записей в блоге: 14
11.12.2019, 16:07
Python
1
2
3
4
5
6
7
8
9
10
11
def task(arr):
    res=[]
    for a in arr:
        if type(a) is list:
            res+=[task(a)]
        elif len(a)>1:
            res+=[a]
    return res
    
    
print(task([[['21423220.117', '7', '112579780.69417', '43.600', '21423224.117', '5', '87724520.80315', '32.600'], ['20019970.328', '6', '105205659.49716', '40.600', '20019974.742', '5', '81978447.11315', '31.700']], [['22612109.211', '6', '118827429.43216', '38.400', '22612111.898', '3', '92592814.94513', '19.600', '22612113.023', '6', '92592755.91816', '37.000']]]))
Рез: [[['21423220.117', '112579780.69417', '43.600', '21423224.117', '87724520.80315', '32.600'], ['20019970.328', '105205659.49716', '40.600', '20019974.742', '81978447.11315', '31.700']], [['22612109.211', '118827429.43216', '38.400', '22612111.898', '92592814.94513', '19.600', '22612113.023', '92592755.91816', '37.000']]]

Добавлено через 27 секунд
Цитата Сообщение от Getter17 Посмотреть сообщение
Сформулировал, как смог
- кто ясно мыслит, тот яcно излагает.

Добавлено через 4 часа 9 минут
А вот код уважаемого ioprst не вполне корректен:

Python
1
2
3
4
5
lst=[['11','22',['1','22','3']],['1','44',['11','22','33']]]
for item in lst:
    for i, row in enumerate(item):
        item[i] = [r for r in row if len(r) > 1]
print(lst)
Результат:
[[[], [], ['22']], [[], [], ['11', '22', '33']]]

Тогда, как:

Python
1
2
3
4
5
6
7
8
9
10
lst=[['11','22',['1','22','3']],['1','44',['11','22','33']]]
def task(arr):
    res=[]
    for a in arr:
        if type(a) is list:
            res+=[task(a)]
        elif len(a)>1:
            res+=[a]
    return res
print(task(lst))
Результат:

[['11', '22', ['22']], ['44', ['11', '22', '33']]]
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.12.2019, 16:07
Помогаю со студенческими работами здесь

Удаление повторяющихся элементов в списке
no_duble(L,NDL ), здесь L,NDL списки. Предикат истеннен если: список NDL получен из списка L, заменой всех вхождений каждого...

Удаление повторяющихся элементов в списке
Всем привет. Только начали изучать F#, поэтому есть затруднение с написанием программы. Нужно удалить из списка повторяющиеся элементы...

Удаление элементов в двусвязанном списке
Здравсвтуйте! Мне нужно удалить положительные элементы, но при вызове функции на строке 83 вызывается исключение. Сам код: #include...

Удаление парных элементов в списке
Есть список Нужно чтобы парные элементы удалались, а тройные нет. И ещё есть список Нужно чтобы внутренние пары оставались, а...

Удаление повторяющихся элементов в односвязном списке
Добрый день! Задание такое: построить линейный список из нескольких динамических переменных, содержащих вводимые целые числа....


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
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