
Egor
17.11.2016
02:06:05
Вопрос не в тему. Если на github'e не проплатить то приватные репозитории не становятся же публичными, а просто в них нельзя уже писать?

Anton
17.11.2016
02:07:02
интересный вопрос ))

[Anonymous]
17.11.2016
02:07:17

Alex
17.11.2016
02:26:25

Google

Alex
17.11.2016
02:27:04
для приватных лучше уж Bitbucket или GitLab юзать, ийбагу

Egor
17.11.2016
04:16:30
Спросил
If you make a private repository public, it is visible to any user on GitHub and you're free to edit and work on the repository like normal.
However private repositories on your account are simply locked when you downgrade from a paid plan to the free one if you do not make them public.
When your account is locked, your private repositories cannot be accessed until paid status is resumed.
I hope that helps and let us know if you have any other questions.

Maxim
17.11.2016
07:09:48
хай всем! а кто работал с редисом?
есть такой код
def run(self):
for item in self.pubsub.listen():
self._process_event(item)
def _process_event(self, item):
print(item['channel'], ":", item['data'])
не пойму, почему печатается b'channel' : 2, а не просто channel : 2

Dmitriy
17.11.2016
07:12:12
type(item['channel']) -> 'bytes'
item['channel'].decode('utf-8') (кодировка может другая быть)

Maxim
17.11.2016
07:15:36
вот оно че
спасибо!

Roman
17.11.2016
07:20:55


Vladimir
17.11.2016
08:36:19
Ребзя, такой вопрос.
Пишу веб-сервис на Flask + юзаю Gunicorn в два воркера в связке с nginx, железо слабенькое (1 Гб, 1 ядро).
Нужно сделать кнопку на вебе, которая должна делать длительную операцию на бэке (от 20 секунд до нескольких минут). Сейчас через jquery дёргаю апишку свою, которая выполняет эту долгую операцию, как только завершается - перегружаю страницу и показываю результаты.
Вопрос - сколько надо пользователей одновременно дёргающих эту функцию чтобы положить серв?:) Если ответ - 2, тогда что можно предпринять, чтобы веб нормально работал при подобных вызовах нескольких пользователей одновременно? Класть задачки в celery и обрабатывать их по мере возможности?

Dmitry
17.11.2016
08:36:59
Зависит от тяжести операции же
Или перегружается страница у всех пользователей?
Не очень понятно

Google

Dmitry
17.11.2016
08:39:14
В любом случае решение тоже зависит от логики. Можно не давать никому дергать эту функцию, пока её дергает кто-то ещё; можно ставить их в очередь выполнения; можно подумать, а так ли она тебе нужна
Короче, подробностей))

Pavel
17.11.2016
08:39:56

Vladimir
17.11.2016
08:40:34
не давать дёргать - это стрёмно. сделал ограничение чтобы пользователь мог дёргать не чаще чем в 30 минут.

b0g3r
17.11.2016
08:40:43
ну ставь их в очередь

Dmitry
17.11.2016
08:40:59
Но ты понимаешь, что проблему ты ставишь так, как будто ищешь костыль, а это напрягает?)

Pavel
17.11.2016
08:42:13

Vladimir
17.11.2016
08:43:39

Pavel
17.11.2016
08:44:38
Или велосипед с очередями.

Filat
17.11.2016
08:45:25
А как можно заreturn'ить только 2 знака после запятой у float?

Vladimir
17.11.2016
08:46:01

b0g3r
17.11.2016
08:46:54

Filat
17.11.2016
08:47:26
Он работает с return?

b0g3r
17.11.2016
08:47:37
в смысле

Filat
17.11.2016
08:48:14
Типа return ({0.2f}.format(x))?

Pavel
17.11.2016
08:48:22

b0g3r
17.11.2016
08:48:39
а, я кажется неправильно понял задачу

Filat
17.11.2016
08:48:54
Ну мне на выходе надо 1.23

Google

b0g3r
17.11.2016
08:49:17
значени 1.23 или напечатать 1.23?
и округлять или просто отбросить?

Filat
17.11.2016
08:49:38
Точно, ест же округление
Спасибо)

b0g3r
17.11.2016
08:49:54
просто ты уверен что тебе нужно это?

Filat
17.11.2016
08:50:00

Pavel
17.11.2016
08:50:12

Filat
17.11.2016
08:50:25
))))

b0g3r
17.11.2016
08:50:36
ну так decimal в помосчь
я же правильно сейчас ругнулся, да?
https://docs.python.org/3/library/decimal.html может быть это то, что тебе нужно

Dmitry
17.11.2016
08:52:58

Filat
17.11.2016
08:53:19
Ну я думал, что формат работает только с принтами)

b0g3r
17.11.2016
08:53:27
format работает со строками
проблема return '{}'.format(x) в том, что он вернет строку, а не float
ну то есть это конечно не проблема, но, видимо, не то что ожидалось
ещё можно делать вот так
format(x, '0.2f')

Filat
17.11.2016
08:56:49
ValueError: Too many decimal digits in format string
Так, ладно

Google

Filat
17.11.2016
08:57:19
Помнится, можно было как-то делить, чтобы не было 100500 знаков после точки

b0g3r
17.11.2016
08:57:26
Decimal

Filat
17.11.2016
08:57:26
у меня сейчас просто /1.8

Admin
ERROR: S client not available

Filat
17.11.2016
08:57:31
окей)
low = dec.Decimal(low).quantize(1.00)
XD
В low -21.1111111111

b0g3r
17.11.2016
09:05:04
я про то, что может все вычисления перенести на Decimal, если нужна именно такая точность

Filat
17.11.2016
09:05:56
Да не нужна такая точность. Нужно -21.1 и все)

Jonathan ?
17.11.2016
09:06:04
Мне тут надо было рандомных чисел нагенерить. Написал код, но по-моему не очень элегантное решение получилось. Может быть кто-то лучше подскажет?
print(*[(int(''.join([choice(('0', '1')) for i in range(5)]), 2)) for i in range(10)])

Aragaer
17.11.2016
09:06:46
ээ

b0g3r
17.11.2016
09:06:55

Aragaer
17.11.2016
09:06:59
это была попытка нагенерить чисел из диапахона 0-31?

b0g3r
17.11.2016
09:07:02
может его вывести в том месте где нужен?)

Jonathan ?
17.11.2016
09:07:07
Ну да

b0g3r
17.11.2016
09:07:27
лол

Alex
17.11.2016
09:07:28
http://www.diveintopython3.net/
Вот эта последняя ? или дальше искать ?

b0g3r
17.11.2016
09:08:00
random.randrange(0, 32)

Google

Jonathan ?
17.11.2016
09:08:06
Ну так что думаете?

Aragaer
17.11.2016
09:08:11
32 только

b0g3r
17.11.2016
09:08:19
исправился

Aragaer
17.11.2016
09:08:21
или просто randrange(32)

Filat
17.11.2016
09:08:28
)))
Вот и у меня тот же случай!

Jonathan ?
17.11.2016
09:08:53
А если платят за количество кода?

b0g3r
17.11.2016
09:09:13
лол

Filat
17.11.2016
09:09:19
Тогда можно и самому рандомизатор написать
Зачем какие-то модули подключать?)

Артур
17.11.2016
09:10:30

Filat
17.11.2016
09:17:09
XD
аххаха