Ilya
Эм. Ну вот у тебя вместо c:\ что в твоём пути?
Я ж говорю бессмысленно.
На самом деле там одинаковые пути.
Виндовые. НО их преобразуют в юниксовые. скрипт работает на разных системах. Линукс, Мак, винда.
Получили путь номер 1 одним способом. Преобразовали его. Чтобы не думать сильно, в Юникс-стиль (Даже на винде), нормализовали.
получили другой путь. Преобразовали так же.
Сравнили -- ЭТО КОНЕЧНАЯ ЦЕЛЬ НА САМОМ ДЕЛЕ ВСЕГО ЭТОГО ГОВНА!
Проблема в том, что скрипт работал на Py2, а в Py3 работать отказывается изза того, что там в этих разных способах получения путей типы Path-like объектов получаются разные, в 2 и 3, и скрипт цуко валится.
Вот и хочу написать это ПРАВИЛЬНО чтобы работало на всех питонах.
Alex
Ilya
Ща перечитаю всё...
Alex
но есть один нюанс
Alex
@aragaer normpath и normcase - платформозависимые.
Алексей
ну вообще в винде пути C:\Windows и c:\windows - это один и тот же путь, а в nix уже нет
Алексей
я сомневаюсь, что как-то можно абсолютно корректно с этим работать
Ilya
Alex
https://docs.python.org/3/library/os.path.html#os.path.normpath
Nikolay Markov
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)
Ilya
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 не завезли?
Denis
Dk
Зачем
Ты хоть прочитать успел?
Denis
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
Ради каждого уровня вложенности класс бы описывать...
Denis
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
Denis
Библиотека точно поддерживает твою версию питона?
Nelson
У меня питон 3.7.3, как узнать поддерживается или нет?
Denis
Почитать где-то в ридми библиотеки
Tigran
Dk
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
cookie🍪
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
как решить?
Nikolay
😢😒
cookie🍪
серьезные тут у вас проблемы
cookie🍪
Maxim
Стоп
Prunkles
Не могу сказать, что я новичёк, так как какие-то штуки писал, и вообще имею уже большой опыт в других ЯП, но всё же
В общем, такой вопрос: Как я понял, в питоне очень сильно придерживаются snake_case, и лишь для классов используют PascalCase. В таком случае, если у меня есть файл, который, по идее, я должен называть в snake_case, как и любой другой файл, но в нём описан некоторый класс (если в питоне вообще принято что-то на подобии "1 файл на 1 класс"), то должен ли я его называть тем же именем, что и класс, перейдя уже на PascalCase?
Denis
Не могу сказать, что я новичёк, так как какие-то штуки писал, и вообще имею уже большой опыт в других ЯП, но всё же
В общем, такой вопрос: Как я понял, в питоне очень сильно придерживаются snake_case, и лишь для классов используют PascalCase. В таком случае, если у меня есть файл, который, по идее, я должен называть в snake_case, как и любой другой файл, но в нём описан некоторый класс (если в питоне вообще принято что-то на подобии "1 файл на 1 класс"), то должен ли я его называть тем же именем, что и класс, перейдя уже на PascalCase?
В питоне такое не принято, можешь называть как хочешь
Denis