
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. А ещё в нам вложилась Дрокова. Говорят они целовались с Путиным