Шапка: https://github.com/TheKnightsWhoSayNi/info/wiki/HatПрошлый: >>684010 (OP)
ДЛЯ ЖЕЛАЮЩИХ ВКАТИТЬСЯPython 2 или Python 3: 2.4
Сап, посоны. Подскажите, для парсинга WEBM-файлов подойдёт какой-нибудь условный LXML или Grab ?
>>693099>парсинга WEBM-файлов
>>693099webm — бинарный формат, для его парсинга подойдёт struct/construct.
>>693101>>693102Извините, неверно выразился. Парсинг html-страниц, для поиска webm
>>693104С сосача что ли вебмки качать надо?
>>693104Для парсинга lxml/html5lib.
>>693104beautifulsoup4, вот это ещё посмотри https://github.com/ValdikSS/endless-sosuch
Ананасики, помогите. Начал джангу изучать, следую инструкции джангобукру, дохожу до места где надо сервер поднимать $ python manage.py runserverв ответ консоль меня нахуй шлетTraceback (most recent call last): File "manage.py", line 8, in <module> from django.core.management import execute_from_command_lineImportError: No module named django.core.managementчто происходит? куда потерялся джанго_кор_менеджмент?
Ты django куда устанавливал? если использовался virtualenv перейди в соответствующее виртуальное окружение.
>>693129>>693132
>>693132Эммм...>sudo pip3 install djangoПодозреваю что дефолтная маковская директория
>>693136> pip3> python2 manage.py runserver
Можно ли автоматом применить декоратор ко всем методам класса?
>>693104Онли лхмл и суп. Граб - говно, с каждой версией они блядь меняют всё, что хуй проссыш, документация вперемешку ко старым и новым версиям, поддержку блядь не могут нормальную сделать, угадывай сам блядь, макаки ебаные, васяны сука подзалупинские.
>>693142Пишешь классу декоратор, который проходится по всем методам и применяет декоратор им.
Поцоны, пытаюсь разобраться с алгоритмом blowfish, вот в этом примере http://pythonhosted.org/pycrypto/ они добавляли байты 0x08 в конец, чтоб сообщение было кратно 8 байтам. Ок. 1) А как принимающей стороне избавиться от этих байтов? (напишите пожалуйста что писать в функцию unpack)2) При этом как узнать вдруг этот байт (0х08) является частью сообщения?3) Можно сделать тоже самое только заполнять нулями? Напишите пожалуйста функцию pack, чтоб нулями заполняла.
>>693248ссылку забыл http://pythonhosted.org/pycrypto/Crypto.Cipher.Blowfish-module.html
Питонач, я изучил питон и попрактиковал джангу, но у меня в городе (Челябинск) нету вакансий, в которых требование для соискателя знание питона (есть 1с, java, js, языки для .net и т.п), что мне делать? Переезжать не вариант (вся зарплата будет уходить на съем, а мне эту часть нужно откладывать). Учить другой язык и фреймворк времени нет. Писать на js не хочу, хочу опыта на питоне.
>>693362>2016>не работать на удаленке
>>693362нужно было изначально java учить, питон это язык джаст фор фан.
>>693107Да лол, хотел автоматизировать ПРОСМОТР WEBM >>693108>>693147Спасибо за пояснения!>>693109Отлично! Это именно то, что нужно. Большое спасибо!Только теперь столкнулся с проблемой отсутствия модуля gi. Сижу на семёрке, с анакондой.Пытаюсь поставить как gi так и эту хуягу https://anaconda.org/KristanArmstrong/pygobject, но ничего не выходит. Pygobject конфликтует с уже якобы установленным pygobject, но он не установлен (пытаюсь получить по нему информацию, но конда не находит такого модуля). Никто с подобным не сталкивался?
>>693099lxml - труbeautyful soup - не настолько тру (медленнее, на невалидном хтмл может сломать)grab - вообще поделка какая-то
>>693362на одеск/апворк жеили удаленку ищи
>>693248Сообщение должно быть кратным 8 байтам. Поэтому, если,например, у нас 65 байт сообщения, следующий "крат" - 72. Длина паддинга - 7. Поэтому паддинг будет 7,7,7,7,7,7,7.На принимающей стороне, после расшифровки, смотрим на последний байт сообщения. Он равен 7. Откусываем 7 байт, получаем только полезное сообщение.Чтобы эта схема работала без исключений, в случае, если длина сообщения уже кратна 8, добавляем паддинг в виде 8 байт 8,8,8,8,8,8,8,8. 1) ты должен уже понять2) последний байт всегда является частью паддинга3) надо по-любому как-то знать, сколько байт в паддинге. В крайнем случае, можно в одном байте (или в 3х битах точнее) указать длину паддинга, остальное забить нулямина coursera курсы по крипте пройди
>>693421>beautyful soup - не настолько тру (медленнее, на невалидном хтмл может сломать)Суп использует любой из доступных парсеров: lxml, html5lib, etree. Так что не пизди.
рипост из прошлого:Проблема с логгированием и pybrain.В общем, есть примитивный код: http://pastebin.com/wcEhadUmИ, собственно, какого чёрта импорт pybrain'а влиет не только на существующие, но и вообще на все новые логгеры? Как так-то, блин?!Там в нём есть напрямую вызовы logging.warn(...), которые, вроде как, и есть проблемные места (в рут логгер, что ли, добавляется дефолтный хендлер, который вызывается всегда, так как является "родителем" всех логгеров полученных через менеджер). Но что это за бред-то, блин? Единственный способ получить чистый, личный логгер - это напрямую l = logging.Logger('mojo'), но тогда он в менеджер не запишется и я из другого модуля не смогу его через getLogger получить никак (создастся новый).Что я не так делаю-то, как мне быть? Хочу логгер через getLogger, но без "чужого" мусора в нём.Собственно, вот это можно запустить для иллюстрации проблемы (на идеоне не работает logging) — http://ideone.com/8p6md2Пока что решил добавлением>logging.root.handlers = []после импортов pybrain'а, но это какая-то хуйня, а не решение же.
>>693362Не так давно общался в /b/ с земелей Миасс, тот съебал в Ёбург быдлокодить бэкэнд на пистоне. Говорит вакансий для питоностов масса.
Можно ли как-нибудь получить изображение какой-либо программы (линукс/мак), которая может быть (1) в фоне/свёрнута или (2) частично перекрыта другим окном?Вариант "записать верхнее окно -> активировать нужное -> скриншот экрана -> активировать сохранённое в первом шаге окно", конечно, будет работать, но как-то это не красивенько.
>>693891import -window id screen.pngid можно узнать через xwininfoОднако успех при натравливании на свернутое окно зависит от WM. Про мак хуй знает. Еще man wmctl посмотреть можешь.
>>693895А без записи в файл возможно?>import -window id screen.pngЧто-то понять не могу, что этот код вообще должен делать? Откуда дефис? По-моему, тут что-то всё удалилось перед отправкой.
Подскажите новичку.Есть числовая матрица 2 на 100. Считал ее из Excel в dframe.Как посчитать разницу между каждым 5 элементом (5-1, 10-5, 15-10) и вывести ее в новый столбец?
Аноны, подкиньте годных блогов по Django community/ с оф документации не надо кидать
>>693951https://habrahabr.ru/hub/django/https://www.reddit.com/r/django/А что ещё? Да хуй знает. Остальное всё разрозненное.Гугли django tutorial + кейворд и ройся в них
>>693952Я не ищу решение какой то проблемы, я говорю о блогах в общем, с интересными решениями каких то вопросов
>>693953Туда-сюда такое проскакивает во всяких питон-рассылках:http://www.pythonweekly.comhttp://importpython.comСибиряки тоже норм https://pythondigest.ru
>>693956спасибо
можно ли зарабатывать (желательно фриланс) питоном, но чтоб не веб?
>>693912Каждый пятым элементом в одном столбце? 5-1 != 10- 5, если чо. И не очень понятно, как ты хочешь это вставлять дополнительным столбцом, ведь он будет в 5 раз короче меньше имеющихся.Вот тебе пример с добавлением нулей в промежуточные клетки - http://ideone.com/jjVNVg (dframe это из pandas, что ли?)А в вём проблема в том же экселе и посчитать? А то придёшь завтра с вопросом "как dframe в эксель записать", лол.
>>6939>>693990Чтобы понятней было. Первый столбец время, второй температура, нужно изменение за каждые 5 минут получить.Нужно я так понимаю цикл запустить и результат записать в новый столбец. За пример спасибо, погляжу.
>>693906Это баш
>>693966Смотря что подразумевать под вебом. Грабить дату с веба - тоже веб? Ну вообще фриланс в погромированнии - 90% веб. Так что как повезет.
Анон, вот у меня есть репозиторий, созданный в github'е, то есть, все файлы я создавал там (копировал, вставлял). Как мне подключиться к этому аккаунту через консоль?
>>694051https://help.github.com/articles/adding-a-remote/
>>694051Еще добавлю что для консольных джедаев есть смысл сгенерировать и добавить публичный ключ и подключаться по ssh с авторизацией по этому ключу.Так пуш-пулл значительно проще автоматизируется.
>>694056Для любых джедаев. Авторизация по паролям - позапрошлый век.
>>694057Ну хз, может он старовер какой.
>>694043import — это баш? Что-то ты меня запутать хочешь, по-моему.>$ import>The program 'import' can be found in the following packages:> imagemagick> graphicsmagick-imagemagick-compat>Try: sudo apt-get install <selected package>
>>693065 (OP)Есть серьёзный вопрос, змейки. Может ли питон отлично работать с файлами? И вообще что для этого лучше подойдет?
>>694096>Может ли питон отлично работать с файлами?Что для тебя отлично?
>>694096> отлично работать с файлами
>>694097>Что для тебя отлично?Ну чтобы он сам делал что я захочу.
>>694100>сам делал что я захочу
>>694054О, отлично. Спасибо.
>>694100
>>694096>>694100Ты ебанутый какой-то. Что конкретно надо?
>>694186>Что конкретно надо?>>694100 это
>>694187А ты можешь делать то, что я захочу? Вот и иди нахуй.
>>694192>А ты можешь делать то, что я захочу?нет, я же не питон.
> html+css+js ≈ 50%Тяжко быть вебмакакой.
>>694308Твой проект? Что там раст делает?
>>694308Это диаграмма чего ?
>>694325Общая статистика wakatime, там всё вместе, на досуге решил покомпелировать немножно.>>694330Использования языков и "языков", очевидно.
>>694325Ржавеет, как всегда.
http://ideone.com/7gWCD9Как так, почему нампи в полтора раза медленнее?
Вы что, тут все на *nix разработку ведёте?
>>694453Под nix на nix, но встречаются упертые ньюфаги-неосиляторы.
>>694453Добро пожаловать в реальный мир.http://stackoverflow.com/research/developer-survey-2016
>>694453А ты считаешь, что есть выбор?
>>694453И я смешно шучу
Есть одна программа по визуализации данных в виде отдельных точек-маркеров через матплотлиб. Вывод идет на три сабплота. По кликам на маркеры происходят события. Проблема в том, что этих маркеров может быть до ста тысяч. Такое количество объектов лайн2д занимает в памяти более двух гигабайт, соответственно, зумы, да и вообще все отрабатывается очень медленно. Какие есть вариатны решений?
>>694511Рисовать только маркеры которые находятся в зоне видимостиДелать более детальную прорисовку толкько при зуме.и.т.д
>>694515Я и так рисую только заданную область. Предлагаешь аппроксимацию? Тогда зум будет еще тяжелее.
Я систему автодеплоя сделал. Скоро буду её продвигать некоторым людям, а у меня там ни одной звёздочки нет. Поставьте звезду, а я на ваш проект поставлю. https://github.com/Vladimir37/Sanelotto
>>694545>Поставьте звезду, а я на ваш проект поставлюЭто такое тонкое предложение сдеанониться? Иди своей дорогой.>Я систему автодеплоя сделал.#!/bin/sh и scp?
>>694547>деанон>2016>/pr/
>>694550Ты тут всех знаешь?
>>694545>SSH connection Ну тащемта я угадал. Поправь свой ужасный ангельский в README.md и вбрасывай на реддит в /r/linux, /r/opensource, /r/python. 30-50 лойсов получишь.
>>694552>вбрасывай на реддитТочно, я забыл про него. Спасибо!
>>693870в Екб полторы вакансии для питонистов
>>694511Бамп вопросу.
Вкатился.
>>694457~52% всё же на винде
Чё кодить, пацаны? Для развития кругозораВот вы чё кодите? Не по работе, там ясно что джанго какое-нибудь, а вот вообще, для души там или типа того?
>>694718Ну вон анон чуть выше свое для души вбросил.
>>694718codewars.com?
>>694734> для души> решать дебильные задачки
>>694718Можешь игры клепать, если тебе это интересно.
>>694835Игру делать - это не круды с парсерами лепить, тут парой недель не отделаешься. Если это не клон Марио конечно, но это не интересно.
>>694457Ну, если учесть, что кол-во польхователей СНГ ничтожно мало по сравнению с Европой и США, и отсутствие дикого оверпрайса на маки там, то логично, что их так много. Да и в любом случае винды в сумме гораздо больше, так что кол-во пользователей мака в итоге ближе к кол-ву пользователей линукса.
>>694718Ебал я кодить дома помимо работы. И так жизни нет.
>>694731Ну весь гитхаб не перерыть, а так бы клоноделством "для навыка" я бы конечно занялся. Того и спрашивал.>>694734Да ну их эти олимпиадные задачки! я ж джуном не в комитет придумывающий олимпиады мечу>>694835Не прельщает, увы.
Почему третий питон так странно конвертит байты через str()?str(b'123')Во втором: '123'В третьем: "b'123'"
>>695081А, понял - надо encoding явно указывать.
>>694046>Грабить дату с веба - тоже веб?Вот это уже норм.То есть без джанги нехуй делать да во фрилансе?
Анончик. Имеется 'Gtk.ScolledWindow' в 'Gtk.Viewport' с горизонтальным скроллбаром. Как сделать, чтобы эта область прокручивалось кнопками? (помню задавал этот вопрос, но наработки проебал).
>>695087Нейронные сети пиши.
Где можно найти простые практические задания по питону? Дело в том что я недавно стал изучать, поэтому большая часть задач для меня мягко говоря сложны. Как вы навыки оттачивали? Поделитесь опытом.
>>695282Пиши имиджборду.
>>695282В книжечках все примеры и задания решать.можешь ещё http://blog.programmersmotivation.com/2014/07/09/list-projects/ пошерстить, особенно рекомендую указанную там секцию на гитхабе
На питоне реально писать аппы для телефонов? Кто-нибудь пишет? Нашел kivy и sl4a для этого.
>>695604https://tproger.ru/translations/python-development-on-android/
Двач, прошёл курс на codecademy, было всё очень удобно и приятно. По центру экрана писал код, а в левом верхнем углу выдавались ошибки и итоги программы. Закончил курс, скачал питон, включил этот IDLE, а там просто отвратительное окошко. Ошибки выдаёт туда же, где пишу код, а код после ввода нельзя исправлять, приходится копировать его заново и там уже делать все исправления. Перед этим попробовал вот этот гайд http://learnpythonthehardway.org/book/ex0.htmlДелал всё как написано, кроме того, что третий питон вместо второго устанавливал. Просто не работает.Уверен, что есть решение этой проблемы, даже в школе, когда на С писали было и то удобнее
>>695627File -> New File
>>695660Типо надо всегда там писать, а потом копировать код в основной файл и проверять?
>>695668установи саблайм и не еби мозги.Можешь конечно стать вимоебом еще, но это для поехавших
>>695689или атомобарином
>2016>передвигаться по коду СТРЕЛОЧКАМИ>дергать руку до мышки каждые пять секунд>не держать руки на homerow
>>695706нахуй пошел на всякий случай, хоть я и не понял твоего поста.
>>695711>не понял твоего постаЯ и не сомневался.
>>695712Похоже было слишком тонко. Вимоебы аутсайдеры, смекаешь?
>>695716Передашь от меня привет туннельному синдрому как до 35 доживешь, любитель мышек и стрелочек.
https://www.codecademy.com/learn/pythonВот и приехали. Все годные задачи платно.
>>695725Думаешь, пришло время пилить свои задачи?
>>695725Ну разок 20 баксов чего бы и не выделить, а за месяц ты 100% всю хуйню перерешать успеешь
>>695731Не знаю, хватит ли этого для начала. Вот по совету Анона решил вкатиться в Питон с изучения кодакадеми + Лутц параллельно, а тут такие дела. Стоят ли они $20 или это очередная наёбка? В последнее время очень скептически отношусь ко всем курсам.
>>695731Пилить и продавать.
>>695746>стоят ли они $20?Нет. Этот курс можно за день пройти, я лично не вижу смысла тратить на него деньги. Задачки есть, например, на checkio, codewars и в любой книге для начинающих.
>>695772Де брать задачки для чуть-более-чем-начинающих?Интерес не праздный, если честно. Застопорился, а до джуна один хуй не тяну.
>>695775Если тебе главное до джуна дотянуть чтобы найти работу то просто задрачивай нужный фреймворк и пили всякие круды(если ты в веб хочешь податься)
>>695716>Вимоебы аутсайдерыА то!Историю создания Саблайма надеюсь знаешь
>>695791Мне главное что бы по фану было.Фан от консолеговна, парсеров, всяких машин лёрнингов и пандасов я ловлю, а от джанги (которая для меня состоит из неочевидной "А ЕСЛИ ХОЧЕШЬ ЧТО БЫ ХУИТКА БЫЛА С МЕНЮ - ПРОСТО ДОПИШИ django.model.menu(huyar, ' ', hui)"И даже работу пока не ищу, просто было бы неплохо в случае возникновения в ней необходимости быть готовым на что-то претендовать.Бывают вообще питоновакансии вне вебдева?
>>695792Я тебе миллион таких графиков нарисую. Лолпроорал с тебя
>>695826http://stackoverflow.com/research/developer-survey-2016Нарисуй.
>>695827СТАКОВЕРФЛОУАХАХАХАХХАХАХАсъеби под шконарь
>>695829поставил лойс, тонкота)
>>695832Спасибо, братик.
>>695808>Бывают вообще питоновакансии вне вебдева?Для невеб вакансий нужно подробно понимать, как и что работает. А тебе с таким подходом только в 1С.
>>695792> Notepad++> 35.6%> NOTEPAD++
>>695843Спасибо, братик.
Core Python Applications programming - Устаревшее говно из 2012 года. В книге много тем, но ни одна из них не раскрыта полностью. Впелили джангу на пол книги, но я бы по ней все равно не стал ее учить (зачем учиться по устаревшим источникам когда есть намного лучшие альтернативы). В итоге раздули на 800+ страниц. Код написан для питона 2 и иногда вставляют информацию о питоне 3, но это нихуя не раскрывает тонкостей работы с третьей версией. Задания крайне неинтересные и нет никакого желания их делать. Они даже не удосужились нормально обновить старые главы и постоянно встречается всякое говно типа "ну тут кароч написано про psycopg но вы будете использовать psycopg2))0 А еще мы оставили 20 страниц об давно умершем фреймворке и мы об этом знаем, но почему бы их не оставить))". 1/10 кароч.Нахуя было это советовать в треде?
>>695864Это я виноват.Я советовал. И тоже дропнул чуть после.Прошу прощения.
Нужно выводить логи в файл, потом загружать их из файла. А теперь вопрос. Как сделать наименее велосипедно запись цвета в файл? Чтобы при прочтении он интерпретировался и этим цветом писался в интерфейсе?
>>695916Допустим, есть интерфейс на QT, в виджет лога которого дублируется все из переопределенной обретки stdout. В частности - красным выводятся ошибки, синим кое-какая инфа и тд.Все это нужно дублировать в файл, чтобы информация сохранялась более, чем на 1 запуск.
>>695919Подозреваю в кутях должен быть какой-то класс уже содержащий текст и цвет где надо, а не просто выводящий. Прямо его и пиши. Или не прямо, а сконвертни в какой-нибудь жсон. Какая разница вообще в каком формате писать? Руками ты с ним работать не будешь. Я надеюсь.
>>695920Таки, может и буду. Я хочу убить еще одного зайца, и в случае наличия ошибок чтобы все это отсылалось на почту.Сейчас еще пришла идея, что можно использовать html, и его же загружать прямо в виджет потом. Никакой разницы между тем, что отображается в виджете, и тем, что в файле будет.
Нужно настроить роздачу файлов на windows сервере.Идея такова: django приложение на впсочке с маленьким-маленьким ssd делает к выделенному windows серверу запрос, получает ссылки на файлы и отдает их пользователям по запросу.Напердолить nginx+tornado? но в обеих поддержка окон для галочки, может их в докер запихнуть? или есть какой-то получше/попроще вариант?
>файл программы, строки - в UTF - 8>петон упорно пытается кодировать кириллицу черз ASCII при записи в файл>используешь codecs.open вместо openАхах, петон 2.7 что ты делаешь, прекрати! У меня от этого ЯВНОЕ ЛУЧШЕ НЕЯВНОГО.
>>695937Сука, животное, блядь. Ну почему работа с юникодом такой адов пиздец?
>>695923-> /s/
>>695792>Историю создания Саблайма надеюсь знаешьА что с ней не так?
>>693065 (OP)поцаны, делаем oregon trail. нужно чтобы игра тебя постоянно спрашивала вопрос "Что ты хочешь сделать?" и после того как ты сделал действие-она спросит еще раз,но когда дело доходит до второго действия, программа игнорит то что я ввожу и читает это как первый ввод. Например, я выбрал 1 в начале, игра опять запрашивает номер, выбрал 2- она все равно читает это как один. Как пофиксить?commands=input("\nYour options are: \n1)Travel \n2) Rest \n3)Hunt \n4)Status \n5) Help \n6)Quit")while not GAMEOVER: print (commands) answer=input("What do you want to do?") if commands == "1": update_days(3,7) if MILES_LEFT<=1: print (oregon()) else: print(travel()) elif commands == "2": update_days (2,5) print(resting())
>>695952все, пофиксил
А есть ли более хитрый способ создавать файлы при открытии, если они не существуют, чем указывать в режиме "+"?Например, я хочу, чтобы если файла не существует - он создавался, но не пустой, а с некоторым наполнением.Есть ли другие способы, кроме try и перехвата исключения?
>>695963В чем проблема закопипастить в файл нужное наполнение при создании?
Возможно явно указать тип переменной, возвращаемого значения?Если да, то при компиляции компилятор выдаст ошибку, при передаче переменной другого типа?
>>695987А если он уже существует?
>>695987Вот в 3.3 есть режим 'х', малаца хорошо сделоли.
>>695991Ну проверь, ёпте.exists = os.path.isfile(filename)with open(filename, 'w+') as f: if not exists: f.write(BASE_CONTENT)Или ты надеялся на магический режим открытия файлов "open_for_writing_and_write_data_from_variable_CONTENT_if_file_got_created_with_this_call"?
>>695320Спасибо.
>>695988https://docs.python.org/3/library/typing.html
То чувство когда получил первый цент с рекламы на своем джангосайте который ворует контент бьютифулсупом
>>696039Вот это понимаю достижение. А где хостишь если не секрет?
>>696059Купленная (на совсем, да) ультраднищенская впс на cloudatcost.comТам иногда io тормозит и вообще качество не оче но зато оплачивать не надо. Взял три года назад за десять баксов, три года она простаивала и хостила мои бекапы, теперь вот пользу приносит.
>>696039какой контент воруешь?
>>696259Рецепты всякого говна из одноклассников
>>694457http://stats.wikimedia.org/wikimedia/squids/SquidReportOperatingSystems.htm
>>696383> Вы что, тут все на *nix разработку ведёте?> разработку
>>696398
>>696398Код в итоге тоже на серверных линуксах крутится. А кто там с чего контент поглощает - дело десятое.
Анончик, в классе выдаёт такую ошибку: "NameError: free variable self referenced before assignment in enclosing scope in lambda". До этого всё работало, пока не сделал "пакеты" (__init__.py).
python 2:>print -9 / 4 >3python 3:>print -9 / 4>2.25пришлось по нраву, что теперь сразу выдает float вместо int? это хорошо сыграло или похуй?
>>696760Не хорошо и не плохо. Это правильно и по дзену.
Начал проходить курс по courser'a, уже поздно, устал после работы, смотрю: практические задания. Элементарные какие-то вещи, как показалось, даже нет смысла приступать, все элементарно же. Но нифига, решил написать. Вот это смешное задание http://pastebin.com/j7t2HEZKИ сразу вопрос возник. Вообще это все можно решить в одну строчку, но мне безумно нравится расписывать как у меня, делать все наглядно, растягивать удовольствие, лол. Это нормально? Или в продакшене это будет непозволительно и надо ебашить коротко? Есть любители расписать как я?
>>696768От курсеры до продакшна еще успеешь комфортный себе и коллегам уровень детализации найти. Тем более это ж питон где все просто.
Если переопределить stdout - как вернуться на стандартный? Не могу найти, на что менять обратно, кроме как заранее, перед переопределением присваивать его переменной.
>>696792Или как создать обертку, которая будет писать и в питоновскую консоль, и куда-то еще?
>>696794Переопределять внутри обертки stdout на __stdout__?
>>696672Код мы за тебя выдумывать должны?
Чуваки, подскажите, как поймать событие отправки документа на принтер?
>>696831В дополнение -- нужно именно сам ивент, возможно как-то через PyWin32 (да, на винде, надо для работы). Есть идеи?
Класс - это ссылочный тип?возможно что то типа:arr = []arr.append(SomeClass())ref = arr[-1]ref.Value = 'Value'arr[-1].Value>Value
>>696854Да, так и есть.Проверил быстрее, чем вопрос писал
1. Как наебать PyCharm 30 days Trial?2. Где он хранит дату первого запуска или как-то зацепку, которая дает отсчет этих 30 дней?3. Кто-нибудь слушал wireshark (или чем-то подобным) его коммуникации с сервером? Он стучит на юзера своим хозяевам (как 90% софта в 2016)?
>>696854ржака, блин>>696865укажи сервер лицензий http://idea.lanyus.com/ и ебись он конёмпараноики из /крипт/ уверены что да
>>696865На торрентах же лежит без ебли с лицензиями.
>>696854В питоне всё передаётся только ссылками. Просто есть иммутабельные объекты (строки, числа и т.д.), которые никак нельзя изменить.a = "abc"b = aЧто бы ты далее ни сделал с a — b так и останется равным "abc".
Как заставить работать cx_freeze на 3.5? Он не собирается, сука...
>>696872Разве из этого не следует, что строка - тип значений?
>>696876Эээ, что?
>>696865Они бесплатно лицензии раздают студентам. И вроде даже мелькало, что тем кто на степике зарегестрирован.
>>696874pyinstaller
Господа, есть кучка картинок. Надо отобрать те, где есть текст. Текст обычно крупный и короткий, вроде того что на демотиваторах лепят. Может быть как русский так и английский. Это реально? Чем?
>>69694210 секунд в гугле(загуглил исключительно потому что самому интересно стало):https://code.google.com/archive/p/pytesser/https://github.com/tmbdev/ocropy
>>696951tesseract небплохо справился, спасибо.
Приложения собранные через pyinstaller можно инжектить в процессы?
>>697116Чё бля?
Есть один джангопроект. Нужно сделать одну внутреннюю функцию, которая будет дёргаться с различными аргументами. Куда положить файл с этой функцией?
>>697159Вся суть джанго.
>>697162Что? Не понял.
>>696951Прикрутил еще cuneiform, вообще отлично стало. pyocr сразу обоих умеет.
>>697159project/app/helpers.py
Анчоусы, что лучше первым прочитать, fluent python или python unlocked?
Анончики, а допиливать через всякие replace и регулярочки выхлопы хтмл-парсеров - это норма?Или я чего-то не понимаю, или теги с классами порой кривые - но не всегда удается точно выделить какой-то элемент, приходится брать с запасом и вырезать вручную лишнюю инфу.
>>697308>но не всегда удается точно выделить какой-то элементпокажи как выделяешь, какие входные данные, что получаешь и что хочешь получитьи вообще, используй xpath
>>695282здесь есть довольно много примеров http://eax.me/programming-language-learning/
Вопрос по джанге.Не совсем понимаю философию и общий подход.Есть модель с такими то полями. Я хочу переодически(автоматически) добавлять новые пользуясь информацией из текстового файла.Вопрос как это оформляется? В самой модели в виде классового метода? Это пока единственное что я сам могу предположить.И как сделать переодические дейсвия(ну, вот это самое обновление)? Это делается на уроне джанги или сервера?
>>697485> И как сделать переодические дейсвияcelery, читаешь файл а асинхронном таске -> ложишь данные в модель
>>697308beautifulsoup весьма удобен для навигации и выделения того, что тебе нужно. Там же и замена\заполнение\создание новых тегов есть, в удобном порядке.
>>697308Ну и да, вполне норма, почему нет? Самому менять шрифт, цвет, или вообще вырезать ненужные куски.
>>695660Ф5 :)
Можно ли в пакет для pypi запихать sqlite базу?
>>697453>>697308Есть страница с таким куском: https://gist.github.com/anonymous/b6ea812e562a46f8fadcМне нужно выцепить TARGET_LINK и TAGRET_TEXT.Использую суп:element=soup.find_all("div","title")element[0].get_text()И оно захватывает кучу мусора. Иначе вообще ничего не находит.В супе есть нормальный xpath? Раньше юзал селекторы на lxml, но то тоже для меня была магия.
>>697581Ну всё, покурил пару часов маны, теперь вроде разобрался. Суп таки понятнее, чем lxml.
>>697581в треде анон упоминал, что суп может использовать lxmlесли хтмл такой как по ссылке, хпатх будет примерно таким//div[@class="title"]//a[2] для выбора элемента ссылки, //div[@class="title"]//a[2]/text() для теста//div[@class="title"]//a[2]/@href для href
>>697664Я сделал вот так:soup.findAll("a",{"data-ga-click":"text"})[0].get('href')soup.findAll("a",{"data-ga-click":"text"})[0].textПо-моему, это более читабельно.
>>697670findAll можно вообще не писать.soup() — синоним soup.findAll()
Я смотрю дата майнинг щас в тренде. Тот же google deep dream написан на питоне. Что думаете по этому поводу питонисты?
сажка приклеилась
>>697906А что тут думать? Питон у умных дядек всегда в тренде был. Как у нас в шапке говорится - его используют даже в НАСА!https://github.com/alexjc/neural-doodle - вот еще смотри какая годнота, порадуй своего енота шедевральным рисунком.
Питонач, есть ли готовая библиотека для обработки входящих звуков и сравнения с уже записанными звуками в реальном времени? Хочу голосовое управление запилить.
>>697941> для обработки входящих звуков и сравнения с уже записанными звуками в реальном времениПлохой вариан для голосового управления, попробуй гугловскую speech api, на пистоне уже достаточно велосипедов.
>>697943Мне нужно для игры, задержка большая будет.
>>697949Значит ищи offline аналог, их сейчас достаточно развелось, но есть велика вероятность соснуть с русским.Для таких задач используются системы распознавания голоса, если и найдешь что-то для сравнения аудиозаписей то прокатит в лучшем случае для одного голоса.
>>697962Я так понял это всё будет хорошо работать на нейросетях. Вначале пользователь наговаривает (обучает нейросеть), а уже потом программа приходит в режим слушания и работает.
>>697914Помню пару лет назад пытался осилить. Использовал биндинг OpenCV для питона, детектил квадратики, кружки. Для нейросетей использовал ffnet. Может ещё какие либы/статьи по тематике посоветуешь?
>>698018OpenCV долго учится?
>>698072Я ж его не до конца выучил. По-сути, повторял готовые примеры, из блога этого индуса http://opencvpython.blogspot.ru/Ну научился линии на капче вырезать, пека-фейс детектить, не более.
>>697975На днях куалком выкатили процы с каким-то апи для оффлайн голосовой и пикчераспознавалки на основе моднявых нейронок. Что наверное значит, что на десктоп-процах это уже точно не должно тормозить.
Поцоны, а для веб-паука лучше использовать twisted, как я понял? Весь инструментарий который для этого нужен там уже есть, HTTP.Client, да и его асинхронная архитектура, как нельзя лучше подходит, часть кода запрашивает страницы, куда-то сохраняет, другая часть их обрабатывает. Никто-никого не блокирует. Раньше делал на threading + lock, но через пару часов он ввешался.
>>698160asyncio
>>698160scrapy, там уже есть асинхронщина
Сап. Только вкатываюсь в Python, и, собственно, написал первую небольшую программу.Ищет файлы с одинаковым хешем, и если находит такие - проверяет, не одинаковые ли они, после чего выносит все повторы, чтобы оставить только уникальные.Интересует, что можно было сделать лучше/правильнее.http://pastebin.com/T9meFC4r
>>698211Сложна.
>>698189может я не так выразился> веб-паукаsrapy, grab - это немного другой иструментарий. Это crawler - он только скачивает.
>>698189может я не так выразился> веб-паукаХочу полноценную поисковую машину - скачивание, хранение, обработка.srapy, grab - это немного другой иструментарий. Это crawler - он только скачивает.
>>693409>5 лет в C++>@>Сортируешь графы графов>@>Моделируешь движение планет>@>Алгоритмизируешь эволюцию одноклеточных>@>Не написал ни одной прикладной программы>@>Полдня в баше>@>Автоматизировал все, что делаешь на компьютере>@>Баш за тебя двачует капчу, ищет порно и пишет С++ код>@>От нехуй делать сел изучать пхп>@>К вечеру написал свой Фэйсбук>@>К утру стал миллионером и улетел в Лондонспизжено из соседнего
Тут писал, что в лямбде с конектом кнопки (Gtk 3):buttonMenuSlide.connect("clicked", lambda w: self.menuSlideChange(boxButton,buttonMenuSlide)) выползает такая ошибка:"free variable 'self' referenced before assignment in enclosing scope"Вот проект: http:// rghost.ru/7YYbcKldP
>>698268Что я делаю не так? Работало до создания __init__.py в папках. Добавлял через sys.path.append()
>>698268https://github.comhttps://github.com/gcampax/gtk-app-generatorhttps://glade.gnome.org/http://pep8.ru/doc/pep8/ за chamelCase получаешь отдельную порцию урины
>>698402только_снейк_кейс_только_питон_стайл
Я успешен.
Что использовать для CI? Snap-ci, Jenkins или что то другое?
>>698434ещё не поздно сменить ник
>>698439Sanelotto, разумеется. >>698440Зачем?
Qt или Gtk? Кроссплатформенность без ебли важна.
> кросплатформенный тулкит или gnu/linux тулкит> Кроссплатформенность без ебли важна.Ну хуй знает.
>>698454Я не просто так упомянул, что без ебли. Вдруг там ещё сотню криво портированных зависимостей неофициальным инсталлером пятилетней давности нужно тянуть.
>>698454А, не понял тебя сначала. Gtk тащемта кроссплатформенный и уже давно.
>>698455Скорее "кроссплатформенный", в gtk3 уже положили хуй на поддержку отличных от gnome3 окружений, а под остальные платформы баги вообще годами висят.
>>698434Чем только описание, чем отличается от scp?
>>698402А по делу ничего не скажешь, андерскорышь?
>>698464*читал
>>698405Почему "только"?, пусть во всяких жабах хоть в жопы ебутся, но тащить этот срам в пистончик тянет на отдельный котел.
>>698464Ничем, тащемта. В любом проекте главное - правильно вбросить.
>>698402>за chamelCase получаешь отдельную порцию уриныСинтаксис повершелла видел?
>>698496Причем тут калечный павершелл? Мы в питонотреде.
>>698498Там ещё веселее. И никто не жалуетсянаверное
Братишки, я вам покушать принёсhttps://habrahabr.ru/company/geekbrains/blog/280169/листать до параграфа Пробелы в Python
>>698499Охуительные у тебя аргументы. По пепу снейк_кейс - значит снейк_кейс, классы КамелКейс - значит классы КамелКейс. Какие паверщели, ты о чем, какая у них связь с питонами? Ой, все.
>>698501>2016>habrЯсно.
>>698502 -> >>698500
>>698501pep - это рекомендации, а не требования. Что хочу, то и высираю, никто мне не может запретить хоть капсом всё писать.>>698502Как что-то плохое.
>>698505Придерживаясь общего стиля тебе самому же потом легче будет в чужом коде ориентироваться. А людям - в твоем. Хотя о чем я с хабрабыдлом разговариваю.
Абсолютно весь код, даже название .py файла подчеркивается красным, будто ошибка, а сама программа прекрасно запускается. Среда - PyCharm. Щито поделать?
>>698215>>698216в scrapy, в отличие от async и прочего, уже есть обход сайта по ссылкам, экстракция данных и т.д.тебе остается полученные данные куда-то в базу пихать с каким-нибудь elastic search (прототип на коленке) или специализиированным поиском (в перспективе)
>>696942Сегодня импортпитон'овской рассылкой прилетело: https://gist.github.com/dannguyen/a0b69c84ebc00c54c94d
>>696975плюсую тессеракт, сам хотел вспоминить его название, но забыл.
>>698515Спасибо, за ответ конечно, но я скрапи уже пользовался и он мне не понравился.
>>698629Спасибо за еще один вариант. Попробую. У меня сейчас cuneiform + tesseract, но даже с ними из тысячи русскоязычных картинок 3-4 штуки распознаются ошибочно. Finereader на них тоже фейлится. Видимо русский язык НЕ НУЖОН.
>>698714А преобработку не пробовал делать? Увеличить размер, какие нибудь фильтры наложить? Может они у тебя пережатые нахуй?
>>698629> Try Google Cloud Platform for free > Credit Card number is invalid> Authorization failed: Invalid credit card details> We use your billing information to verify that you're a real personЗа триал на тысячу юзов. Ох уж этот гуголь
>>698736appengine скатился, да.
Что на пистоне взять для быстрого бекенда, торнадо или что то на основе asyncio?
>>698919bottle?
>>698928Но он же быстрый только потому что там ничего нет.
>>698932значит я тебя не правильно понял, я думал быстрый - время на развертку приложения.
>>698452Бамп
а в третей версии работает такая конструкция? https://docs.python.org/2/tutorial/errors.html#defining-clean-up-actions лень скачивать.try:except:else:finnaly:
>>699051Попробуй в url 2 на 3 поменять.
>>699056норм
b =["1","2","3","4"] test = {frozenset([a,a1]) for a in b for a1 in b} Почему в test попадают не только комбинации frozenset({'2', '3'}), но и элементы поодиночке, т.е. frozenset({'2'})?
Анончики - питонобоги, требуется помощьКак сделать свой рекурсивный словарь?Ну то есть такую штуку:>>d = RecursiveDict()>>d['key1'] = 'val1'>>d['key2']['key2a'] = 'val2'>>print d # печатает {'key1': 'val1', 'key2': {'key2a': 'val2'}}Как я понял, надо что-то делать в __getitem__, но что - я хз
>>699232попадают не по-одиночке, а (2, 2) и (4, 4)
>>699239а т.к. это set, то копии удаляются
Аноны, в книжке bite of python написано что нужно установить редакторы либо VIM, EMACS, Komodo edit. Самое забавное то, что не один редактор не хочет нормально работать. То лагает. лол. То ошибку выдает. Есть альтернативные редакторы? или среды разработки?
>>699242notepad++ для начала будет достаточно.
>>699242Sumblime,PyCharm,Intellij IDEA с плагином для питхона
>>699242Pycharm, он дефакто стандарт.
Спасибо, анончики :з
>>699240Понял, спасибо.
>>699242Pycharm - ультрагоднота. Мощнейший инструмент разработки на питоне.Sublime Text 2
>>699242Atom или PyCharm.
>>699238Пробовал переопределять getitem, но при двух квадратных скобках оно не работаетвылетает ошибкаай нид хелп, браза
>>699238http://pastebin.com/71SMk99Kэто говнокод, за его работу я не ручаюсь. но думаю понятно в какую сторону копать
>>699280два чая тебе, мой другузнал про магию __missing__, спасибо
>>699286Питон - язык с открытым исходным кодом, ты можешь посмотреть исходный код любой функции, класса, базового типа и переопределить его. В документации есть ссылки на исходные коды.Ключевые слова для поиска:https://www.google.ru/search?q=python+переопределение+методовhttps://www.google.ru/search?q=python+магические+методыНа сайте IBM например, есть хорошие статьи:https://www.ibm.com/developerworks/ru/library/l-python-elegance-2/https://www.ibm.com/developerworks/ru/library/l-python_part_6/
В общем, нашел единственное решение своей задачи в этом скрипте:https://github.com/ahmetkotan/cpbitmapTopng/blob/master/bitmapTopng.pyПеределал его для упрощения в http://ideone.com/OLsIZMВ случае идеона - не могу загрузить и выгрузить пикчу (или могу?). В случае линукса - вот такая ошибка: http://pastebin.com/G1PgwEMGКак быть?
>>699401>with open(dosya,'r') as f:Ты режим забыл
>>699401>dosya: Нет такого файла или каталогаimport osdosya = os.path.join(os.curdir, os.sep, 'LockBackground.cpbitmap')
>>699424Так он по умолчанию жея вообще никогда не писал на питоне, но итак работает вроде. Только файл-то все равно на идеон не передать
>>699401Как файл запускаешь?Shebang прописал?
>>699432Попробовал, хуй. Изначально там было dosya = 'LockBackground.cpbitmap'>>699434Я вообще не знаю, что это, лол. Прочтите внимательно. Скрипт не работает на идеоне, потому что я туда, на идеон, не могу загрузить файл этот. И скачать результат, соответственно, тоже. А у меня на линуксе, видимо, нет никакого PIL, вот он ее и не загружает.
>>699436>А у меня на линуксе, видимо, нет никакого PIL, вот он ее и не загружает.пиздос, с этого и надо было начинатьпопробуй ввести в питоновской консоле import PILесли пишет "ImportError: No module named PIL"то загрузи его>sudo apt-get install python-PILэто сторонний модуль же
>>699436На линуксе он не понимает что ты от него хочешь. Запускай таким образом python script.py
https://github.com/anon276/testingСагалка тредов, бот с функциями парсинга двача и прочееДискасс
>>699310> 2.7.11
>>699454>async>threadingчет я нихуя не понял как это совместимо
>>699461Если ты про CHGK - то это на основе бота Red: https://github.com/anon276/testing/blob/master/Discord_%5Bbot%5DCHGK/release/README.mdХуй знает как там устроено - в asyncio не шарю, если шаришь можешь объяснить на пальцах как оно работает?
>>699443Проверил, есть.>>699446http://pastebin.com/bHumRqiTТакие дела.
>>699454Внучаев, ты таки научился программировать!
>>699475Какой еще внучаев, ты ебанутый?
>>699472>with open(dosya,'rb') as f:попробуй
>>699481Уже. Та же хуйня. А это не может быть из-за того, что аффтар для второго питона писал, например, или для третьего, но какой-нибудь древней версии?
>>699489Щас скачал, У меня на шинде работает.Причем режим "RB" - обязателен, без него функция struct.unpack ругается.
>>699454Поставил класс и подписался на самом деле нет
>>699489>UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 3: invalid start byte>f.read()Автор явно для 2 писал, у вас же в третьем все строки как уникод считаются, вот интерпритатор и ругается. Поставь 2 и попробуй запустить.>sudo apt-get install python2.7>python 2.7 test.py LockBackground.cpbitmap
>>699489>>699497Да, у меня с 2.7 работает, с 3.4 - нет. Вот только итоговое изображение, увы, все сине-голубое. Можешь объяснить вкратце, как эти параметры анпака или фромстринга, или чего там еще, можно переделать, чтобы попробовать исправить?
>>699505тебе обязательно под 3 надо исправить?
>>699515Абсолютно необязательно. Я бы очень хотел исправить результат с синюшной поебени на его ожидаемый жёлтый.
>>699517>синюшной поебени>ожидаемый жёлтыйчто? пикрил - конвертированное изображение? Где ты тут синий и желтый увидел?
>>699519Ну, я не его пикчу тестирую, а сразу свою. Ее итоговые основные цвета - желтый, черный и коричневый. А у меня получается голубой, синий и черный. Я всю эту хуйню затеял только из-за необходимости восстановить пикчу.
>>699520Значит она была закодирована не тем методом, каким ты пытваешься раскодировать. (не RGBA). Попробуй второе 'RGBA' заменить на любой другой метод из представленных здесь:http://effbot.org/imagingbook/decoder.htm
>>699531Первый, второй из двух, или оба?
>>699535второй из двух.
>>699520А ты не пробовал сделать так?from PIL import ImageImage.open(inputfile).save(outfile, 'png')
>>699535А, извиняюсь, совсем отупел, лол.>>699531Тут вообще нет RGBA по твоей ссылке. Замена на любой оттуда - RGB, BGR - unknown raw mode
>>699549Cannot identify image file
А если менять оба сразу - все файлы одинаковые
Платиновый вопрос.Вкатываюсь в Питон. Решил начать с кодакадеми + книжка (?).Какую книгу взять, как связку с кодакадеми и куда двигаться дальше?Алсо, там сейчас урезанный курс с возможностью апгрейда. Стоит ли покупать?
>>699562Какая нахуй связка, если это базовый курс?
>>699568А что тогда? Пробовал читать Think Python - обосрался на первых же упражнениях по рисованию цветков. Пробовал Доусона - хорошо пошло, но в треде сказали, что хуйня. Пробовал Лутца - скучно. Укус питона без упражнений после глав, а для меня это важно.
Какие консольные редакторы есть помимо вима годные?
>>699573Ну так продолжай дрочить на доусона, если нормальные книги для тебя слишком скучные.
>>699575emacs
>>699573>хорошо пошло, но в треде сказали, что хуйняА ты побольше анонов с двача слушай.
>>699595Послушал тебя и больше слушать не стал, пошел учить бейсик.
>>698452Бамп вопросу
>>699562на степике курс пройди лучше
Поцоны почему запрос не правильный? Версия MySQL 5.5. http://pastebin.com/kqxDWXGe
>>700440Где?
>>700444разобрался, оказывается нельзя было таблицу "index" называть.
>>700440Пиздец. Какая-то хипстота заикающаяся ведёт.
>>700565> для того, чтобы получить ОСТАТОК от деления мы можем воспользоваться операцией ПРОЦЕНТАнон, который советовал, ты серьёзно? Это говно вообще кто-то смотрит?
Сидел в б. Увидел пик. Пришла идея написать бота для телеграма, который играет с тобой в вн.Может, соберем команду как с Webm-сайтом?
Поцоны, я тут пытаюсь заполнить большую базу данных порционально, и пришел к вот такому коду.http://pastebin.com/vp6VHpsnМожно ли сделась по-красивее, более pythonic?
>>700647Я бы сделал так - http://pastebin.com/2m7KejLa .
>>700626Там дел на двадцать минут. Можно прямо на баше.
>>699520А ты уверен, что у тебя та же версия bitmap'а? Может у тебя и альфа-канала нет, или битность другая. Распарси хедер и посмотри, что там написано.А ещё скинь свою пикчу, чтобы и мы потестить могли.
чачани, в "гайд У Успех" содержит упоминание неких форумов, что это за форумы по змее? или стака хватает?
>>700817Все на кутях для кроссплатформенности.
Как правильно поступать с зацикленным инкрементированием переменой? То есть, когда она увеличивается до определённого порога (длина списка, скажем), после чего сбрасывается до 0 и всё по новой.Взять, к примеру, покер. Есть круглый стол с игроками. Есть дилер, следующий от него игрок должен поставить малый блайнд, второй — большой, а третий будет ходить. Но игроков может быть не четыре, дилером может быть последний игрок в списке, они могу постоянно повышать, поэтому нужно много раз по кругу проходить на одном и том же ходу.С остатком от деления на длину списка получается вот такая херня — http://pastebin.com/3u4StifY , что не очень красиво. Или вариантов нет?
>>700831Как вариант, конечно, засабклассить список/тупл и делать всё это внутри __getitem__'а, чтобы код чуть короче был, но суть та же останется.
>>700831посмотри, может, itertools.cycle вкатит
>>700851Он по индексам уже не даст обращаться ведь. Да и в функции play_round тоже особо не пригодится, так как не понятно, как следить за тем, что каждый хотя бы раз сыграл.
>>700831Нормально ващет.
>>700831Почому не используешь циклический список и итераторы?Осторожно, батхерт!Но нееееет лучше поебаться с инкрементированием индексов. И после такого, кто еще будет кукарекать что СТРУКТУРЫ ДАННЫХ НИНУЖНЫ АЛОГАРИТМЫ ТОЖЕ ВИДЬ ВСЕ УЖЕ РЕАЛИЗВАВНА ДЛЯ НАС ЛУЧШЕ УЧИТЬ ФРЕЙМВОРКИ
>>700895> циклический списокЧё эт?
>>700897Google, muthafucka, do you use it?
>>700897Как список, только после жопы идет голова.
>>700898>>700899И где он в пифоне?
>>700900Хуй знает. Я питон незнаю, просто мимопроходил.
>>700903>>700903Заебись, пришёл за советом, как лучше, а меня обосрали, что я не делаю это самое "лучше". Да ещё и сам не знает, как же это в питоне сделать. Уёбывал-ка ты в свой тред плюсов.
>>700909> циклический списокЯ знаю как его сделать, вопрос в том, что я незнаю есть ли он в стандартной библиотеке.>Уёбывал-ка ты в свой тред плюсов. Nyet. Мне тут хорошо.А теперь пиздуй читать структуры данных, быдло!
>>700911Ну вот допустим, прочитал я это - http://prog-cpp.ru/data-ocs/Это что же, мне вместо примитивного>player[i % len(players)] ебошить сначала собственый класс циклического списка, заполнять его, прописывая в каждый элемент указатель на следующий, так ещё потом и >player = players[dealer]>while True:>....player.make_turn()>....player = players.next() # тут типа следующий элемент выдаётсяделать?В чём его преимущества на таких мелких задачах? А то получается хотя и якобы "правильно", но уж чересчур громоздко, а я на магическую функцию какую-нибудь расчитывал.
>циклический списокcollections.deque?
>>700821Можно поподробнее, чем они хуже/лучше друг друга с этой точки зрения?
>>700917Как ты заебал, платиновая зелень.
>>700915Ниче не даст. Лишние расходы на абстракцию. Рубрика вредные советыВам шашечки или ехать?Есть нормальный, поддерживаемый, и самое главное логичный метод - кольцевой список.Есть метод с хаком, неочевидный (через месяц попробуй понять что ты написал), ВОЗМОЖНО быстрый, преждевременно оптимизированный метод - ебля с индексами.Выбирай сам. Я бы список выбрал. Обернул пердолинг с указателями в класс циклического списка, и юзаешь через общепринятый интерфейс.
>>700916> double ended queueНет.
>>700923Там rotate есть и прочие ништяки. Посмотри внимательней.
>>700919Ну так запилите в шапку/вики. Как вообще можно что-то понять, если либо пишут без объяснений, либо "я попробовал то и это, мне больше понравилось что-то ещё, а ты используй что нравится тебе"
>>700922Но мне же тогда придётся ебаться с тем, как определить, когда я его целиком обошёл, ведь начальная точка всегда разная, а значит перед началом прохода придётся сохранять эту точку для сравнения. Ну а точка эта будет... индексом.Ради упражнения может и сделаю этот список, конечно, но что-то у меня сомнения, что мне под него придётся переделывать много кода вокруг.
>>700924Возможно, но двусторонняя очередь это не кольцевой список. Кольцевой список просто идет по кругу. Голова - ... - жопа - голова - ... - жопаА тут ты будешь ебаться с rotate.
>>700927Другого ответа и быть не может. Это тебе не Tkinter сравнивать с чем угодно, где ответ очевиден.
>>700928Добавляешь служебный элемент списка тогда. У него нет логики, он по сути невидим. Просто как маркер обхода.
http://stackoverflow.com/questions/23416381/circular-list-iterator-in-python
>>700934Чая этому.
Есть тут те кто работает с питоном, какими навыками владеете?
>>700838наверное, лучше сделать так, по крайней мере ОПЕРАТОР ПРОЦЕНТ не надо каждый раз указывать
>>700935а меня опсыкали за итертулс ((
>>701007>опсыкалиЭто был чай уровня /b/
>>693065 (OP)Помогите разобраться с регулярным выражением. Есть текст типа:1. Основной заголовок 1 – Первый пункт2 – Второй пункт3 – Третий пунктон считывается по строкам. Нужно брать строки с пунктами. Выражение для этого:\d{1,2}\s+(–){1}.На http://pythex.org оно работает нормально, выделяет все три пункта, но в программе import retext1=["1. Heading", "1 – Punkt1", "2 – Punkt2", "3 – Punkt3"]print type(text1)text="""1. Heading1 – Punkt12 – Punkt23 – Punkt3"""tochka=re.compile ("\d{1,2}\..$")defis=re.compile("\d{1,2}\s(–){1}.$")for p in text1: result=defis.findall(p) if (result): for p in result: print p result=tochka.findall(p) if (result): for p in result: print pпосле обработки каждой строки с дефисом выдаётся только дефис, хотя строка с точкой распознаётся нормально. Почему ?1. Heading–––Что значат на Pythex в правок окне Match captures эти дефисы:Match 11. -Match 21. -Match 31. -Ссылка на Pythexhttp://pythex.org/?regex=%5Cd%7B1%2C2%7D%5Cs(-)%7B1%7D.&test_string=1.%20Heading%0A2.%20Heading%0A1%20-%20Punkt1%0A2%20-%20Punkt2%0A3%20-%20Punkt3&ignorecase=0&multiline=0&dotall=0&verbose=1
>>701024сорри, вот ссылка на pastebin с нормальным текстомhttp://pastebin.ru/GtzAByrr
>>700931>TkinterОн то как раз везде зашибись работает.
>>701038И выглядит как привет из 90х.
>>701040Ну и похуй вообще. Да и то это только по дефолту так, темки уже давным давно прикручивать можно.
Анон, нужен совет.Пилю браузерную карточную игру, общение сервера с клиентом через сокеты. Вопрос такой: между действиями игроков нужно вставлять небольшие задержки, чтобы на клиенте успела проиграться анимация и у игроков было время на оценку ситуации. Сейчас реализовал примерно так (сервер асинхронный есличо):for action in game.act(): sleep(1) socket.broadcast(action)Это код контроллера, game.act() - метод модели, который йилдит игровую ситуацию (за один ход игрока она может обновиться несколько раз)Есть подозрение что я хуй и что-то делаю не так, расскажите мне за это.Возможно, задержку стоит вставлять на клиенте а не на сервере? Но тогда возникает проблема с тем, что на каждый ход игрока выделено ограниченное время, и это время будет считаться некорректно если клиент будет хакнут.
Анон, сос.Кто-нибудь тут писал собственный парсер json файлов? В json проблем нет, а с json в пайтон-объект - сложновато
>>701094>парсер json файловeval()
>>701096он же крашится
Аноны, вот вы все в тредике активные такие. А кто из вас работает с питоном по работе и сколько получаете? И сколько у самих опыта использования? Мне интересно, плюс смотрю шансы вкатывания на работу джуном в ДС из мухосрани.
>>701108интересный вопростоже хотел бы знатья школяр-студентота. учу ещё его
Если мне нужно подключить какой-нибудь модуль к джанге, не являющийся джанговым, например пандас - куда его прописывать setting.py? В INSTALLED_APPS?
>>701030>после обработки каждой строки с дефисом выдаётся только дефисУбери круглые скобки вокруг дефиса.
Анон, питон знаю на базовом уровне (переменные, функции, циклы, вот это всё). Хочу написать бота для IRC. Какого бота посоветуешь взять? И как вообще происходит процесс? Я запускаю скрипт, в котором указываю сервер\канал\никнейм и запускаю его и бот коннектится по заданным параметрам?
>>701108Мне не ответили, походу просто так в нём все ковыряются.>>700997
>>701121Спасибо, получилось. Т.е. он его считал как отдельную группу и выдавал только эти группы в результате ?
>>701108Ты мне все равно не поверишь. Да и зачем спрашивать тут? Просто посмотри вакансии - поймешь среднюю температуру по больнице.
>>701151Ты всё правильно понял.
>>701066Бамп, поможите, аноны!
>>701152>какой смысл врать на анонимной борде
>>701261Какой смысл не врать?
>>701108Полгода на удаленке за еду работаю 150$, такие дела.
приветствую всех питонистов и питонисток в этом треде! недавно заинтересовался парсингом и первый серьезный (для меня) проект связан с Викисловарем. суть такова: у меня есть список в котором ~140к слов и я хочу найти на каждое соответствующую страницу. а это значит что мне потребуется 140к запросов. наверняка эти запросы отслеживаются сайтом и их количество будет выделятся на фоне.Вопросы:1. считается ли подобное сайтом(любым) как что-то плохое?2. и если да то могут ли мне запретить доступ к нему, как какому нибудь боту?ps. я новый в этом деле. не смейтесь надо мной слишком сильно
>>701108я, 170к
>>701302Лашпед, выкачай оффлайн-вики и ебись.
>>701302Не знаю как с Википедией, но обычно небольшие ограничения есть. При частых запросах требуют вводить капчу при каждом запросе. Я бы сделал так: Слал запросы, а при блоке залезал под проксю и продолжал.
>>701302Возможно, это поможет.https://www.mediawiki.org/wiki/API:Etiquette#Request_limit
Двачик-скриптачик, ответь, где-же мне практиковать свой великий скилл в написании программ? Знаю питон лучше писечки своей тяночки, а никаких идей по практике нет...
>>701388http://newcoder.io/
>>701388А какая писечка у твоей тяночки?
Какое же говно ваша джанга. Пиздец просто. Магия в каждой дырке, никаких объяснений.
>>701452Оно становится оче логично после некоторой степени погружения. Другой вопрос что само "погружение" хуй проработано нормально - это да. В любом случае магии как таковой (ror'овской, например) в питоне нету.
>>701388Для начала, например.
Что ещё надо учить в придачу к питону? Не заинтересован сайтостроением, больше интересна "сетевая" часть, серверы и прочее, правда сомневаюсь что по такому можно будет найти работу на фрилансе.
>>701460На фрилансе вообще тяжело работу найти по тому, что тебе интересно на самом деле. Зарабаывай бабки, прокачивая скил на том, что не интересно и пили то, что интересно в свободное время, прокачивая скилл. Так большинство делает.
Разработчики джанго - ёбанные конченные мудаки. Это вообще не люди - таких обоссать, убить и выебать мало. Все, кто делают фреймворки на магии - джанго, рельсы и прочее говно - хуже Гитлера. Таких нужно истреблять нахуй. Засунут магию в каждую дырку и ебись потом. Документация - говно. Простыни кода без объяснений. Неюзабельное говно. А те, кто делал РЕСТ фреймворк - вообще уебаны каких поискать. Это же надо, такое сделать. Что хуже, находятся слабоумные которым это нравится и которые это используют. Ёбанные макаки. Заставил бы этих недоёбков всё на ассемблере писать. Суки, превратили профессию в зазубривание километров манов без малейшей мысли. Суки, ну как можно родить что то настолько убогое, как джанго или рест фреймворк? Этих блядей нужно в дурку сдать и заколоть аминазином до состояния овощей, чтобы они срали под себя, а не тащили своё говно в веб разработку.
>>701472>джанго, рельсы и прочее говноНа чем вы предлагаете?
>>701474Например Flask. Что угодно, где минимум магии и всё под контролем.
>>701472У меня такой же баттхерт от Spring. мимо-джавист
>>701480Flask одобряю, но есть мнение что для командной разработки он не очень подходит, слишком гибкий, каждый разраб будет хуячить в своем стиле
Вот поясните за REST Framework. Пишу следующий код. Сериализатор:class UserSerializer(serializers.HyperlinkedModelSerializer): posts = serializers.HyperlinkedIdentityField('posts', lookup_field='username')class Meta: model = Symbol fields = ('username', 'email')Представление:class UserView(viewsets.ModelViewSet): queryset = Symbol.objects.all() model = Symbol serializer_class = UserSerializer permission_classes = [permissions.AllowAny]Потом добавляю в роутер реста:router = routers.DefaultRouter()router.register(r'users', UserView)И роутер реста в обычный роутер:url(r'^api/', include('rest_framework.urls', namespace='rest_framework'))И что получается? Нихуя. При заходе на /api/users/ 404, зато предлагает два роутера, которых я не создавал.>^api/ ^login/$ [name='login']>^api/ ^logout/$ [name='logout']Откуда это говно вылезло?
И вишенка на торте - Москва. Фласк - 24 вакансии, Джанговно - 123. Действительно, чтобы нормально жить нужно быть дегенератом.
Знаете что? В жопу ваш джанго. Буду пилить на привычных технологиях, чем шквариться об эту магическую парашу.
>>701472Где там магия, бля?
>>701457Два чаю. Вкатываются какие-то школьники, осилившие 4 урока на codecademy и 4 главы Лутца. Думаете этого достаточно? Да хуй вам в жопы, неосиляторы. Пока не будете знать всю поднаготную дескрипторов, объектной модели и метаклассов, вам в любой библиотеке сложнее request всюду будет чудиться магия. Сука, горит с вас.
>>701507fix: requests
>>701118В installed apps добавляются джанговские приложения. Для pandas это не нужно. Просто импортируй модуль и используй.
Накидал на коленке аналог REST Framework и оно блядь работает как надо!
>>701108Устроился без опыта, чуть больше полугода работал за среднюю_по_городу_минимально_достойную_зарплату. Недавно прошел аттестацию, подняли зарплату на 75%. Если через полгода не буду получать 250% от той самой минимально достойной, буду искать новое место и найду
>>701522прогроммист что ты делаешь в пр ты ведь не можеь тут дышать
>>701066На хабре была статья, там чувак пилил карточную игру на торнадо. Курил ее?
Допустим у меня в базе есть две таблицы - types и elements. Каждый элемент принадлежит какому-либо типу, у каждого типа по многу элементов. Как запросом в джанге получить все типы вместе с принадлежащими им элементами без цикла?
>>70110880k ДС2, 5 лет знаком с пифоном.
Sup.Есть один Линукс. Нужно написать скрипт, который будет писать определенную команду в командную строку и выполнять её (аки алиас).Например, есть mpv плеер. Его нужно запускать с определенными параметрами по алиасу:movie /path/to/fileА на самом деле выполняется mpv -ab /path/to/file -param >> /param &Это можно сделать на питоне? Куда копать в таком случае?
>>701703А питон то тут при чём? Пиши на баше.
>>701705Питон же тоже, по-моему, может посылать в командную строку значения. Интересно реализовать на питоне.
>>701706Ну ты напишешь на питоне скрипт, который будет выполнять написанную на баше команду... и зачем?
>>701706Но вообще,>import os>os.system("echo AJAJA")
>>701711А как всунуть путь к файлу, который я буду вводить?
>>701715Аргументы скрипта хранятся в массиве sys.argvВсунуть в строку через % или .format
Подскажи те плиз в чём ошибках приоритетов.(a and b) (or) (not a) (and) (not b)
Питоняшки, как сравнить определенную переменную с каждым элементом массива?if ( dvach == (Ваш код здесь) ):
https://habrahabr.ru/company/hexlet/blog/248397/
>>702034if any(i == dvach for i in list):
>>702045Спасибо.
>>702020Эта хуйня выдаст ошибку синтаксиса, операторы нельзя заключать в скобки. По приоритету: not наивысший, потом and, потом or, слева направо
>>702060В задании написано:#Расставьте скобки в выражении в соответствии с порядком вычисления выражения (приоритетом операций). Всего потребуется 5 пар скобок (внешние скобки входят в их число).
>>702069Фуу решил ((a and b) or ((not a) and (not b)))
>>702036Обеими за, вкат в прогромирование с интерпретируемых языков будет начинать только даун, чем меньше даунов в комьюнити тем лучше.
>>702285Можно первым языком взять Pure C, который до задач уровня laba1.c прокачивается за неделю-другую, а потом дрочить интерпретируемые языки, тоже вариант для даунов? Или норм посаны презирают все языки где не надо писать Hui hui = new Hui?
Как в одну строку заполнить массив/кортеж/итд одним и тем же числом?pycharm ругает это:values = tuple(0 for i in range(n))
>>702379точнее код то верный,но пеп8 это не нравится
>>702382Ну попробуй values = (0 for i in range(n))
>>702385мне ж не генератор надо, тычо
>>702385мне подчёркивает "i"грит, что она не используется, и поэтому она не нужна
>>702389>тычоОй, прости, с человеком спутал.
>>702391если переменная цикла не используется, её принято именовать "_"
>>702393не помогло
>>702379values = (0,) * 100500
>>702393ошибся, помогло
>>702393именовал "_i", а не "_"даже и не знал, что так можно
>>702321> Можно первым языком взять Pure CДа хоть нелюбимый школьниками паскаль, зато потом будет не "Hui hui = new Hui" а статическая типизация.
>>702648> Hui hui = new Hui> а статическая типизацияЭто и есть статическая типизация.
>>702681Я о том что выражения с хуями приобретет значение соответствующего словосочетания.
>>702285Схема тебе чем не угодила, а?>>702321Питон не годится для первого языка из-за не совсем логичных и очевидных скоупинга и приведения типов (типа 1 == True, all([1, 0, 2]), etc), а не из-за интерпретируемости или динамической типизации.
>>702725>all([1, 0, 2]) == Falsefix
>>702726Какого приведения типов?
>>701644https://docs.djangoproject.com/en/1.9/ref/models/querysets/#select-related
>>702804Я про то, что 0 == False. И bool(x) возвращает False для 0, None, [], () и даже {} и "". Нахуя?
>>702818Так повелось.> bool(x) возвращает False для 0, None, [], () и даже {} и "". Нахуя?Очень удобно писать что-то типаx=[]if not x: print("not empty")Можешь делать явно сравнение типаif 0 == "":В отличие от языков со слабой типизаций будет работать как надо
>>702818А где 0 не False-то, кроме руби?А остальное — вот так задумано языком. Если контейнер/итерабл пустой, то зачем он нужен? Считай и нет его, пусть false будет. >men = [student for student in students if student.has_brain]>if men:>....print("There are several men in the class, namely: ", men)
>>702818Реально если бы хотел доебаться то вот http://www.b-list.org/weblog/2015/nov/15/real-python-wat/ более актуально, но актуально только для питон2
>>702826Остальное в большинстве своем высосано из пальца, как, например https://github.com/cosmologicon/pywat - если знаешь язык - почти всё это имеет смысл. В отличие от многих приколов в javascript
>>702822Извини, но твой пикрелейтед вообще не релейтед. bool в C99 определен как# define _Bool signed char#define false 0#define true 1Для C, как для кроссплатформенного ассемблера, это нормально, в питоне, где типы вообще не связаны с железом, такое поведение -- атавизм.>>702824>А где 0 не False-то, кроме руби?Посмотри, как в схеме, например. Есть #t и #f, причем, в условиях, любое значение, кроме #f считается за #t, это логично и интуитивно.>Если контейнер/итерабл пустой, то зачем он нужен? Считай и нет его, пусть false будет.Пустой контейнер != отсутствие контейнера.https://www.python.org/dev/peps/pep-0020/>Explicit is better than implicit.>There should be one-- and preferably only one --obvious way to do it.У тебя может быть функция, которая, к примеру, парсит строку со списком значений, при этом она может вернуть и пустой список, либо None, если строка синтаксически невалидна. Чтобы она работала корректно, придется явно сравнивать с None, те же all/any использовать не получится, в результате, нихуя не удобно. Да, в питоне для обработки фейлов принято использовать эксепшены, скажешь ты, но оборачивать каждую функцию в try/except некрасиво и бьет по производительности (если "фейл" ожидаем и не является исключительным случаем, для которых, собственно, эксепшены и нужны), механизма рестартов тоже не завезли, first class continuations? Не, не слышали.>>702826>если бы хотел доебатьсяДа какое доебаться, я как бы понимаю, что такое поведение оправдано для задач, для которых питон предназначен (утилитки там небольшие, скриптики, прототипирование), как первый язык он не подходит, слишком много подводных камней.
>>702873> в питоне, где типы вообще не связаны с железомTrue и False появились точно так же в питоне как константы, они были int изначально, в те времена, когда в питоне и классов то не было. Кстати, иногда, эта особенность бывает полезна например можно делать sum(some_function_which_returns_true_or_false(z) for z in something)
>>702873> либо None, если строка синтаксически невалиднаНихуя, она должна поднять исключение и поэтому твой пример высосан из пальца.
>>702873> слишком много подводных камней.То о чем ты говоришь не подводные камни вообще. Вполне разумное поведение. В других языках камней не меньше.Схема это прикольно, но это экзотика, даже MIT(единственные кто её использовал) перешли с неё на питон - deal with it.> утилитки там небольшие, скриптикиНа питоне пишится дохуя больших проектов.
>>702876Дальше прочитай, что написано.>>702875>sum(some_function_which_returns_true_or_false(z) for z in something) sum(1 if somefunc(z) else 0 for z in something)Чуть-чуть длиннее, зато понятнее.>>702875>они были int изначально, в те времена, когда в питоне и классов то не былоhttps://docs.python.org/2.3/whatsnew/section-bool.htmlЛол, и правда ведь. Не знал.>>702877>Схема это прикольно, но это экзотика, даже MIT(единственные кто её использовал) перешли с неё на питон - deal with it.Guile много где в GNUтом софте используется, как скриптовый язык, гимп, guix, например.>На питоне пишится дохуя больших проектов.И да, я не про популярность и распространенность, а про конкретные недоработки в дизайне языка, то, что большинство dealt with them и считает, что так надо, не превращает их в достоинства.
>>702887> про конкретные недоработки в дизайне языкаЯ их не вижу. Некоторые вещи исторически сложились, всё-таки языку 25 лет.
Посоны, подкиньте мотивирующих историй о том как вкатились в петон.
>>702895Завтра ищешь в интернете книжку Dive into python...
>>702890Люди, которые в совке жили, тоже недостатков не видели. Некоторые и до сих пор ностальгируют.>25 летА что, 25 лет назад люди не могли в логику и не отличали котлеты от мух? Схема почти в два раза старше, тем не менее, сделана правильно, насколько это возможно для динамики.
>>702873>Пустой контейнер != отсутствие контейнера.Ну это я так своими словами выразился, т.е. с точки зрения использования. Если я хочу съесть яблоко, мне не так важно, просто у меня нет яблок. или стоит пустая коробка от яблок — яблоко я съесть не могу.>при этом она может вернуть и пустой список, либо None, если строка синтаксически невалидна. Чтобы она работала корректно, придется явно сравнивать с None, те же all/any использовать не получится, в результате, нихуя не удобно.Я правильно понимаю, что ты хочешь, чтобы вl = parse_string(txt)if l: for e in l: do_something_with_each_element()И условие выполнить даже при отсутствии элементов в списке? Но ведь do_something_with_each_element() всё равно ни разу не вызовется, так и зачем было в эту ветку залезать? А вот all на пустых списках всегда выдают True, что, по-моему, может привести к нежелательным результатам. А any, наоборот, False. Что ещё хуже, ведь если all выдал True, то any никак не должен выдавать противоположное значение, ведь это считай подмножество.>в питоне для обработки фейлов принято использовать эксепшены, скажешь тыНе скажу. Никогда не нравилось это, и использую их только в тех случаях, где действительно что-то не так может пойти. Возможно, конечно, что это именно поведение питона и привело к такому стилю написания кода/мышления, но мне это никогда не казалось чем-то неправильным, непривычным или неинтуитивным. Разве что путаться начинаю, когда на JS пишу.
>>701460Чем бы ты ни занимался, в любом случае потребуется GIT, юнит-тесты, базы данных. Не лишним будет понимание концепций ООП и ФП и умение их применять. Вдобавок можно почитать что-то о программировании в общем (Макконел, Брукс, Спольски).
>>702908>Если я хочу съесть яблоко, мне не так важно, просто у меня нет яблок. или стоит пустая коробка от яблок — яблоко я съесть не могу.Если я хочу съесть яблоко, я загляну в коробку, если их нет -- пойду в магазин, если нет самой коробки, это уже другая ситуация, теперь мне в магазин идти не с чем.>Я правильно понимаюНет.[1, 2, 3][]1 2 3Первые две строки -- валидны, третья -- нет. Можно возвращать None для невалидной строки, тогда в условных выражениях вторая и третья будут приводиться к False, нужно делать явное сравнение (if x is None: ...). Можно еще возвращать два значения кортежом, список и True/False, но, спрашивается, нахуя тогда нужна динамическая типизация?>А вот all на пустых списках всегда выдают True, что, по-моему, может привести к нежелательным результатам. А any, наоборот, False. Что ещё хуже, ведь если all выдал True, то any никак не должен выдавать противоположное значение, ведь это считай подмножество.https://en.wikipedia.org/wiki/Empty_set>For every element of \emptyset the property holds (vacuous truth);>There is no element of \emptyset for which the property holds.
>>702964>Первые две строки>третья -- нетВ первый двух строках у тебя список, а в третьей - циферки через пробел. Это что, входные или выходные данные? Опиши по-нормальному, что происходить-то должно.Про any/all уже и так почитал.>если их нет -- пойду в магазин, если нет самой коробки, это уже другая ситуация, теперь мне в магазин идти не с чем.Мне тоже дедушка с бабушкой постоянно говорили со своим пакетом идти, но я избалован каждый раз новый покупать.
Посоветуйте, как писать python код. Допускаю много runtime ошибок.Какие тулзы есть для проверки кода?
>>702974Pylint, видимо.
>>702976Буду смотреть. Сами то вы какими тулзами для этого пользуетесь?
>>702964А, кажется, понял.func('[1,2,3]') # -> [1,2,3]func('[]') # -> []func('1 2 3') # -> NoneА в чём проблема со сравнением с None или if type == list?Это как ж и с поиском индекса элемента. Нулевой индекс валиден, хотя почти везде Схема это явно не то, что большинство знает/учило/использует 0 это False, поэтому мучаются с проверками > -1.Короче, ситуаций, где [] == False удобнее, по-моему, больше, чем где нет. Считаешь ли ты иначе?>>702970-кун
>>702978linter-flake8
>>693065 (OP)Поясните за PyQt. Это же тупо лепилка интерфеса? Т.е. в нем я набрасываю все кнопочки, потом открываю свой .py в блокнотике и там все прописываю?И поясните за питон в целом, в частности за 1 вещь: можно ли сделать "экзешник" или питон работает только как сервер? Ну вы понели ну или не понели.
>>703031> Это же тупо лепилка интерфеса?Нет, это пистоновская обвязка к графическому тулкиту не знаю как сейчас, но раньше была ещё й урезаная по фунционалу, лепилка интерфейса есть в qtcreator, но он только для крестов енджой ер гавнокуте.> можно ли сделать "экзешник" Можно.
>>696294хах, заработал бакс на том что пиздил конкурсы с других сайтов скриптом
>>703039>Нет, это пистоновская обвязка к графическому тулкитуНе пони>Можно.Можешь вкратце описать процесс?
>>703228>Можешь вкратце описать процесс?Это будет не полноценный экзешник, а просто упакованный твой код + интерпретатор, гугли например py2exe, в гугле же найдешь и другие способы. Есть так же экспериментальные трансляторы питоно-кода в плюсовый, но с кучей ограничений, гуглить Nuitka
Есть один проект джанго, и в нем одно приложение - API. В urls самого проекта, я дёргаю views проекта, который должен отрендерить шаблон в templates самого проекта. Но какого хуя он ищет этот шаблон в приложении API и его папке? Это же нелогично, блядь.
Добавил в сеттингс, заработало.
>>703433дефолтное поведение же - у тебя в settings.py указан либо django.template.loaders.app_directories.Loader в списке TEMPLATE_LOADERS (в старых версиях фреймворка) либо установлен флаг APP_DIRS = True в структуре с названием TEMPLATES (в последних версиях). Оба этих действия приводят к тому, что в ходе рендеринга шаблона django производит поиск в дирикториях с приложениями (app) в поддиректориях с названием templates и только после в директориях, указанных в TEMPLATE_DIRS. Давно не колупал новую джангу, поправьте, если что то упустил.
Посоны, а как в гуях определяется нажатие на кнпоку на самом низком уровне? До всяких абстракций с эвент хендлерами. Нормально ли, если я рисуя что-то в пиглете просто вставляю это:def on_mouse_move(x,y): if button.left_x < x < button.right_x and button.bottom_y < y < button.top_y: button.highlight()Или есть какие-то другие способы? В pyglet'е, вроде, только так все и пишут, но во всяких кутях и т.д., там внутри то же самое происходит? Не считая каких-либо возможных оптимизаций с проходом лишь по ближайшей группе кнопок, а не всем сразу.
Сап. Если мне нужно, чтоб по нажатию на кнопку запускался цикл, который работает там с данными и заранее не известно когда завершится, нужно его в отдельном потоке запускать, чтоб не подвисло или есть в tkinter какие-то параметры для асинхронщины? То есть, вот окно, там кнопка. Нажали, пошёл цикл в фоне, не блокируя ничего.
>>703817Поток наверное.Хз как в tkinter, в pygtk можно дергать в этом цикле просто gtk.main_iteration() и тогда всё ок будет.
ПитонЫ, возможно ли в питоноскрипте в виндовую консоль писать шрифтом красного цвета?
>>703853А этот обрубок консоли вообще в цвета умеет? Если умеет - значит можно, гугл в помощь.
>>703856Умеет, есть winapi-функция для изменения цвета. Самого тошнит от этой недооси, но возникла необходимость написать скрипт.
>>703864А escape коды просто нельзя передать?
>>703868Вроде нет.
Антуаны, хочу поменять род деятельности, и с лютого байтоебства перекатиться в вебдевелопмент на питоне. Что следует знать помимо самого языка, джанго, торнадо и баз данных? Какой оптимальный подход к изучению джанги?
>>703875> Какой оптимальный подход к изучению джангиtutorial почитай на оф сайте и есть хорошая книжка 2 scoops of django.> Что следует знать помимоhttp, основы html/css/js/jquery/и т.п., иметь представление о wsgi, настройке вебсервера и всякого деплоя, mq/celery, redis и подобное, ну git ес-но. Возможно REST и всякие django rest framework.
>>703875торнадо знать не обязательно, тем более сейчас более в моде больше aiohttp/asyncio.Вообще дохуя всего надо знать, стек технологий большой, но ничего прям такого уж сложного нет, просто много всего.
Ну а если основной упор именно на бэкэнд?
Перекат пилите.
>>703913Фуллстак востребованней.
>>703913Всё равно основы какие-то знать надо.
https://2ch.hk/pr/res/703923.htmlhttps://2ch.hk/pr/res/703923.htmlhttps://2ch.hk/pr/res/703923.htmlhttps://2ch.hk/pr/res/703923.html
>>703273Трансляторы нинужны, если мне код на ++ понадобится, то я на нём сразу и напишу.
>>703853colorama
>>703933Так пиши сразу машинный код (байткод питоновской вм), хуле ты.
Sup, анончик.Я в очередной раз сажусь учить питон по заброшенной книжке Доусона. Забросил из-за лени. Это уже третий раз такое и третий раз я начинаю всё сначала, хотя, всё понимаю, что там рассказывается, но опять всё гоняю по кругу. Я написал просто так, чтобы выговориться. Меня здесь не закидают ссаными тряпками, если я буду с идиотскими вопросами обращаться, если вдруг что-то будет непонятно в нубских упражнениях по книге?
>>704442Доусон - такое себе, если тебе игровой формат нравится, как тем детям-даунам напримерИмхо кодекадеми + чтение Лутца по изучаемым в данный момент времени на кодекадеми темам - пока лучшее комбо для самого старта
Как заставить сигналы в QT передавать в слот keyword-аргументы?TypeError: emit() takes no keyword argumentsДублировать там значения аргументов, которые по-умолчанию стоят и не требуют переопределения - лишняя работа. + последовательность из True, False, False, 5 и тд выглядит пиздецово и нечитабельно, в отличии от count=5.
>>704752На ум приходит только переопределение класса сигнала, или оборачивание слота в обертку, которая будет распаковывать кортеж с именованными аргументами уровня (count=5,) и передавать слоту.
>>704752Передавай словарь, ёпту.