Michael
13.07.2017
07:44:55
И запихивать логику обработки в гетер сеттер както некашерно
Да
Пару мин
@jetbootsmaker 'нужно обеспечить разную валидацию полей на запись и чтение для модели A'
А вот это примером можшь небольшим раскатать? может я чтото не догнал ?
Google
Aleksander
13.07.2017
07:59:09
class A:
ой
ща в гисте сделаю
https://gist.github.com/alifanov/7cc8f8949ed44a11948f8252db620678
Michael
13.07.2017
08:11:09
Эммм
a2.save() # raise
только я считаю что это не нормально учитывая что передается вполне валидные значения для A?
На мой взгляд это п...цово немного...
Александр
13.07.2017
08:26:19
Привет, а есть какой-то best practice, как делать несколько from import?
Например, есть 10 имен
from some import one,two,..., \
ten
норм ли оставить так, или лучше несколько from statements написать
b0g3r
13.07.2017
08:33:33
https://www.python.org/dev/peps/pep-0328
Этот пеп предлагает группировать в скобки в одном from statements
Andrey
13.07.2017
08:47:50
по строчке на импорт хорошо для мерджа
Andrey
13.07.2017
08:49:22
Я всё чаще так вижу через скобки в целом норм чо.
Andrey
13.07.2017
08:50:09
и imho бэкслэш suxx
Sergey
13.07.2017
08:51:49
Ммм, классно телегу на днях обновили — добавили возможность копировать ссылку на сообщения в паблик-чатиках. Только в контекстном меню теперь по клику две кнопки "copy link"
>Guido has Pronounced that relative imports will use leading dots.
>Guido has Pronounced
?
Google
Александр
13.07.2017
09:36:53
Спасибо, ребята
Chikiro
13.07.2017
12:59:51
>>> p = PurePath('home/12345/1')
>>> p.match('home/*')
False
>>> p.match('*/1')
True
помогите понять как glob работает
Andrey
13.07.2017
13:00:49
что такое glob ?
Chikiro
13.07.2017
13:01:06
https://docs.python.org/3/library/glob.html
почему если * в начале строки, то находит путь с /, а если в конце, то нет?
Sergey
13.07.2017
13:35:56
Dmitry
13.07.2017
14:25:05
короче проверка фейлится в этом месте:
https://github.com/python/cpython/blob/add98eb4fe41baeaa70fbd4ccc020833740609a4/Lib/pathlib.py#L931
for part, pat in zip(reversed(parts), reversed(pat_parts)):
if not fnmatch.fnmatchcase(part, pat):
return False
из-за того что в случае с 'home/*' - имеем
parts = ['home', '12345', '1'], а pat_parts = ['home', '*']
после reversed и zip-а имеем пары [('1', '*'), ('12345', 'home')].
первая пара ('1', '*') проходит fnmatch.fnmatchcase,
а вторая уж никак
по идее match('home/*/*') пройдёт
и тут даже не glob, а regex в fnmatch.
Sergey
13.07.2017
14:33:44
Dmitry
13.07.2017
14:38:16
хм, чего только не увидишь https://twitter.com/pyconsk
Sergey
13.07.2017
14:39:06
Dmitry
13.07.2017
14:39:14
чё такого-то?
все Венские подтянутся)
Chikiro
13.07.2017
14:39:34
короче проверка фейлится в этом месте:
https://github.com/python/cpython/blob/add98eb4fe41baeaa70fbd4ccc020833740609a4/Lib/pathlib.py#L931
for part, pat in zip(reversed(parts), reversed(pat_parts)):
if not fnmatch.fnmatchcase(part, pat):
return False
из-за того что в случае с 'home/*' - имеем
parts = ['home', '12345', '1'], а pat_parts = ['home', '*']
после reversed и zip-а имеем пары [('1', '*'), ('12345', 'home')].
первая пара ('1', '*') проходит fnmatch.fnmatchcase,
а вторая уж никак
Спасибо. Но ну его, этот glob, напишу на регекспах )
Sergey
13.07.2017
14:39:58
Это же даже не Pycon Afghanistan
Dmitry
13.07.2017
14:40:01
Sergey
13.07.2017
14:40:23
Google
Dmitry
13.07.2017
14:41:24
на афтепати третьего питерпая кажется даже была шутка про это
who needs startups when you have heroin
Sergey
13.07.2017
14:42:47
Dmitry
13.07.2017
14:43:57
ага, поехал) надеюсь придёт расскажет.
Sergey
13.07.2017
14:49:16
Ох как сегодня припекает на улице ?
Dmitry
13.07.2017
14:50:40
не ходи туда
Sergey
13.07.2017
14:51:20
import teleport
Dmitry
13.07.2017
14:52:04
ImportError: No module named teleport
Sergey
13.07.2017
14:53:03
И так каждое утро перед работой ?
Alexey
13.07.2017
14:53:22
from teleport import cold_beer
cold_beer.drink()
Так было бы круто...
Dmitry
13.07.2017
14:54:04
Sergey
13.07.2017
14:54:11
Alexey
13.07.2017
14:54:29
Dmitry
13.07.2017
14:55:35
наверное, он имел в виду что пиво телепортируется :)
но оно всё равно не должно при этом лежать в модуле телепорта. никак
Sergey
13.07.2017
14:56:09
У телепорта должен быть метод телепорт, а пиво живёт в отдельном классе
А вообще, это был референс к анекдоту в первую очередь ;)
Dmitry
13.07.2017
14:56:28
teleport.transfer(beer)
Google
Sergey
13.07.2017
14:56:55
Alexey
13.07.2017
14:57:07
Dmitry
13.07.2017
14:57:13
у нас же даже на бэкграунде. https://xkcd.com/353/
давайте введём новое правило
если рассказывать анекдоты, то голосом!
Sergey
13.07.2017
14:58:13
Пошутишь?
– Ну ничего себе! Я бы на вашем месте давно покончил с собой!
– Честно сказать, психолог из вас так себе.
Import teleport, действительно, отсылка к import gravity
Dmitry
13.07.2017
15:30:25
Alexey
13.07.2017
15:57:15
И прогремело.
И прекратилось.
Александр
13.07.2017
15:58:04
Вчера такая же шляпа была
Alexey
13.07.2017
15:58:40
Вчера когда в колпак уезжал дождя не было. Да и до этого тоже не наблюдал.
Vadim
13.07.2017
16:04:59
Ровно год прошел с первой строчки кода и до трудоустройства)
Nikolay
13.07.2017
16:05:26
Vadim
13.07.2017
16:05:39
И вообще
Александр
13.07.2017
16:09:37
Vadim
13.07.2017
16:09:48
Александр
13.07.2017
16:10:40
Andrey
13.07.2017
16:12:53
Google
Vadim
13.07.2017
16:17:35
Nikolay
13.07.2017
16:17:38
Правильно пивотнулся
Vadim
13.07.2017
16:18:37
Александр
13.07.2017
16:23:20
Многие позавидуют
Vadim
13.07.2017
16:26:24
Danil
13.07.2017
16:38:18
Vadim
13.07.2017
16:39:11
не, столько платить пока не за что
Sergey
13.07.2017
16:40:13
Vadim
13.07.2017
16:40:43
Dmitry
13.07.2017
16:41:32
Sergey
13.07.2017
16:42:10
Александр
13.07.2017
16:43:23
О - оптимизм
Vitali K.
13.07.2017
16:44:25
Господа, а кто-нить ищет работу? :)
Ruslan
13.07.2017
16:44:46
Sergey
13.07.2017
16:44:49
Vitali K.
13.07.2017
16:46:05
Про наш с @jetbootsmaker скромный продукт недавно написали на techcrunch, venturebeat и даже есть строчка на fortune. А ещё в нам вложилась Дрокова. Говорят они целовались с Путиным