@ru_python

Страница 8298 из 9768
Aragaer
07.03.2019
05:56:45
Ну у меня куча совпадений в тексте, а надо только первое
ну так и бери только первое, в чем проблема?

регексп ([0-9]{1,3}%) матчит только первое вхождение

Vk
07.03.2019
05:59:22
Мне все отдает. т.е. самим регексом это не ораничить?

Tishka17
07.03.2019
05:59:36
А ты как берёшь?

Google
Vk
07.03.2019
06:00:04
Я не в питоне. Регексы учу прост

Tishka17
07.03.2019
06:01:49
А в чём?

Vk
07.03.2019
06:02:55
В онлайн хрене какой-то

Tishka17
07.03.2019
06:03:27
Ну тогда наверно в это херне и проблема.

Aragaer
07.03.2019
06:03:42
ну да

а, стоп

посмотри флажочки

Tishka17
07.03.2019
06:03:51
Она вообще, матч, серч или что делает?

Aragaer
07.03.2019
06:04:09
там помимо регекспа еще есть флаги, конкретно флажок global отвечает за то, хочешь ты взять одно вхождение или все

Vk
07.03.2019
06:04:34
Aragaer
07.03.2019
06:04:49
ну да, справа g стоит

сними флажок global и получишь только первое

Vk
07.03.2019
06:05:07
А флаги в регексе как ставить?

Google
Aragaer
07.03.2019
06:05:27
Global pattern flags g modifier: global. All matches (don't return after first match)

в регексе никак. Они ставятся при вызове регекса

Vk
07.03.2019
06:06:03
Беда... понял, спасибо

Aragaer
07.03.2019
06:06:10
в перле например /pattern/g

Alfred
07.03.2019
06:06:11
Добрый день! Делаю курсач по базам на python. Использую pyqt для доступа к базе. Хочу применить кэширование изменений, но не смог найти в документации как это вызвать. Есть ли возможность это сделать и как?

Aragaer
07.03.2019
06:06:16
по умолчанию этого флага нету

Vk
07.03.2019
06:06:53
самим регекс точно нельзя ограничить поиск первым результатом?

Aragaer
07.03.2019
06:08:21
ну ты можешь извратиться. Но не надо

Aragaer
07.03.2019
06:08:25
нет

^.*?(паттерн).*$

растягиваем паттерн на всю строку, захватываем ровно одно вхождение

Марк
07.03.2019
06:09:11
Я в целом

Tishka17
07.03.2019
06:10:07
\d{1,3}%(?=.*$)

Не

Можно через negative lookbehind ещё

Vk
07.03.2019
06:12:46
Aragaer
07.03.2019
06:13:19
стоп

забудь об этом и никогда так не делай

я этот пример показал только чтобы сказать, что это делается в целом

Google
Vk
07.03.2019
06:14:30
Почему?

А еще. Оно не пашет, если строк много?

Aragaer
07.03.2019
06:14:56
потому что надо использовать флаги. И по умолчанию флагов нет.

Если строк много, то надо ставить дополнительный флаг ... ээ single line вроде

Tishka17
07.03.2019
06:15:13
Vk
07.03.2019
06:15:29
Флаг есть
Забудьте про них ^_^

Tishka17
07.03.2019
06:15:47
Бед флагов никак

Aragaer
07.03.2019
06:15:52
мм.. не помню, какой из них включает чтобы ^ и $ матчились на внутренних ньюлайнах

Tishka17
07.03.2019
06:16:07
Без флагов ты не сможешь например . матчить перенос строки

Aragaer
07.03.2019
06:16:11
а какой из них включает чтобы . матчила ньюлайн

Vk
07.03.2019
06:16:15
Черт. Недопиленный регекс

Aragaer
07.03.2019
06:16:32
да, single line включает "точка матчит ньюлайн"

Aragaer
07.03.2019
06:16:46
а multi line включает "анкоры матчат ньюлайны"

Alfred
07.03.2019
06:18:31
А что конкретно надо?
кэширование изменений

Google
Tishka17
07.03.2019
06:18:50
да
Ого. Первый раз вижу живого человека, кто его юзает

И зачем тебе понадобился кэш

gl3b
07.03.2019
06:19:44
есть DataFrame с несколькими columns, в одной из них числа имеют запятую вместо точек => определяет данные в ней как str. подскажите, пжл, как заменить запятые но точки только в одном столбце из всего датафрейма?

Tishka17
07.03.2019
06:19:57
И да, кэшируют не изменения, а наоборот данные, которые редко меняются

Alfred
07.03.2019
06:20:01
И зачем тебе понадобился кэш
в курсовой работе нужно разобрать эту часть.

Tishka17
07.03.2019
06:20:09
Марк
07.03.2019
06:21:53
Кстати, не прошло и пары лет, как я, наконец, понял, нахера нужен repr. Смотрел-смотрел я на него, смотрел-сморел - и чушь какая-то мутная, стринга штоле мало? А на днях отлаживал парсер - и хуякс! Да тут же как раз он и нужен!!! Люблю такие моменты, когда долго не отстреливаешь, а потом "да это же очевидно!!!"

Admin
ERROR: S client not available

Alfred
07.03.2019
06:22:33
Shieldy
07.03.2019
06:22:55
Добро пожаловать, @rolexhero! Не забудь ознакомиться с правилами чата: https://t.me/ru_python/802295!

Марк
07.03.2019
06:23:02
Парсинг регексами?
repr, а не регексп

Tishka17
07.03.2019
06:23:54
Vladislav
07.03.2019
06:24:09
Лучшая музыка и путешествия

@travelbyrolenko

Tishka17
07.03.2019
06:24:24
repr, а не регексп
Расскажи подробнее, почему repr, а str не хватило?

Антон
07.03.2019
06:26:53
поясните дураку, pyqt платный или нет? Насколько я знаю qt платный для си

Google
Антон
07.03.2019
06:27:42
Alfred
07.03.2019
06:28:11
Давай формулировку
Есть подобная работа, но использует zeoslib. в Zquery есть свойство 'CachedUpdates'. Как я понял из работы это что вроде кэширования изменений. Мне нужно подобную работу перенести c Delphi + zeoslib на python + pyqt.

Tishka17
07.03.2019
06:28:43
поясните дураку, pyqt платный или нет? Насколько я знаю qt платный для си
1. Qt для C++, не для си 2. Если ты сам Qt не меняешь, он бесплатный. Если меняешь и отдаешь сорцы - тоже бесплатно. 3. PyQt использует Qt 4. PyQt использует GPL лицензию в бесплатной версии. Ты должен открыть сорцы своей проги. Или купить платную

Tishka17
07.03.2019
06:29:47
большое спасибо
и до кучи: Есть Qt for Python (он же PySide2), он LGPL, то есть как сам Qt и от атворов Qt

Марк
07.03.2019
06:29:53
Расскажи подробнее, почему repr, а str не хватило?
Парсер флоу с другого демона несколько месяцев назад выдал одну ошибку, мол, ключа нет. Я порылся по исходникам - все ключи ВРОДЕ БЫ должны быть. Ну и каждый раз, когда она, ошибка вываливалась, смотрел на нее и не знал, что делать. А на днях в чатике другом один крутой чувак глянул на ошибку, посмотрел исходники - и сказал, что такого не может быть, возможно парсер глючит. А я даже в мыслях такого не предполагал(там миллионы валидно обработанных событий). Начал разбираться. Задампил нормальное трафло и "невалидное". Выяснилось, что залетает CRLF в каких-то редчайших случаях, разбивая флоу(а парсер у меня ориентировался по пустым строкам). И тут то мне repr и пригодился. А еще я доволен собой вплане, что не стал закрывать багу через уксепшны, хотя она настолько редкая, что можно было бы и забить. И в итоге оказалось, что ситуация гораздо хуже(ненадежный алгоритм парсинга)

Tishka17
07.03.2019
06:30:32
Парсер флоу с другого демона несколько месяцев назад выдал одну ошибку, мол, ключа нет. Я порылся по исходникам - все ключи ВРОДЕ БЫ должны быть. Ну и каждый раз, когда она, ошибка вываливалась, смотрел на нее и не знал, что делать. А на днях в чатике другом один крутой чувак глянул на ошибку, посмотрел исходники - и сказал, что такого не может быть, возможно парсер глючит. А я даже в мыслях такого не предполагал(там миллионы валидно обработанных событий). Начал разбираться. Задампил нормальное трафло и "невалидное". Выяснилось, что залетает CRLF в каких-то редчайших случаях, разбивая флоу(а парсер у меня ориентировался по пустым строкам). И тут то мне repr и пригодился. А еще я доволен собой вплане, что не стал закрывать багу через уксепшны, хотя она настолько редкая, что можно было бы и забить. И в итоге оказалось, что ситуация гораздо хуже(ненадежный алгоритм парсинга)
эм, а почему именно repr, а не str?

Антон
07.03.2019
06:30:57
и до кучи: Есть Qt for Python (он же PySide2), он LGPL, то есть как сам Qt и от атворов Qt
как все сложно. Ещё вопрос глупый и я умолкаю. приложение pyqt же можно завернуть в ехе с самим питоном, чтобы если у юзнра на машине его нет, устанавливать было не нужно?

Марк
07.03.2019
06:31:06
эм, а почему именно repr, а не str?
Потому что не показывает спецсимволы

Марк
07.03.2019
06:31:48
Репр отображает как есть, а стр - шоб приятней было.

Tishka17
07.03.2019
06:31:58
неа

оби пишутся разработчиком как хочется

но да, str чтоб приятнее, но в целом тоже на усмотрение разработчика

Марк
07.03.2019
06:32:31
Ты не понял

я за str и repr без магических

Ток не занудствуйте. Суть я передал выше.

Tishka17
07.03.2019
06:33:19
ты для своего класса делал сейчас __repr__ или вызывал repr для чужого?

Страница 8298 из 9768