@ru_python

Страница 9040 из 9768
Andrey
16.05.2019
05:33:45
x = 4 list1 = [1,2,3,4] list2 = [6,7,8,9] lists = list1 + list2 print(lists) if x in lists: print("in list") else: print("not in list")

МишанЯ
16.05.2019
05:33:50
Это уже не под циклом for, верно?

Andrey
16.05.2019
05:34:03
всё выполняется один раз

зачем нужен for ? какое он имеет отношение к проблеме?

Google
T.
16.05.2019
05:34:25
всё выполняется один раз
я так понял ему при нахождении нужно будет в топ списке где элемент что-то с ним сделать

SetazeR
16.05.2019
05:34:35
for list in lists: if a in list: sucess return failed return
это пишется короче if any(a in list for list in lists): success else: failed

T.
16.05.2019
05:34:39
МишанЯ
16.05.2019
05:34:40
Andrey
16.05.2019
05:35:04
Сптски остаются, не надо в один их.
со списками ничего и не происходит.

T.
16.05.2019
05:35:15
это пишется короче if any(a in list for list in lists): success else: failed
точно, генераторы же, говорю чувствую что надо правильнее ?

МишанЯ
16.05.2019
05:35:22
это пишется короче if any(a in list for list in lists): success else: failed
Боюсь потом я забуду что это и не разберусь)

SetazeR
16.05.2019
05:35:34
МишанЯ
16.05.2019
05:36:07
for list in lists: if a in list: sucess return failed return
Думаю стоит вот это попробовать. И для меня нагляднее и понятнее. Итераторы пока путуются у меня. Всем спасибо большое, будем пробывать вечером.

Google
Tishka17
16.05.2019
05:42:10
Хотя если в функции, с ретурнами ок

T.
16.05.2019
05:42:40
не совсем понимаю как будет код работать, ему нужно проверить один раз вхождение во все списке и где найдется элемент его изменить

МишанЯ
16.05.2019
05:42:47
Хотя если в функции, с ретурнами ок
Хм, проскочило мимо внимания

T.
16.05.2019
05:42:57
а в твоем когда он же будет выполнять else каждый раз?

или else можно отдельно ставить

МишанЯ
16.05.2019
05:43:47
Ой, а у for может быть else??

Tishka17
16.05.2019
05:43:54
Ага

Выполняется когда не было break

МишанЯ
16.05.2019
05:44:16
Узнаю многое...?

Выполняется когда не было break
В случае с функцией return то есть.

Tishka17
16.05.2019
05:45:24
Ну да

Но иногда удобно. Если что-то ещё надо после цикла сделать и ретурн не подходит

МишанЯ
16.05.2019
05:45:53
Кстати, выход из функции можно же просто ретурн, не возвращая ничего?

Tishka17
16.05.2019
05:45:56
Но вообще ретурн лучше, да

МишанЯ
16.05.2019
05:46:49
Но вообще ретурн лучше, да
Так можно же воткнуть перед ретурн действие и все

Tishka17
16.05.2019
05:46:57
И я говорю, мой вариант из-за неожиданного else у цикла не самый понятный, но иногда удобно

МишанЯ
16.05.2019
05:48:31
Теперь главное чтобы на потоке не сказалось. Функция в отдельном потоке запускается. Если функцию вырубим return, поток же должен тоже завершиться, верно понимаю?)

Google
МишанЯ
16.05.2019
05:49:16
Я попробую и те и те, взависимости от возможного дальнейшего кода в функции

МишанЯ
16.05.2019
05:51:45
Ну что ж, будем быдлокодить далее?

?Kolay
16.05.2019
05:57:28


Каждое утро, одно и тоже

?? Eugene
16.05.2019
06:00:03
обычное дело для телеги

Гийденко
16.05.2019
06:08:09
⭐️ Приветы. Вопрос про Python3. Пишу приложение на PySide2/PyQt5. Ранее присал на 2м и было норм, но на 3м при появлении многих ошибок связанных с Qt питон просто крашится без трейсбеков и каких либо сообщений что где случилось. ВОпрос в том как перехватить ошибку чтобы узнать что где сломалось? Надоело методом тыка искать. Я думаю какойто отладчик должен быть или както перехватить хук ошибки и сдамбить в файл. В общем какойто способ перехвата сообщения нужен. Дебагеры, типа pdb, в которых построчно выполнять код в поисках места падения не подходят, надо просто перехватить сообщение во время краша.

Tishka17
16.05.2019
06:10:54
Смотря как крашится. Если это сегфолт, никакой питоновский трейс не увидишь

Ты уверен, что крашится?

Можешь запустить из консоли и когда закроется exit код посмотреть?

Есть вероятность, что просто окно закрывается, например

Vasiliy
16.05.2019
06:12:39
?

Гийденко
16.05.2019
06:12:44
а есл иошибка запускается когда использую pythonw

без консолей

Tishka17
16.05.2019
06:13:39
Только?

Гийденко
16.05.2019
06:13:54
ну в первый раз была причина того что sys.stdout в таком случае крашил. я это я поправил и теперь другие ошибки вываливаются

Tishka17
16.05.2019
06:14:01
Вообще, логи ведёшь?

Гийденко
16.05.2019
06:14:03
в частности в Qt ключит один класс когда создаешь инстанс

логи да но в этих местах нифига не срабатывает лог

он прост окрашит

Google
Гийденко
16.05.2019
06:14:47
ну вот, создаю инстанс и пиндык. краш без намека на то что случилось

ща

Admin
ERROR: S client not available

Гийденко
16.05.2019
06:15:47
https://bugreports.qt.io/browse/PYSIDE-922?focusedCommentId=445590&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel

вот тут эта проблема описана

но совет там предложенный не помог

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

в общем я не за советом как это делается обычно, я спрашиваю может кто тоже искал такой способ дебага через внешние обертки или спец модули

Tishka17
16.05.2019
06:18:36
Ух

Ну это сегфолт, да. Брать gdb и анализировать core файл

Гийденко
16.05.2019
06:19:16
самое похожее что видел это скачать исходники питона и компилить в дебаг режиме, ну и через компилятор дебажить)

Гийденко
16.05.2019
06:19:55
Не питона. Pyside2
ну там был разговор в целом про питон. это уже мой частный случай с qt

ладно, спасиб. я попробовал)

Tishka17
16.05.2019
06:20:57
Если баг в Qt, увы

Но трюк с gdb никто не отменял

Гийденко
16.05.2019
06:21:28
нет, баг может быть в моем коде, например написал conenct вместо connect

Tishka17
16.05.2019
06:21:55
А. Ну это должно партия наверно в мейне ловиться и писаться

Google
Гийденко
16.05.2019
06:22:00
Но трюк с gdb никто не отменял
а какой трюк? пример есть?

А. Ну это должно партия наверно в мейне ловиться и писаться
когда такая ошибка то может try поможет, это везде их натыкать

Tishka17
16.05.2019
06:23:00
а какой трюк? пример есть?
Ну если у тебя сишная прога падает с сегфолтом, можно включить запись core-файла (по сути ламп памяти). И потом через gdb посмотреть трейс

Гийденко
16.05.2019
06:23:31
а как это загуглить?

Alph
16.05.2019
06:24:43
pyqt5 приложение зависает , если внутри запускается цикл while , получается мне нужно этот цикл обернуть в QThreating ?

Alph
16.05.2019
06:25:15
или весь класс , в котором этот цикл , обернуть ?

Гийденко
16.05.2019
06:26:10
я обычн делаю класс который всё фигачит и через сигналы возвращает результат. ЧТо в него закидывать аэто уже зависит от твоей архитектуры

Гийденко
16.05.2019
06:27:26
а оперции не io? асинк не поможет?

Tishka17
16.05.2019
06:27:33
а как это загуглить?
https://jvns.ca/blog/2018/04/28/debugging-a-segfault-on-linux/

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