@ru_python

Страница 4325 из 9768
Robot
08.12.2017
09:19:42
редьюс хрень для задротов

делает код непонятным

гвидо прав

Nikolay
08.12.2017
09:20:18
Google
Tigran
08.12.2017
09:20:35
https://www.python.org/dev/peps/pep-0557/
чот какой-то синтаксический сахар для attr

Nikolay
08.12.2017
09:20:36
как ты еще на собеседовании задачку на фибоначчи одной строчкой решишь без reduce?

Robot
08.12.2017
09:20:36
если нравится фп пиши на фп языках

/dev
08.12.2017
09:20:37
гвидо прав
ещё бы неосиляторов слушать

Nikolay
08.12.2017
09:20:45
чот какой-то синтаксический сахар для attr
да говно какое-то, если честно

dmks
08.12.2017
09:20:56
ещё бы неосиляторов слушать
Пришло 12.20, в чате проснулись гентоебы

Robot
08.12.2017
09:20:56
нет

Nikolay
08.12.2017
09:21:04
есть низкоуровневые structы

Oleg
08.12.2017
09:23:33
ты не нужен, ёпта
Фсем Fак! Санимаюсь ко-о-одо-о-ом я-а-а-А!

Да ладно вас. Толку бу квами бросаться. Убрали и убрали. Не нравится но на пеп голосовать

Tigran
08.12.2017
09:26:21
reduce в питоне нужен, но редко – 17 ??????? 71% не нужен – 4 ?? 17% нужен – 3 ? 13% ? 24 people voted so far.

Artyem
08.12.2017
09:27:18
если проект предназначен для чего-то продакшенового - то он должен быть питонопакетом, и самый логичный способ организовать импорты - это писать их от имени пакета
мне удобно когда есть несколько пакетов с субпакетами, имеющими единую логическую структуру, и я просто логиески знаю что выше на уровень есть субпакет, с нужным модулем. прото делаю from ..sub import ololo само собой всё это можно решить и через абсолютные импорты, но по личным впечатлениям в этом случае мне больше нравятся относительные

Google
Robot
08.12.2017
09:30:52
https://www.python.org/dev/peps/pep-0557/
вроде неплохая идея, но даже не знаю. захламляет синтаксис ещё сильнее

J
08.12.2017
09:50:31
всем привет мучаюсь оч сильно: нужно поделить трафик по разным прокси один обрабатывает ssl другой остальное мб есть пример ssl proxy на scapy?

J
08.12.2017
09:54:18
создать два связанных прокси(не только хттп и хттпс) пока все через сокеты

и не работает

потому что хз как отделить ссл трафик от обычного тцп

Artyem
08.12.2017
10:01:16
https://www.python.org/dev/peps/pep-0328/ package/ __init__.py subpackage1/ __init__.py moduleX.py moduleY.py subpackage2/ __init__.py moduleZ.py moduleA.py

и все импорты работают
с относительными тоже всё работает!

Nikolay
08.12.2017
10:02:03
https://www.python.org/dev/peps/pep-0328/ package/ __init__.py subpackage1/ __init__.py moduleX.py moduleY.py subpackage2/ __init__.py moduleZ.py moduleA.py
есть пакеты в смысле папка с init.py, а есть пакеты в смысле pip

с относительными тоже всё работает!
ну, за импорт из .. надо бить ногами, а так да

Nikolay
08.12.2017
10:03:48
вкусовщина
нет, здравый смысл, так гораздо более явно

да и подсказки IDE лучше работают, наверняка

кроме того, когда твой код завязан на то, как именно лежат файлы на ФС - это говнокод

b0g3r
08.12.2017
10:04:49
Nikolay
08.12.2017
10:05:54
лол
http://12factor.net/

b0g3r
08.12.2017
10:06:47
лол
Тут я с колей соглашусь

Google
b0g3r
08.12.2017
10:07:02
Кроме лени нет причин писать относительные

Павел
08.12.2017
10:07:36
богер, у тебя есть нож?

Nikolay
08.12.2017
10:07:39
Кроме лени нет причин писать относительные
а про дикты что думаешь? :) все с этого началось

b0g3r
08.12.2017
10:08:37
Я уже писал про дикты, я верю больше доке

богер, у тебя есть нож?
Дома валяется бабочка

Павел
08.12.2017
10:08:54
Дома валяется бабочка
но с собой для самооброны не носишь?

b0g3r
08.12.2017
10:09:01
Баллончик эффективней

Павел
08.12.2017
10:09:19
вот, а в флуде говорят что у тебя есть нож, мол я не прав

Artyem
08.12.2017
10:09:21
кроме того, когда твой код завязан на то, как именно лежат файлы на ФС - это говнокод
с этой точки зрения ты какраз должен быть за относительные испорты, не важно даже как пакет называется, главное что ты знаешь где относительно твоего модуля лежит другой модуль, в рамках твоего пакета

b0g3r
08.12.2017
10:09:22
Мне смелости пырнуть никого не хватит, даже если бы я умел и пользоваться

Nikolay
08.12.2017
10:09:49
когда появляется "относительно твоего модуля" - это уже фейл

все должно быть относительно корня

тогда и вопросов никогда никаких

Maxim robox
08.12.2017
10:12:40
Я в пределах модуля импортирую из соседнего файла относительным импортом. Это плохо?

from .models import User

Artyem
08.12.2017
10:13:05
когда появляется "относительно твоего модуля" - это уже фейл
package/ __init__.py subpackage1/ __init__.py moduleX.py moduleY.py subpackage2/ __init__.py moduleZ.py moduleA.pyтоесть такая структура это фейл, и не имеет право на жизнь?

Nikolay
08.12.2017
10:13:09
Я в пределах модуля импортирую из соседнего файла относительным импортом. Это плохо?
до тех пор, пока у тебя это код не для продакшена и не обернут в питонопакет - норм

Google
Nikolay
08.12.2017
10:13:47
Для прода.
тогда не очень хорошо

но в целом жить можно, если сто процентов известно, что ничего не поменяется

Maxim robox
08.12.2017
10:14:20
тогда не очень хорошо
Почему? Как надо?

Nikolay
08.12.2017
10:14:27
Почему? Как надо?
дык вот я выше написал же

все импорты всегда от корня пакета

никаких относительных импортов

Admin
ERROR: S client not available

Artyem
08.12.2017
10:14:52
имеет, все импорты будут from package.subpackage1 import moduleX
а где тут проблема с относительными импортами? ты на мой взгляд решаешь несуществующую проблему

Nikolay
08.12.2017
10:15:10
Maxim robox
08.12.2017
10:15:11
Artyem
08.12.2017
10:15:20
>from package.subpackage1 import moduleX это несомненно никак не связанно со структурой файлов

Nikolay
08.12.2017
10:15:22
и не надо думать, где лежит другой модуль относительно твоего, это треш

Artyem
08.12.2017
10:16:03
наоборотже, ты больше на неё завязан

Nikolay
08.12.2017
10:16:09
Почему?
потому что получается спагетти, в котором сложно разобраться, да еще и с неймингом могут быть неоднозначности

наоборотже, ты больше на неё завязан
нет, мне не надо всегда помнить, что относительно чего я импортирую

есть пакет, в нем есть папки, все

Google
Maxim robox
08.12.2017
10:18:08
Какую-то ерунду говоришь, мне кажется.

Nikolay
08.12.2017
10:18:39
from .models import User Где спагетти? Какие проблемы с неймингом?
спагетти в том, что ты завязываешься на конкретную папку, конкретный файл и его положение относительно текущего файла. Если бы ты написал from package.app.models import User - не было бы вопросов, откуда что берется, и твой файл с кодом мог бы лежать вообще где угодно по отношению к models.py

Artyem
08.12.2017
10:19:05
нет, мне не надо всегда помнить, что относительно чего я импортирую
окей у тебя при данном подходе возникают болезненные ощущения в пятой точке, в своей команде вы решили ограничить использование относительных импортов и прописали это в стаил гайде. я меня и моей команды таких ощущений не возникает, есть несколько случаев когда мы считаем их полезными и используем, никаких проблем не возникало. - мы как понимаю говнокодеры?

Maxim robox
08.12.2017
10:20:40
спагетти в том, что ты завязываешься на конкретную папку, конкретный файл и его положение относительно текущего файла. Если бы ты написал from package.app.models import User - не было бы вопросов, откуда что берется, и твой файл с кодом мог бы лежать вообще где угодно по отношению к models.py
Каким образом ты завязываешься на конкретную папку, если это относительный путь? Наоборот же. Куда хочешь двигай это, относительный путь не изменится и будет работать. Ты все перепутал.

Nikolay
08.12.2017
10:21:21
Каким образом ты завязываешься на конкретную папку, если это относительный путь? Наоборот же. Куда хочешь двигай это, относительный путь не изменится и будет работать. Ты все перепутал.
вот у тебя два файла лежат рядом, models.py и views.py. Ты написал во views.py "from .models import User". А потом ты решил перенести views.py в другое место. И хер ты это сделаешь без изменения импорта

а с абсолютным - вообще срать, где он лежит, импорт работает всегда

так что нет, это ты все перепутал

Maxim robox
08.12.2017
10:22:31
вот у тебя два файла лежат рядом, models.py и views.py. Ты написал во views.py "from .models import User". А потом ты решил перенести views.py в другое место. И хер ты это сделаешь без изменения импорта
Ну в противовес можно сказать, что с абсолютным импортом ты перенес и вьюхи и модели и все импорты надо менять. Така

Так?

Nikolay
08.12.2017
10:23:15
Так?
за тебя это IDE в таком раскладе сделает, пичарм так умеет. А вот что он относительные импорты пофиксит - что-то я сомневаюсь

Artyem
08.12.2017
10:24:01
а с абсолютным - вообще срать, где он лежит, импорт работает всегда
так чел тебе вроде никто и не предлагает заменить всё на абсолютные и пихать их куда угодно, я тоже в 99% случае использую абсолютные импорты, но в некоторых случаях мне удобнее относительные. аргумент про то что абсолютные импорты менее завязаны на структуру файлов - некорректный.

Artyem
08.12.2017
10:24:47
так ты прям в иморет завязываешся на имя корневой папки

Nikolay
08.12.2017
10:25:02
так ты прям в иморет завязываешся на имя корневой папки
это не "имя корневой папки", это имя пакета твоего питонового

это немного разные вещи

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