Ilya
Эм. Ну вот у тебя вместо c:\ что в твоём пути?
Я ж говорю бессмысленно. На самом деле там одинаковые пути. Виндовые. НО их преобразуют в юниксовые. скрипт работает на разных системах. Линукс, Мак, винда. Получили путь номер 1 одним способом. Преобразовали его. Чтобы не думать сильно, в Юникс-стиль (Даже на винде), нормализовали. получили другой путь. Преобразовали так же. Сравнили -- ЭТО КОНЕЧНАЯ ЦЕЛЬ НА САМОМ ДЕЛЕ ВСЕГО ЭТОГО ГОВНА! Проблема в том, что скрипт работал на Py2, а в Py3 работать отказывается изза того, что там в этих разных способах получения путей типы Path-like объектов получаются разные, в 2 и 3, и скрипт цуко валится. Вот и хочу написать это ПРАВИЛЬНО чтобы работало на всех питонах.
Alex
normpath
+ normcase
Ilya
Ща перечитаю всё...
Alex
но есть один нюанс
Alex
@aragaer normpath и normcase - платформозависимые.
Алексей
ну вообще в винде пути C:\Windows и c:\windows - это один и тот же путь, а в nix уже нет
Ilya
там принятый ответ это os.path.normpath
normpath же вроде не делает это... (в один вид юникс/виндовс)
Alex
Алексей
я сомневаюсь, что как-то можно абсолютно корректно с этим работать
Alex
https://docs.python.org/3/library/os.path.html#os.path.normpath
Ilya
Всё, спасибо, теперь надо в этом говне ещё разобраться, чтобы оно одинакового типа "строки" для путей были.
Tigran
вот это эффектное появление
Tigran
Николай в треде!
Nikolay Markov
Николай в треде!
какой прием)
Ilya
Я ж говорю бессмысленно. На самом деле там одинаковые пути. Виндовые. НО их преобразуют в юниксовые. скрипт работает на разных системах. Линукс, Мак, винда. Получили путь номер 1 одним способом. Преобразовали его. Чтобы не думать сильно, в Юникс-стиль (Даже на винде), нормализовали. получили другой путь. Преобразовали так же. Сравнили -- ЭТО КОНЕЧНАЯ ЦЕЛЬ НА САМОМ ДЕЛЕ ВСЕГО ЭТОГО ГОВНА! Проблема в том, что скрипт работал на Py2, а в Py3 работать отказывается изза того, что там в этих разных способах получения путей типы Path-like объектов получаются разные, в 2 и 3, и скрипт цуко валится. Вот и хочу написать это ПРАВИЛЬНО чтобы работало на всех питонах.
А!!! ЭКСТАЗ: Current Qt install directory: E:\work\replspy\share\qt call(out): ['E:\\work\\replspy\\share\\qt\\bin\\qmake.exe', '-query', 'QT_INSTALL_PREFIX'] Previous Qt install directory: b'E:\\work\\replspy\\share\\qt' Previous and current Qt paths are the same. Работает! Рецепт -- 0) выпилить .replace('/', '\\') нафиг 1) normpath 2) сравнивать os.path.samefile(qt_dir,prev_dir)
Aragaer
@aragaer normpath и normcase - платформозависимые.
ну да, потому они и платформозависимые, чтобы ты делал одно и то же на разных платформах, а получал разный результат
Alex
я просто к тому, что если у него пути приходят с одной ОС а обрабатывает их он на другой, то этот вариант не подойдет
Alex
но очевидно проблема была куда проще
Alex
т.е. человек просто не знал о функциях для работы с путями
Илья
Ознакомился. Благодарю.
Анастасия
Привет, я HR)
Анастасия
Сейчас будет вакансия)
Анастасия
Мы нашли senior, поэтому теперь готовы рассматривать middle питон разработчиков. Компания Хантфлоу - 4 года делаем сервис B2B, которым пользуются рекрутеры в компаниях каждый день. #работа #удаленно #удаленка #Москва #aiohttp #tornado #asyncio #python ЗП: 120 -140 т.р. на руки КОГО МЫ ИЩЕМ — Разработчика с опытом в асинхронном программировании от 2 лет, который работал с микросервисами, ORM (pewee), проектировал HTTP REST API — Того, кто хочет выбирать как ему работать: в офисе или удаленно из любой точки мира — Того, кому надоели компромиссы между тем, чтобы сделать хорошо или сделать быстро — мы всегда делаем хорошо, а сроки обсуждаем совместно с командой ЧЕМ ПРЕДСТОИТ ЗАНИМАТЬСЯ В ХАНТФЛОУ — Улучшать имеющийся функционал и разрабатывать новый — Участвовать в принятии архитектурных решений; — Быть инициативным и предлагать свои идеи, в том числе, если это касается использования новых технологий — Проводить code review ТЕХНОЛОГИЧЕСКИЙ СТЕК Python 2.7, 3.5+ (сейчас переезжаем с 2.7 на 3.7), Tornado, Aiohttp, PostgreSQL, Elasticsearch, redis, pewee, docker. ЧТО МЫ ПРЕДЛАГАЕМ — Формат работы — офис в Москве или удаленно. Каждые полгода мы собираем всех в Москве, чтобы вместе потусить — Свободу влияния на продукт — мы готовы обсуждать любые ваши идеи — Основатели — дизайнер и разработчик, так что идиотских требований от «бизнеса» и бессмысленных совещаний не будет. Вместо этого — неформальность общения, уважение и открытость. — Мы поощряем развитие, поэтому готовы оплачивать поездки на конференции и профессиональные курсы Тестовые задания не даём) Пишите сюда @vasilevsa
Vladimir
e-staff рекрутер уже умер?
Mike
Мы нашли senior, поэтому теперь готовы рассматривать middle питон разработчиков. Компания Хантфлоу - 4 года делаем сервис B2B, которым пользуются рекрутеры в компаниях каждый день. #работа #удаленно #удаленка #Москва #aiohttp #tornado #asyncio #python ЗП: 120 -140 т.р. на руки КОГО МЫ ИЩЕМ — Разработчика с опытом в асинхронном программировании от 2 лет, который работал с микросервисами, ORM (pewee), проектировал HTTP REST API — Того, кто хочет выбирать как ему работать: в офисе или удаленно из любой точки мира — Того, кому надоели компромиссы между тем, чтобы сделать хорошо или сделать быстро — мы всегда делаем хорошо, а сроки обсуждаем совместно с командой ЧЕМ ПРЕДСТОИТ ЗАНИМАТЬСЯ В ХАНТФЛОУ — Улучшать имеющийся функционал и разрабатывать новый — Участвовать в принятии архитектурных решений; — Быть инициативным и предлагать свои идеи, в том числе, если это касается использования новых технологий — Проводить code review ТЕХНОЛОГИЧЕСКИЙ СТЕК Python 2.7, 3.5+ (сейчас переезжаем с 2.7 на 3.7), Tornado, Aiohttp, PostgreSQL, Elasticsearch, redis, pewee, docker. ЧТО МЫ ПРЕДЛАГАЕМ — Формат работы — офис в Москве или удаленно. Каждые полгода мы собираем всех в Москве, чтобы вместе потусить — Свободу влияния на продукт — мы готовы обсуждать любые ваши идеи — Основатели — дизайнер и разработчик, так что идиотских требований от «бизнеса» и бессмысленных совещаний не будет. Вместо этого — неформальность общения, уважение и открытость. — Мы поощряем развитие, поэтому готовы оплачивать поездки на конференции и профессиональные курсы Тестовые задания не даём) Пишите сюда @vasilevsa
это требования для миддлов? а для джунов есть?
Mike
друг как раз ща работу ищет, но он джун совсем
Mike
но и денег не много хочет (ниже вашей вилки)
Denis
Совсем джун, но уже хочет денег
Denis
А учиться не хочет?
ilya
хочет, но не много)
Vladimir
Правильно, нах много учиться, я тож так считаю
Vladimir
Папа/мама пристроят
ilya
всех знаний не заработаешь)
Tigran
огого, люди предлагают белую зарплату, надо брать
Анастасия
Dk
удали
Dk
Ребят, я не понял, в Python анонимные dataclass не завезли?
Dk
Зачем
Ты хоть прочитать успел?
Dk
Зачем
Как-то так хочу class Config: prod: dataclass = api_token: str = 'token' api_url: str = 'it_is_url' test: dataclass = api_token: str = 'another_token' api_url: str = 'it_is_another_url' Config.test.api_token >>>another_token
Dk
Ради каждого уровня вложенности класс бы описывать...
Dk
🙈
Denis
Зачем вообще датакласс описывать больше, чем в одном месте
Dk
Он и будет в одном
Dk
Не придумывай то, что я не писал
Denis
Можно сделать класс Config, а потом prod_config = Config(...)
Denis
И непонятно, зачем тут вообще датаклассы
Dk
Ну подскажи BestPractics
Nelson
Добрый день. Сегодня порпобовал написать простого бота для телеграм, но при попытке проверить его, мне в консоли выдаёт ошибку, что в файле init.py на 816 строке ошибка ситнаксиса @util.async(). Перейдя в нужный файл и открыв его я увидел такие строки: @util.async() def get_me(self): return TeleBot.get_me(self)Как исправить ошибку?
Denis
Ну подскажи BestPractics
prod.py: API_TOKEN = ... API_URL = ... test.py аналогично, потом импортируешь нужный в зависимости от переменной окружения
Denis
Библиотека точно поддерживает твою версию питона?
Nelson
У меня питон 3.7.3, как узнать поддерживается или нет?
Denis
Почитать где-то в ридми библиотеки
Nelson
Почитать где-то в ридми библиотеки
Я кажется понял. В документации сказано, что 3.4 поддерживается (у меня 3.7)
Nelson
Traceback (most recent call last): File "test.py", line 4, in <module> import telebot File "/home/Uzver/.local/lib/python3.7/site-packages/telebot/__init__.py", line 816 @util.async() ^ SyntaxError: invalid syntax
Lolly
Привет всем, работал кто с хостингом DigitalOcean?
Stan
здравствуйте, подскажите по следующейпроблеме:
Stan
Tue Apr 23 10:15:50 2019 : Error: <internal>[61]: Reference "${.module}" not found Tue Apr 23 10:15:50 2019 : Error: /etc/raddb/radiusd.conf[61]: Failed expanding variable mod_instantiate Tue Apr 23 10:15:50 2019 : Error: /etc/raddb/radiusd.conf[61]: Invalid configuration for module "python"
Stan
не запускается radius
Stan
в чем может быть проблема?
Stan
как решить?
Lolly
Привет всем, работал кто с хостингом DigitalOcean?
У меня такой вопрос: На этом хостинге достаточно будет создать дроплет с убунтой и все? Бд можно будет бесплатно создать?
Nikolay
😢😒
cookie🍪
серьезные тут у вас проблемы
Maxim
Стоп
Prunkles
Не могу сказать, что я новичёк, так как какие-то штуки писал, и вообще имею уже большой опыт в других ЯП, но всё же В общем, такой вопрос: Как я понял, в питоне очень сильно придерживаются snake_case, и лишь для классов используют PascalCase. В таком случае, если у меня есть файл, который, по идее, я должен называть в snake_case, как и любой другой файл, но в нём описан некоторый класс (если в питоне вообще принято что-то на подобии "1 файл на 1 класс"), то должен ли я его называть тем же именем, что и класс, перейдя уже на PascalCase?
Prunkles
В питоне такое не принято, можешь называть как хочешь
Но а если таки у меня файл описывает строго какую-то логику, и строго в одном классе? То назвать его именем класса, но транслировать в snake_case?