|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
||||||
Pattern matching03.09.2022, 17:20. Показов 882. Ответов 17
Метки нет (Все метки)
здравствуйте, как известно:
С релизом python 3.10 появился pattern matching, собственно и являющийся главной особенностью этого релиза. Возможно кто-то уже встречал его упрощенную версию - switch-case - в других языках программирование, но pattern matching это другое, это намного круче и вот я крутил пример:
0
|
||||||
| 03.09.2022, 17:20 | |
|
Ответы с готовыми решениями:
17
ERROR: No matching distribution found for PyQt4 TypeError: cannot use a string pattern on a bytes-like object matching query does not exist |
|
2431 / 1474 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
|
||||||
| 03.09.2022, 17:39 | ||||||
|
Сопоставляет, наверно, верное будет слово.
[1, 2, 3, 4, 5] и cases. В списке 5 элементов, поэтому не будет ничего выполнено. В общем типа распаковывает и количество элементов должно совпадать с каким-то вариантом, тогда обработает, сопоставит значения переменным.
Соответствие структуре шаблона, конструкция match/case. https://docs-python.ru/tutoria... atch-case/
1
|
||||||
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
||||||
| 03.09.2022, 17:39 [ТС] | ||||||
|
тогда для понимания лучше так:
0
|
||||||
|
2431 / 1474 / 633
Регистрация: 01.11.2021
Сообщений: 2,269
|
|||||||||||||
| 03.09.2022, 17:46 | |||||||||||||
|
Соответствие шаблону базовой структуры.
Хотя оператор соответствия match может использоваться как простой оператор if/else, как показано выше, он действительно эффективен, когда нужно сопоставить структурированные данные:
Добавлено через 1 минуту Добавлено через 4 минуты
1
|
|||||||||||||
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
||||||
| 21.10.2023, 06:12 [ТС] | ||||||
|
здравствуйте, вынужден вернуться к топику.........
0
|
||||||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
|||||||
| 21.10.2023, 07:49 | |||||||
0
|
|||||||
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
|
| 21.10.2023, 07:50 [ТС] | |
|
0
|
|
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
|||||||
| 21.10.2023, 08:42 | |||||||
|
Ну, если очень хочется именно через match-case, то можно так:
0
|
|||||||
|
Автоматизируй это!
|
|||||||
| 21.10.2023, 08:49 | |||||||
|
особо надежды не тешу что станешь документацию читать или в примере разбираться но
0
|
|||||||
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
|
| 21.10.2023, 08:58 [ТС] | |
|
0
|
|
|
Автоматизируй это!
|
|
| 21.10.2023, 09:00 | |
|
Ципихович Эндрю, это переменная, добро пожаловать на курс питон для начинающих. Матчинг ищет паттерн в том что ему дали и если совпадает то присваивает значения переменным
Ты объясни все таки почему не стал доку читать или книгу по паттерн матчингу и разбираться ?
0
|
|
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
|
| 21.10.2023, 09:06 [ТС] | |
|
а вообще задача стоит так, ищем нечто, оно в списке, его размер порядка 887933 шт.
все эти 887933 шт. нужно искать в тексте, как быстрее искать 1 когда этот текст будет в массиве поабзацно и их количество 27073 2 в тексте, который будет целиком разделён абзацами какой-то вариант поиска в пару минут вложится? какой вариант лучше?
0
|
|
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
|||||||
| 21.10.2023, 09:15 [ТС] | |||||||
Количество замен в текстовом файле: 888688 doc файл это список, его размер: 27073 Количество замен в текстовом файле, которые имеются в doc файле: 3 Начато 2023-10-21 10:45:15.239854 Окончено 2023-10-21 11:08:56.510010 самое обидное, что найденного должно быть тьма, а не три штуки сейчас второй вариант опробую
0
|
|||||||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
||||||||
| 21.10.2023, 09:44 | ||||||||
|
А вообще, скажем в powershell, для этого есть спец. командлет:
Добавлено через 6 минут Ну, два списка, ну нашли в первом совпадения с элементами со второго списка... а менять-то на что найденное? Задача какова?
0
|
||||||||
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
|||
| 21.10.2023, 10:12 [ТС] | |||
|
заменять не говорил нужно искать и вывести найденное Добавлено через 25 минут так как то, что ищем перед поиском отсортировано по убыванию длины данных от большего к меньшему то наверное лучше искать НЕ в массиве а искать в сплошном тексте, и с каждым найденным искомым удалять его после его удаления сам тест уменьшается....... будет прогресс?
0
|
|||
|
Любознательный
7404 / 2254 / 360
Регистрация: 10.03.2016
Сообщений: 5,214
|
||||
| 21.10.2023, 13:00 | ||||
0
|
||||
|
1711 / 578 / 76
Регистрация: 10.04.2009
Сообщений: 9,317
|
||||||
| 21.10.2023, 14:19 [ТС] | ||||||
|
YuS_2, насколько мне известно in это самый быстрый поиск, мой код:
Начато 2023-10-21 14:23:40.368835 Окончено 2023-10-21 15:13:56.505702 в тексте doc_text, который равен тексту из 27073 абзацев из возможных кандидатов на замену, из vFindText, он равен 903512 нашёл список из 31043 возможных кандидатов на замену, вот и нужен прогресс, более быстрый поиск, на вход подаётся список и в моём случае текст-в представленном коде, но можно подать вместо текста список, на выходе нужен список из возможных кандидатов на замену
0
|
||||||
| 21.10.2023, 14:19 | |
|
Помогаю со студенческими работами здесь
18
Design Pattern - Strategy
ERROR: No matching distribution found for torch
LANGUAGE_CODE "en-us" must have a matching entry in LANGUAGES Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|