@ru_python

Страница 1767 из 9768
keystr0ke
12.11.2016
17:21:20
Stanislav
12.11.2016
17:22:09
class ContextManager: по PEP, правильно будет class ContextManager(object):

Aragaer
12.11.2016
17:22:43
питон2, поэтому вместо range надо xrange

хотя не суть

Google
Pavel
12.11.2016
17:23:01
docstring для лохов. к delete_file (L43) хочется какое-нибудь значение по-умолчанию

Stanislav
12.11.2016
17:23:07
def __init__(self, filename=None, delete_file=True, lock=None, semaphore=None, manager=None): self.swap_filename = (filename if filename else rand_string()) # for sync multi- processing/threading freeze_support() на кой черт в инит вставлять функцию которая не относится к класу?

keystr0ke
12.11.2016
17:23:09
строка 206 и далее - оно точно должно выполняться дальше в контексте открытого файла?
да, если закрыть, то список ключей умирает, заново создавать - много памяти жрать будет

Aragaer
12.11.2016
17:23:34
не умирает, ты ж его в переменную сохранил, нет?

Stanislav
12.11.2016
17:23:56
и вообще в инит не желательно вызывать функции

Aragaer
12.11.2016
17:24:13
а

а откуда метод keys у контекст менеджера ваще?

keystr0ke
12.11.2016
17:26:01
а откуда метод keys у контекст менеджера ваще?
он возвращает объект же, который вернет shelve.open()

Aragaer
12.11.2016
17:26:09
да, тут есть немного беда

Artem
12.11.2016
17:26:26
def values(self): values = list() with self.cm as file: values = list(file.values()) return values

Artem
12.11.2016
17:26:33
зачем здесь почти весь код?

включая list(...)

Google
Aragaer
12.11.2016
17:26:42
cm = ContextManager(бла-бла) cm.file_instance.keys() - упс

оно работает только внутри контекста, поэтому доступа к полю file_instance быть не должно

keystr0ke
12.11.2016
17:27:25
включая list(...)
создаю новый объект, иначе после закрытия к нему нельзя обращаться

Aragaer
12.11.2016
17:28:10
я бы предложил сделать file_instance явно "приватным" - _file_instance

и на __exit__ туда вписывать None

а кстати, как питон реагирует на повторные входы в один и тот же контекст?

Aragaer
12.11.2016
17:29:08
тут может быть беда

with self.cm as file1: with self.cm as file2: something() oops()

keystr0ke
12.11.2016
17:29:52
а кстати, как питон реагирует на повторные входы в один и тот же контекст?
у меня ведь блокировки тут с локом стоят, он реагирует нормально, но если кто-то работает там из другого процесса/потока - ждет

Aragaer
12.11.2016
17:30:39
лок реентрабельный - то есть текущий поток может туда перезайти

Александр
12.11.2016
17:30:42
на каждый чих открывать файл - так себе по скорости будет

keystr0ke
12.11.2016
17:31:09
Александр
12.11.2016
17:31:20
разве что так

keystr0ke
12.11.2016
17:31:53
лок реентрабельный - то есть текущий поток может туда перезайти
ну да, а что ты предлагаешь тут сделать? не пойму

Aragaer
12.11.2016
17:36:15
а я не знаю. Я про то, что может возникнуть проблема

счетчик например добавить - открывать надо на первом входе, закрывать на последнем выходе

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

Google
keystr0ke
12.11.2016
17:38:52
счетчик можно, да, тож об этом подумал, но как-то немного коряво выглядит это

Aragaer
12.11.2016
17:40:29
технически надо каждый раз новый инстанс создавать, но запоминать все предыдущие. То есть иметь стек инстансов

keystr0ke
12.11.2016
17:53:50
технически надо каждый раз новый инстанс создавать, но запоминать все предыдущие. То есть иметь стек инстансов
сделал с счетчиком, вроде бы получилось адекватно, а новый объект создавать дорого же получится

Aragaer
12.11.2016
18:02:02
не, примерно так

в __enter__ instances.append(shelve.open(self.filename)) return instances[-1]

в __exit__ close(instances[-1])

и там не помню оператор удаления последнего элемента списка

да, pop

close(instances.pop())

Mike
12.11.2016
19:14:16
Кто живой?

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

Nikolay
12.11.2016
19:14:32
?

Mike
12.11.2016
19:15:53
Есть роутер с telnet и root. 120 МБ ОЗУ (свободно 30), ядро линупса 2.6.*, бизибокс 1.01 и очень малое количество команд. Как сюда поставить питон?

A
12.11.2016
19:54:59
привет всем

Mike
12.11.2016
20:08:32
Rustem
12.11.2016
21:03:38
ребят, что лучше использовать heroku или digitalocean? Или есть еще хорошая альтернатива?

прием, есть тут кто?

Egor
12.11.2016
21:07:59
Для чего нужно?

Есть еще vscale

Google
Rustem
12.11.2016
21:13:56
та просто сайтик хочу написать из-за скуки(отсутствия работы). Сайт типо бложик/новостной. На digitalocean в том году разворачивал по ими описанному руководству. Но там было много гемора(так как делал в первые). На heroku разворачивал летом работу с универа(простой интернет магазин). Но там появлялся косяк после добавления товара в корзину. Добавлял, минут ~5 все хорошо, а потом картинка товара просто пропадала. Так и не разобрался в чем проблема. И вот решил поинтересоваться чем вообще лучше пользоваться.

Pavel
12.11.2016
21:20:19
для начала лучше какой-нибудь VPS простенький чтобы понять что устроено, кмк.

без всех этих облачных хостингов и прочей магии

Rustem
12.11.2016
21:21:49
тогда что к примеру использовать

?

arisu
12.11.2016
21:22:07
digitalocean

самый обычный vps

Admin
ERROR: S client not available

Artem
12.11.2016
22:23:06
не понимаю какие проблемы могут быть с разворачиванием проектов в эпоху контейнеров

Pavel
12.11.2016
22:38:46
Было бы неплохо понимать как это все устроено без контейнеров. А контейнеры добавляют дополнительный стой абстракции

Nikolay
12.11.2016
22:39:03
отстой?

Pavel
12.11.2016
22:39:08
Начинающего это только запутает

Rustem
12.11.2016
23:15:46
Вы имеете ввиду docker?

Имеет ли смысл его использовать, скажем для блога?

Mike
12.11.2016
23:17:33
Не имеет

Rustem
12.11.2016
23:26:49
Поставь WordPress и не парься
Та мне бы что-нибудь с бэком на питоне. Просто изначальная идея как блог/новостник, а там во что нибудь другое перерости. Думал пробовать стек django+bootstrap+postgresql. Это все в битбакет и развернуть на digitalocean(как выше посоветовали).

Stanislav
12.11.2016
23:36:16
ты не думай а делай

имхо за тебя думать никто не будет

arisu
12.11.2016
23:39:58
flaskr

Google
Rocket
13.11.2016
00:20:10
Alexey
13.11.2016
01:46:59
Rocket
13.11.2016
01:52:53
Почему?
Достаточно уже того, что они заблочили исходящие коннекты до телеграма.

Alexey
13.11.2016
01:53:32
о.О

Pavel
13.11.2016
04:06:24
До фига статей на тему "деплоим в докер", но я не видел статей (или мне не попадались) на тему "разработка в докере". Где лежит код? Надо ли перезапускать (или даже пересобирать) контейнер при каждом изменении кода? Есть ли одна статья про жизненый цикл проекта (разработка-деплой-обновление) в контейнерах?

Владимир
13.11.2016
04:39:53
До фига статей на тему "деплоим в докер", но я не видел статей (или мне не попадались) на тему "разработка в докере". Где лежит код? Надо ли перезапускать (или даже пересобирать) контейнер при каждом изменении кода? Есть ли одна статья про жизненый цикл проекта (разработка-деплой-обновление) в контейнерах?
Dockerfile, docker-compose.yml и прочие папки/файлы лежат вместе с проектом и коммитятся в гит. Пересобирать/перезапускать контейнер, если ты меняешь что-то в исходниках не нужно. Статей не встречал, но есть неплохой пример у кукикаттера: https://github.com/pydanny/cookiecutter-django

Лёша
13.11.2016
06:03:33
Привет, ребята. Посоветуйте хорошую книгу по jango, в материальном виде желательно

Petr
13.11.2016
06:32:06
Привет, есть многопоточное по, и к нему нужно api прикрутить, чтобы размер очереди получать GET запросом как это можно реализовать?

Eldar
13.11.2016
06:39:25
Привет, ребята. Посоветуйте хорошую книгу по jango, в материальном виде желательно
для начала надо разобраться с правильным написанием названия

Petr
13.11.2016
06:42:26
нет просто не знаю как это реализовать, поднять мини веб сервис который бы состояние отдавал

Pavel
13.11.2016
06:44:29
https://docs.python.org/3/library/http.server.html
если не тянуть внешние зависимости (типа bottle.py)

SimpleHTTPServer еще вариант
Во втором Питоне, ага

Artem
13.11.2016
06:48:39
До фига статей на тему "деплоим в докер", но я не видел статей (или мне не попадались) на тему "разработка в докере". Где лежит код? Надо ли перезапускать (или даже пересобирать) контейнер при каждом изменении кода? Есть ли одна статья про жизненый цикл проекта (разработка-деплой-обновление) в контейнерах?
если речь про веб, для разработки можно добавить docker-compose.override.yml, в котором указать что хочешь примонтировать volume с папкой проекта, а также поменять команду на запуск дебаг-сервера с autoreaload. а так контейнеры immutable считаются, жизненный цикл: build – (push – pull) – run

13.11.2016
06:50:59
Есть ли бот которые ищеть кино в телеграме

И скинуть

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