@ru_python

Страница 9214 из 9768
Егор
01.06.2019
21:48:35
но хочу добавить что просто как бы экземпляр класса я пробовал юзать, потипу есть класс DB и я такой делаю db = DB() и так не прокатило

в прочем атрибутов там с гулькин нос в самом классе, ибо я по ООП ваще тугой

Google
Егор
01.06.2019
21:51:37
попробую абстрагироваться до изи ситуации. есть класс DB, внутри него допустим есть print('connected'). Я хочу чтобы при вызове этого класса 2 раза, у меня было два принта с connected

на данный момент как бы принт будет один, даже если 100500 раз этот класс импортировать, экземпляры создавать, и тд

оттого и ругань у гевента ,мол вася нехуй создавать коннект в одном треде, и раздавать на 3 других

по сути я хочу чтобы с каждый тредом кннект создавался индивидуально, но я не хочу писать несколько раз параметры подключения к бд, я хочу иметь класс db и нескольо раз его дергать

надеюсь ситуацию описал внятно

?
01.06.2019
21:54:34
tekst

?
01.06.2019
21:54:37
да, чому бы и нет
Мб в init надо?

?
01.06.2019
21:54:42
tekst

?
01.06.2019
21:54:47
Бля форматирование

Егор
01.06.2019
21:54:49
Мб в init надо?
попробую

как я уже говорил, с классами я довольно туговат

Google
Егор
01.06.2019
21:55:13
то есть в init ого будет каждый раз переинициилизироваться?

?
01.06.2019
21:55:50
init вызывается при создании экземпляра класса

Егор
01.06.2019
21:56:02
боже храни ООП

спс

щас попробую

я кстати полагал что init нужен только если есть некие параметры которые нужно в класс передавать при создании экземпляра

Егор
01.06.2019
22:01:22
спасибо!

да, кажись помогло



такая вот штука получилась

работает

кстати данную конструкцию можно как-то более ёмко написать?

может быть у самого while есть какие-то методы ограничивающие количество итераций?

Aragaer
01.06.2019
22:24:45
for count in range(5)

впрочем count не нужен, поэтому for _ in range(5)

?
01.06.2019
22:27:44
for _ in range (5): blah blah else: exit(5)

Егор
01.06.2019
22:28:11
спс

Google
Егор
01.06.2019
22:28:16
так гораздо красивее

?
01.06.2019
22:29:08
так гораздо красивее
Если че else выполняется если не выполнился break в лупе

Глеб
01.06.2019
22:41:40
Артем
01.06.2019
22:47:47


Пытаюсь подключить бд из access, пишу: conn = pyodbc.connect(r'Driver={MS Access Database (*.mdb, *.accdb)}; DBQ=D:\dip.accdb;') cursor = conn.cursor() Выдаёт ошибку

Отбой, не тот драйвер писал)

Егор
01.06.2019
23:03:40
хм

а если я хочу чтобы при вызове экземпляра класса происходило то что происходит, но при этом можно было стучаться в этот класс за параметрами подключения к бд без инициализации (то есть не создавая экземпляр класса)?

из инита ведь не получится передать

запихнуть параметры подключения в функцию и дергать и при инициализации и просто при вызове из класса?

?? Eugene
01.06.2019
23:08:35
Лучше вынеси этот жуткий цикл в отдельный метод и вызывай его в ините

Егор
01.06.2019
23:09:25
попробую

Егор
01.06.2019
23:12:20


вот так получилось вроде

это на самом деле мой второй опыт в конструировании классов, я щас как нео который говорит себе "я знаю кунгфу" :)

так, только по return забыл

koder
01.06.2019
23:17:13
И else лишний, и count бессмысленный и exit зря и это еще далеко не все :) ну да не суть

Егор
01.06.2019
23:19:19
И else лишний, и count бессмысленный и exit зря и это еще далеко не все :) ну да не суть
я пытаюсь указать на то чтобы он 5 раз пытался установить коннект (но это вроде очевидно), может быть это можно как-то красивее сделать

в рамках класса сделать, я имею в виду

koder
01.06.2019
23:20:18
Все понятно, что ты пытаешься сделать, но это не отменяет того, что я написал

Google
Admin
ERROR: S client not available

Егор
01.06.2019
23:28:56
а как это сделать лучше?

буду признателен, если покажете

на счет exit в целом согласен, ибо он пока что как затычка, на случай если соединение так и не поднялось

так, а count я походу забыл убрать

мне уже ранее подсказали как обойтись тут без while, а count я проглядел:)

koder
01.06.2019
23:35:24
* log.info("error.. -> log.exception/log.error * Лучше на последнем цикле делать raise в блоке except, что бы снаружи можно было видеть исключение, которое приводит у проблеме * Вынеси успешный log.info из цикла, поставь вместо него break (если сделаешь пред пункт) * Time.sleep вынеси из except * Exit не используй в библиотеках/классах. Он для (почти) безусловного завершения программы

Егор
01.06.2019
23:37:05
спасибо) сейчас прихорошу

Artemij
02.06.2019
04:01:33
Почему sublime просто перестал сохранять, пишет "unable to save"? Вчера вечером еще все работало

Artemij
02.06.2019
05:11:29
права проверь
Это как? У меня линукс?

Иван Пичугин
02.06.2019
05:12:27
у тебя какой то учебный проект?

Artemij
02.06.2019
05:18:03
У меня личный

Иван Пичугин
02.06.2019
05:19:33
sudo chmod 777. -R в папке проекта сделай. оно все для всех разрешит

только убедись, что ты там где надо это делаешь

посмотреть права ls - lA

Alex
02.06.2019
05:34:01
Почему sublime просто перестал сохранять, пишет "unable to save"? Вчера вечером еще все работало
А подробности? При каких обстоятельствах «перестал сохранять»? Есть описание ошибки детальное?

В противном случае выбросить это поделие и взять нормальный редактор.

Google
Artemij
02.06.2019
05:41:52
А подробности? При каких обстоятельствах «перестал сохранять»? Есть описание ошибки детальное?
Ошибка: Unable to save /Tetris.py Error: Permission denied Вчера все работало, ничего не трогал, просто взял и перестал

Alex
02.06.2019
05:42:39
Artemij
02.06.2019
05:43:11
Эмм а зачем ты файл в корень файловой системы писать пытаешься?
Да хз, я просто стрл + ы тыкаю, так всегда робило?

Alex
02.06.2019
05:43:47
Да хз, я просто стрл + ы тыкаю, так всегда робило?
Укажи путь сохранения в домашний каталог

И пройди в чат новичков

Artemij
02.06.2019
05:45:28
И пройди в чат новичков
В дом сохраняет?

И пройди в чат новичков
А почему раньше то робило?

Благодарю?

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