@spbpython

Страница 445 из 785
Stepan
06.07.2017
20:05:54
я использую тайпинг только чтобы помочь IDE, а вот mypy какой-то совсем неюзабильный

b0g3r
06.07.2017
20:07:37
Который в 3.6?
Мне тут сегодня подсказали, что он ещё с 3.0, просто до 3.5 туда можно было чего угодно писать, а теперь типы

Тоже использую тайпинг, в связке с PyCharm не идеально, но удобно
+ в некоторых проектах использую тайпинг. Вообще - либо тайпинг, либо сфинкс-докстринг, где важна совместимость со второй версией питона. Без подсказок жить не нравится

Eugene
06.07.2017
20:10:49
Мне тут сегодня подсказали, что он ещё с 3.0, просто до 3.5 туда можно было чего угодно писать, а теперь типы
Сейчас туда тоже можно что угодно писать a: 100 __annotations__ Out[10]: {'a': 100} Просто все поняли, что кроме типов туда особо и нечего писать то :)

Google
b0g3r
06.07.2017
20:11:02
ну зарт же что-то пытался доказать мне, что в 3.5 там что-то поменялось)

Eugene
06.07.2017
20:12:07
Модуль typing появился, может он хотел сказать?

Eugene
06.07.2017
20:15:13
Нет, не видел. У него на сайте она есть? И что там, магия на аннотациях с метаклассами и хардкором? :)

Vyacheslav
06.07.2017
20:46:48
А что не так с mypy?

Я пользую mypy для py2.7 и комментариями и с 3.6

Что не юзабельно не понимаю

Roman
06.07.2017
21:00:39
Что не юзабельно не понимаю
Как ты аннотируешь: def add(a,b): return a+b

?

Vyacheslav
06.07.2017
21:02:04
Ну так ты же пишешь код если ты пишешь это об интах пишешь что это int или ты ложно положительные срабатывания поиска проблем?

Nikolay
06.07.2017
21:03:05
Как ты аннотируешь: def add(a,b): return a+b
как-то так, нет? def add(a: int,b: int) -> int: return a+b

Vyacheslav
06.07.2017
21:08:14
В 3.6 так в 2.7 # type: (int, int)->int

Google
Vyacheslav
06.07.2017
21:09:02
Но я полагаю что вопрос подвохом про неявные преобразования типов

Nikolay
06.07.2017
21:09:04
"a" + "b" ?
для сложения строк другая функция

Vyacheslav
06.07.2017
21:09:38
Есть неоднозначность с типом Text

Это действительно так

Roman
06.07.2017
21:10:17
для сложения строк другая функция
Ну ок, любой объект у которого определен add

Vyacheslav
06.07.2017
21:10:44
И тут pycharm и mypy разное поведение

def hello(name)     # type: (Text) -> Text return  u'Привет, %s' % name hello('John') # ASCII is Ok for Python 2 but PyChaem failed hello('\xFF') # UnicodeDecodeError not foud by Mypy

Вот разница например

Nikolay
06.07.2017
21:12:22
Ну ок, любой объект у которого определен add
проверка нужна дополнительная

ибо интерфейсов в питоне нет, но можно явно hasattr

ну либо Union, если ты хочешь, чтобы функция работала для нескольких типов

Vyacheslav
06.07.2017
21:13:57
С типом Text union не спасает

К сожалению

Об этом хорошо рассказывал Андрей Власовских есть у него такой доклад про python2/3

https://youtu.be/C4p1SM19MZw

Roman
06.07.2017
21:43:34
для сложения строк другая функция
Ну ок, там небольшая оптимизация. Но если речь не про строки?

ибо интерфейсов в питоне нет, но можно явно hasattr
hasattr тоже ничего не гарантирует на самом деле

Nikolay
06.07.2017
21:44:57
Ну ок, там небольшая оптимизация. Но если речь не про строки?
Ну я ниже продолжил мысль. Интерфейсов в питоне нет. Через NewType такое вроде сделать нельзя. Так что только либо Union, либо никак.

Google
Roman
06.07.2017
21:46:41
Я уже не могу подсунуть другой объект с тем же набором интерфейсов :(

Nikolay
06.07.2017
21:49:07
Правда, большей частью в компилируемых

Eugene
06.07.2017
22:59:46
https://www.youtube.com/watch?v=js_0wjzuMfc
Ну вот чего-то такого я и ожидал от него :) Доклад классный, но я бы не хотел поддерживать такую магию в продакшн :)

Danil
07.07.2017
06:19:14
Ну вот чего-то такого я и ожидал от него :) Доклад классный, но я бы не хотел поддерживать такую магию в продакшн :)
Да, доклад хорош, много красивых решений и "магии". Однако, нести это в рантайм на проде как-то странно, а на этапе тестов mypy это все покрывает

Michael
07.07.2017
06:28:52
Я уже не могу подсунуть другой объект с тем же набором интерфейсов :(
Можешь, просто тебе надо явно выделить интерфейс

Dmitry
07.07.2017
11:21:07
11 июля (ближайший вторник) в 19:00 ждём всех желающих питонистов в офисе DataArt. Приходите слушать и общаться! :) https://www.meetup.com/spbpython/events/240573298/

Olya
07.07.2017
11:22:03
отличная плашка!

которую тут общими силами кодили :)

Dmitry
07.07.2017
11:22:28
ага, она тихонько улучшается

я немного заголовок сейчас ещё прокачал

V
07.07.2017
17:55:47
Ребят кроме таких комментов #-*-coding: utf-8-*- есть еще какие нибудь?

Это служебные? Где про них есть инфа?

Dmitry
07.07.2017
17:57:39
V
07.07.2017
17:58:28
Четко

Dmitry
07.07.2017
17:58:30
помимо объявления кодировки ещё есть шабанг: https://en.wikipedia.org/wiki/Shebang_(Unix)

V
07.07.2017
17:58:33
Благодарю

Google
Aleksander
07.07.2017
20:25:06
А в этот раз снова в датаарте?

Не перепутано?

Dmitry
07.07.2017
20:25:53
инфасоточка, датаарт.

Aleksander
08.07.2017
11:23:21
я вернулся в Питер кто сегодня тусить ?)

Michael
08.07.2017
12:57:46
Чё во сколько и где старт?

Vitali K.
08.07.2017
13:37:17
Сегодня в 19:00 в музее Анны Ахматовой джазовый концерт Вход 300



Michael
08.07.2017
13:39:42
Я всеравно до 20 работать

Aleksander
08.07.2017
13:51:02
думаю в 23 в юнионе - там часок и потом вдоль рубика)

Dmitry
08.07.2017
14:02:01
думаю в 23 в юнионе - там часок и потом вдоль рубика)
а раз зашла речь, расскажи чего такого в юнионе особенного?

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

очень обычный бар, темно, цены высокие, идентичности никакой. Или я чего-то не понимаю.

Vitali K.
08.07.2017
14:07:42
Митя, а ты в Мск ещё или сегодня тусить идёшь?

Dmitry
08.07.2017
14:15:17
ещё

Danil
08.07.2017
16:05:59
https://t.me/joinchat/AAAAAD_Df8qMTFt-_1-4bA
Барные заплывы обсуждаются здесь)

Aleksander
08.07.2017
16:59:36
очень обычный бар, темно, цены высокие, идентичности никакой. Или я чего-то не понимаю.
Просто место для начала и туда симпатичные девушки бывают заходят )

@lig11 ты там где ?

Vitali K.
08.07.2017
17:21:50
Мне кажется он теперь в react чатике

Michael
08.07.2017
18:33:02
Эй вы где?

Dmitry
09.07.2017
13:24:32
о, europython начинается

Страница 445 из 785