Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918

Нахождение последовательности в списке

03.04.2021, 00:28. Показов 3216. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброй ночи. Возникла проблема при написании простейшей функции. Смысл таков - входит список, если есть последовательность из одинаковых символов, он меняет эти ячейки на "". Все. Под вечер я дико туплю, буду рад помощи. Спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.04.2021, 00:28
Ответы с готовыми решениями:

Нахождение координат в списке
Здравствуйте. Подскажите пожалуйста как найти координаты в списке () В данном случае мне нужно создать еще один список в котором бы...

Нахождение повторяющихся элементов в списке
Всем привет! Сразу оговорюсь, что есть дубликат темы на форуме: https://www.cyberforum.ru/python-beginners/thread1306210.html , но там...

Нахождение повторяющихся элементов в списке?
Нужно ввести список чисел и чтоб программа нашла, и вывела те числа которые повторяются.

15
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.04.2021, 09:15
Цитата Сообщение от alilxxey Посмотреть сообщение
входит список
Список чего?
0
 Аватар для 3C_273
42 / 29 / 14
Регистрация: 09.06.2018
Сообщений: 147
03.04.2021, 09:18
Лучший ответ Сообщение было отмечено alilxxey как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
if __name__ == '__main__':
    arr = [3,5,6,2,4,2,2,2,5,4,1,1,1,5]
    mem = arr[0]
    count = 1
    for i in range(1,len(arr)):
        if arr[i] == mem:
           count+=1
        else:
            count = 1
        if count == 3:
            for j in range(i-2,i+1):
                arr[j] = ""
        mem = arr[i]
    print(arr)
2
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38177 / 21112 / 4307
Регистрация: 12.02.2012
Сообщений: 34,716
Записей в блоге: 14
03.04.2021, 09:24
Лучший ответ Сообщение было отмечено alilxxey как решение

Решение

alilxxey, что должно получиться для списка [1,2,5,5,5,5,6,6]? Должно [1,2,"","","",5,6]? Если да, то:

Python
1
2
3
4
5
6
7
8
9
def foo(arr):
     n=len(arr)
     i=0
     while(i<=n-3):
        if arr[i]==arr[i+1] and arr[i+1]==arr[i+2]:
            arr[i],arr[i+1],arr[i+2]="","",""
            i+=3
        else:
            i+=1
Добавлено через 1 минуту
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Список чего?
- а в Питоне это не имеет значения.
2
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.04.2021, 09:40
Цитата Сообщение от Catstail Посмотреть сообщение
в Питоне это не имеет значения
А в задаче имеет.
Что если список строк, например?

Добавлено через 2 минуты
Или [122, 1258, 255, 333...]
И какие символы имелись ввиду, если последовательность числовая?
0
 Аватар для 3C_273
42 / 29 / 14
Регистрация: 09.06.2018
Сообщений: 147
03.04.2021, 09:40
Цитата Сообщение от iSmokeJC Посмотреть сообщение
Что если список строк, например?
В питоне их также можно сравнить через ==. Вот если список объектов и в них не прописан метод сравнения, то могут появиться проблемы
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.04.2021, 09:42
Цитата Сообщение от 3C_273 Посмотреть сообщение
В питоне их также можно сравнить через ==
Я знаю. Но как это вяжется с
Цитата Сообщение от alilxxey Посмотреть сообщение
последовательность из 3х одинаковых символов
?
0
 Аватар для 3C_273
42 / 29 / 14
Регистрация: 09.06.2018
Сообщений: 147
03.04.2021, 09:43
0
 Аватар для 3C_273
42 / 29 / 14
Регистрация: 09.06.2018
Сообщений: 147
03.04.2021, 09:43
Аааа, вот про что
Но тут тогда речь про обработку строки уже идёт а не массива
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
03.04.2021, 09:45
3C_273, так о том и речь, что условие непонятно. Почему я и спросил - какая именно последовательность, и какие именно дубликаты нужно удалять
2
 Аватар для 3C_273
42 / 29 / 14
Регистрация: 09.06.2018
Сообщений: 147
03.04.2021, 09:47
iSmokeJC, Да согласен, условие не точно
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38177 / 21112 / 4307
Регистрация: 12.02.2012
Сообщений: 34,716
Записей в блоге: 14
03.04.2021, 09:47
iSmokeJC, да, нехорошее условие.
0
Эксперт Python
8850 / 4501 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
03.04.2021, 09:58
Catstail, вроде должно получится -> [1,2,"","","","",6]
В задаче ТС при подряд идущих от 3-х и больше элементов.
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38177 / 21112 / 4307
Регистрация: 12.02.2012
Сообщений: 34,716
Записей в блоге: 14
03.04.2021, 10:04
Gdez, в этом и дело! Формулировка паскудная. Я понял так: нашли три одинаковых - меняем. У ТС про "большее" - ни слова...
0
 Аватар для 3C_273
42 / 29 / 14
Регистрация: 09.06.2018
Сообщений: 147
03.04.2021, 10:08
Находит элемент в котором есть подстрока состоящая из 3 символов и заменяет на пустую строку
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if __name__ == '__main__':
    arr = ['aaa', 'fdsf', '232', '223']
    for arr_i in range(len(arr)):
        mem = arr[arr_i][0]
        count = 1
        for i in range(1, len(arr[arr_i])):
            if arr[arr_i][i] == mem:
                count += 1
            else:
                count = 1
            if count == 3:
                arr[arr_i] = ''
                break
 
    print(arr)
Добавлено через 2 минуты
Цитата Сообщение от Gdez Посмотреть сообщение
В задаче ТС при подряд идущих от 3-х и больше элементов.
Он об этом не писал
0
712 / 351 / 120
Регистрация: 09.12.2020
Сообщений: 918
03.04.2021, 11:41  [ТС]
3C_273, Catstail, большое спасибо, это то, что мне было нужно. Извиняюсь за некорректную формулировку.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.04.2021, 11:41
Помогаю со студенческими работами здесь

Нахождение первого и второго максимальных чисел в Списке.
Задача. Нахождение первого и второго максимальных чисел в Списке. Алгоритм: • Находим и распечатываем первый максимум в одномерном...

Нахождение второго максимума в последовательности с сохранением его порядка в этой последовательности
Доброго времени суток! Возникла проблема с нахождением второго максимума и сохранением его порядка. Код: #include &lt;stdio.h&gt;...

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

Нахождение элемента в двусвязном списке
Суть в том, что у меня есть двусвязный список, в котором нужно выяснить есть ли в нём тот или иной элемент. #include &lt;iostream&gt; ...

Нахождение максимального элемента в списке
Есть список TListBox. В него добавляются числа (вводятся в edit1 и нажимается кнопка добавить). При нажатии на кнопку &quot;узнать&quot; в...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 и Box2D из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru