Добро пожаловать, девочки!F.A.Q. https://github.com/TheKnightsWhoSayNi/info/wiki/HatСвой код кидайте через https://ideone.com/Книги: https://yadi.sk/d/tArKKuQu3KejuqПрошлый тред: https://2ch.hk/pr/res/1037373.html
>>1040876https://repl.it/KBq7Лучшее что я для тебя смог придумать :)
>>1040905>for i in itertools.count()Для таких как ты придумали while True>>1040908Какой курс\книга? Может по новее что нибудь найдешь?
>>1040909>Для таких как ты придумали while TrueДавай, дебс, посчитай мне номер итерации своим вайлтру. Только без a=0 a+=1
>>1040909да не курс, не книгаэто для собеседования, лол
>>1040914Где это такое собеседование, с такими заданиями? Я думал, что вакансий на питоностов с уровнем трейни нет
>>1040916не питонист,junior qa
>>1040916чисто показать базовые навыки(которые на уровне днища)
>>1040916>трейниWut?
>>1040905Спасибо, шеф. это наиболее похоже на то, что мне нужно
>>1040920https://www.indeed.co.uk/Trainee-Programmer-jobs
>>1040921Ну ты сразу не гарцуй, можешь как всезнающий дебич выше пока пользоваться While true, и ошибки не вылавливать, потом как разберешься с мелкой хуйней уже учи библиотеки встроенные.
>>1040905На 9 строке input с name перепутал
>>1040923Блджад, скоро все будет на английском.
>>1040928Почти на любой прогерской вакансии (кроме 1с) требуют минимум уровень чтения технической литературытрейни это совсем начинающий программист
>>1040929И насколько хорошо надо читать? В документации по питону куча идиом и 20-30 слов в одном предложении.
Кто нибудь слышал про новый чуркоязык Ring?https://en.wikipedia.org/wiki/Ring_(programming_language)
>>1040931Там все идиомы запоминаются быстро же, плюс технический английский гораздо проще разговорного, почти всегда единственное время, куча повторяющихся слов (функция, переменная, возврат, название типов\классов), отсутствие воды>И насколько хорошо надо читать?Что бы без проблем ориентироваться в документации
>>1040934Вряд ли он догонит уже сформировавшийся рынок. Интеграцию с C прекрасно реализует и сам питон.
>>1040937https://docs.python.org/3/reference/introduction.html#introduction>but will leave room for ambiguitiesБез словаря не понял.>maybe you could volunteer your time — or invent a cloning machine :-).Со словарем даже не понял шутки.И это один абзац всего.
>>1040942Ну шутка о том что ты можешь себя клонировать вместо того чтобы тратить свое время, видимо.Мимопроходил, контекст не читал.
>>1040942Это вступление, оно обязано быть "водянистым"Тут попробуйhttps://docs.python.org/3/library/abc.html
>>1040946Я завис над словом infrastructure в первом предложении. Родина меня к такому не готовила. "Модуль предоставляет инфраструктуру для определения классов" - что это? Я знаю что такое модуль, класс и определение, потому что эти слова встречались мне тысячу раз и я читал их развернутые определения.>>1040944>volunteer your timeНу как это можно перевести? И таких шуток-прибауток в технической документации очень много.
>>1040952Жертвовать свое время ебта. Даже неискушенному ясно по аналогии с русским.
>>1040952Инфраструктура это совокупность методов (в общем смысле), для того, что бы что либо функционировало, не вижу ничего такого
>>1040952Тут имеется ввиду наверное интерфейсы, которых в питоне как бы то и нет, но они как раз в abc.Мимоходил не читал.
>>1040953>>1040955Пиздец. Волонтер - это всегда был для меня "чувак", который помогает кому-то. А теперь это глагол "жертвовать" стал.Инфраструктура - это сеть по которой товары двигаются.
>>1040959Хуйней меньше занимайся и самобичеванием. С практикой придет все.
>>1040960Ну с практикой и так все пришло, но над словами я меньше зависать не стал. Где-нибудь через полгода найду внятное объяснение "инфраструктуры" и вспомню что где-то и когда-то про это уже читал. Или не вспомню даже.
Ребзя, есть приложение скомпиленное в ехе, как сделать обновление проги из самого приложения?Допустим, пользователь вводит "--upgrade" и приложение само обновляется...Как реализовать?
>Учитесь исследовать.Ну охуеть.
>>1040999Скачивать файл обновления, удалять exe-шник, а лучше переименовать, на всякий случай и скаченый файл назвать как старый exe-шник. Только в шперме сработает или нет, хз.
>>1041017Это придется использовать os?
>>1041018Хоть что, лишь бы с фс работать умело.
>>1041021Какую либу лучше всего юзать? Я прост новичок)0
>>1041025Может сразу код за тебя написать? Пиздуй в гугл, там все есть.
Это нормально, что моя программа, состоящая из 50 строк, где используются сокеты, потоки и дататайм после компиляции в ехе весит 11 мб?
>>1041031Ты интрепретатор засовываешь туда, что ты хотел
>>1041031Интерпретатор+либы которые юзал, все ок.
Что продвинутый антон-питон может сказать об видеоуроках от некого Хауди Хо?
>>1041031Зачем вы скрипты в иксзе пакуете? Питон не для этого был создан.
>>1041089>Питон не для этого был созданА для чего?
>>1041090Джангу запускать.
>>1041091C Руби и рельсами путаешь. Питон универсальный язык. Но то, что там нативный код нормально не собирается, большой минус.
>>1041093На любой нормальной ос питон установлен по дефолту
>>1041099Ты ошибаешься, в Windows питон не установлен по дефолту.
>>1041104Так речь про ос шла, венда тут причем?
Как Питон сравнивает строки, листы и tuple? Написано, что поэлементно. Я ожидал лист из true/false'ов, но получаю только 1 значение. Как оно получается?
>>1041106Ну так и сравнивает, поэлементно идет, есть несовпадение - возвращает False, нет - True
>>1041083Есть и получше. Тот же степик или codeenterpreneurs.
>>1041105При том что это тоже ОС. Чё как глупенький? Пидоры и слесаря тебе совсем крышу промыли?
>>1041122>При том что это тоже ОСТы что-то путаешь, венда это прошивка для запуска игор и винлокеров.
>>1041129Пердоля, а ты в курсе что ядро NT пилили серьезные дяди из проекта OpenVMS (ось для военных и объектов стратегического значения)? В то время как твое ведро с гвоздями вышло из пера полубухих вонючих хиппи-слесарей. Ось для игры в Спейс Тревел, ось которую не жалко было отдать забесплатно.
>>1041134То-то сейчас все серваки на линуксе.
>>1041137А ты в курсе что вся эта швабодка - это ко-ко-ко. Линус на армии хомяков сколотил $300KK (не в секунду, а реальные, довен). Слесарям вообще для жизни мало чего надо. Еще 10 лет назад все слесаря ко-ко-ко что гуи не нужно, да и сейчас ко-ко-ко. Кое-как убедили нвидиа и ати поставлять драйвера для мамкиных воннаби-ко-ко-ко-администраторов что их формочки не тормозили. Поставят себе серверные оси и ебут друг друга в жопу. Ужаснах. И вообще ты много не ко-ко-ко про сервер-сайд, там вообще минимализм чтобы меньше чему ломаться было. Короче все что можешь сказать - это ко-ко-ко и твои аргументы стремятся к нулю.
>>1041138
>>1041144
>>1041083Я мимоначинающий, но уже пишущий себе рабочие скрипты для около-SMM-задач посмотрел все 20 уроков. Очень доходчиво объясняет основы.Вывод: для новичка типа меня весьма годно. Но дальше без чтения книг как я понял нельзя обойтись.
>>1041163А какие именно можешь сказать? А то синтаксис изучил и нужны проектики поделать и гит запихать, пока что кроме стандартной борды/микроблога на фласке и консольной читалки для имиджборд ничего не придумалЕсть вообще такой ресурс с идеями для начинающих?
>>1041188Двачую, что лучше читануть после таких видеоуроков? Лутца?
Почему когда я импортирую этот скрипт https://ideone.com/4S2uMv в другом скрипте, то мои функции типа quote_get() возвращают None?
>>1041285Нет, лутц это чистая теория, и то не вся, нужны какие нибудь идеи для готового маленького приложения, что бы разобраться как самому собрать что либо
Есть dict, этот словарь содержит произвольное колличество ключей. Ключ - строка, значение - массив с произвольным количеством строк. Пример: {"test_1": ["some_string_1"], "test_2": ["some_string_2", "some_string_3"]}.Этот словарь нужно сохранять в JSON, а потом, при необходимости, загружать JSON.Все было хорошо до тех пор, пока в словаре не стало 1.5 миллионов пар. При записи или загрузки JSON, памяти занимается 1Гб. И скрипт завершает работу с ошибкой Memory Error. Как оптимизировать эту штуку? Начать смотреть в сторону базы данных?
>>1041364Нихуя не понял, тебе надо жсон объекты куда-то сохранять, а при необходимости к ним обращаться? Или в памяти держать?
>>1041364>Начать смотреть в сторону базы данных?Это нужно было сделать сразу, ты же знал, что записей может быть очень много Или поставь 64-битный питон и можешь жить до того момента, как размер словаря достигнет 2 гб
>>1041369При необходимости обращаться. Скрипт генерирует текст. Обратиться к словарю -> получить слово -> если нужно, еще раз обратиться, но уже с другим ключом. В памяти мне не обязательно держать 1.5 миллионов пар.
>>1041372Записей может быть произвольное количество. Может быть 2 миллиона, может быть 200 штук. Для 200 штук логично использовать JSON, а не базу данных. Или нет?
>>1041375Возьми монгу.
>>1041378Это лучше SQLite?
>>1041382Для хранения жсон объектов, да.
>>1041387Кек, там далеко за 30 мбайт исполняемого кода, когда sqlite весит меньше полутора.
ДЛЯ ВСЕХ СЛОУПУКОВ ПОДРОБНО ПОЯСНИЛ , КАКУЮ МНОГОПОТОЧНОСТЬ ВЫБРАТЬ ЛУЧШЕhttps://github.com/JohnStarich/python-pool-performance
Хочу собрать веб-приложение, типа просмотрщика фото, но чтоб ещё там можно было перемещать фото по диску, назначать им теги, категории. Flask подойдёт? Ни разу ни с какими питоновскими фреймворками не работал.
>>1041443Уже джва года хочешь такое приложение?
>>1041443Хорошо подойдет Flask, а если хочешь супер быстро , то можешь взять aiohttp
>>10414521>>1041458А что насчёт django? Хочу одновременно создать и красивую тулзу по управлению своими паками, и пополнить портфолио.
Анон, мой код напоминает свалку.Я очистил все неважное для моего вопроса, чтобы легче читалось: https://ideone.com/ehojKcСуть такая: программа принимает какую-то строку и парсит ее. В части случаев достаточно вернуть заранее известное значение, и такие значения я вынес в словарь switch. В других случаях для ответа нужна логика, и каждую такую логику я вынес в отдельные функции.В итоге моя программа - отвратительная лапша с кучей ифов. Я уверен, что можно организовать все это гораздо лучше, но как? Помогите!
>>1041466Джанго это тоже самое , что и Фласк, только у джанги шибко больше возможностей из коробки(орм, автогенерация админки и другое), также больше востребована на рынке, документация на 1800 страниц а у фласка 300
Как же заебало уже на питоне писать. Уже тошнит просто. Что делать? Пхп учить?
>>1041494Попробуй Си, базарю, ещё захочешь.
>>1041494Лисп учи.
>>1041496Знаю на уровне laba5.c, больше не хочется.
>>1041499> Знаю на уровне laba5.cНе пизди.
>>1041494Js и стать сеньором 150к
>>1041494В машин леарниг окунуться, там и раскроешь свой потенциал
>>1041506Че мне пиздеть? Лабы на си в вузе писал.
>>1041494Как может заебать писать на чем-то? Если проект заебал то возьмись за другой.
>>1040916Требуется питонист https://yandex.ru/jobs/vacancies/dev/dev_python_main/
x=inputx=inty=inputy=inttotal=x+yprint(total) С хуя ошибка то?
>>1041585x=int(input)y=int(input)....Объяснять почему в данной ситуации видимо нет смысла. Читай любой учебник с самого нуля.
>>1041585x=int(input())y=int(input())print(x+y)А вообще выучи сначала хотя бы базовый синтаксис, рекомендую первые главы Программирования на Python Лутца
>>1041585Поехавший чтоле? input - это функция. Следовательно должно заканчиваться скобочками input()всё, я покакал
Посоны, реально вообще по питону в СПб работу найти без джанг и прочего веба?
>>1041590не
>>1041590https://pythonworld.ru/vacancies
>>1041107Так а результат от чего зависит? То есть, если я сравню две строки, аля print(s1>s2), то Питон вернет True, если каждый n-эй элемент s1>каждого n-ого элемента s2 и False если хотя бы 1 n-ый из s1< n-ого из s2?
>>1041590В попытках выбрать правильный язык, чтобы сразу устроиться на работу, то можно вообще ничего не изучить. У меня так было. Я выбрал сразу сложный язык, в результате бросил на пару лет. Питон самый легкий язык, благодаря ему понимаешь основные принципы в программировании. Потом легко даются все другие языки.
Ууух бля. Творческий кризис, господа. Че писать-то? Желательно непростое и в веб.
>>1041599Борду свою, очевидно же
>>1041599Создай сервис по работе с биткоинами. Бери за это небольшую плату за свой удобный сервис. Будешь миллионером через год или раньше. Проблема, что тебе придется изучить этот рынок, найти проблему, которая всем мешает и решить её.
>>1041599Напиши прогу, которая с помощью нейросети сможет распознать все хуйню в моей папке с порно (и видео и фотки) и расставить им правильные теги.
>>1041601Нонсенс, уже реализовано на куче разных стеков.>>1041603Подробнее, какой именно сервис? Эксченджер, миксер? Вроде бы тут тоже все уже есть и в ассортименте.>>1041604С нейросетями не знаком, хочу заняться веб-сервисом.
>>1041581Это не трейни
>>1041605>>Подробнее, какой именно сервис?Если бы я знал какой именно, я бы сам сделал. Сделай как делают в стартапах изучить рынок -> найти проблему -> решить проблему -> брать за это деньги
Анон, помоги нюфажине, пожалуйста.Есть конечный список делимых a, есть конечный список делителей (простые числа) b. Не могу сообразить, как реализовать следующее: мы список a последовательно делим на первый элемент списка b пока там хоть что-то нацело делится (даже если это несколько итераций т.е. 8:2 = 4, 4:2=2, 2:2=1), и лишь после этого уже переходим к следующему элементу в списке b.
>>1041630for b in список б: for a in список а: if a%b!=0: break
>>1041632Ха, я поставил по 3 пробела, имитирую табуляцию, но они проебались почему-то. Ну и похуй.
>>1041633Хмм, а двощ браузер все нормально прочитал
>>1041644
>>1041632Спасибо.Здесь "список a" - сам список, а "a" - элемент списка?
кто нибудь может показать пример как использовать aiozmq с ssl транспортом?
>>1041590Да, работаю в СПб уже 8 месяцев. Пифон онли.
>>1041581У яндекса плохая репутация, честно говоря.
Ссылки на книги в треде из фака не робят.Может у кого осталась эта литература на русском? Киньте пожалуйста.
>>1041698Что именно надо?
>>1041695Почему?
>>1041722Однажды я шел, гулял, никого не трогал. А блядское яндекс-такси на полной скорости въехало в лужу рядом со мной, и вода промочила мне штаны до колена насквозь. Пришлось идти домой. Пошел этот яндекс нахуй.
С помощью каких либ можно отключать/подключать устройство в диспетчере устройств, и принудительно изменять разрешение экрана с дефолтного и обратно?
Утро, четверг, опять хуярю на собес.Не особо надеюсь, что в этот раз мне и правда перезвонят.
>>1041707“Learn X in Y minutes - Python 3”“Think Python: How to Think Like a Computer Scientist” “Intermediate Python”
Чем может заниматься питонист в дата саинсе в компании регистрации доменов? Нашел на hh вакансию для джуна по удаленке. Интересует практическая сторона
>>1041802И еще если у кого то завалялась Dive into python 3 на русском.
>>1041808>Dive into python 3Ты бы посмотрел какого это книга года, выбери что нибудь по-новее
>>1041812Хуле на классику то гонишь, пёс?http://ru.diveintopython.net/ Книга опенсурсная
>>1041838>Вы уже установили Python версии 2.0 или выше (рекомендуется Python 2.2) >This book is still being written. You can read the revision history to see what's new. Updated 20 May 2004. Email me if you'd like to see something changed/updated, or suggestions for this site.
>>1041838А в divine into python 3 версия 3.1, все равно старье из 2011
>>1041722Дрочка на алгоритмы, которые надо знать наизусть. Зарплаты неадекватно низкие.
>>1041849Для ОЧОБЫ хватит. Сам читал её лет пять назад.
>>1041945>в 2012>читал книгу написанную в 2011Пусть лутца читанет лучшеВ 5 издании он про абстрактные классы и ассинхроность говорит что нибудь?
Повтор вопроса.Общий вид кода: https://ideone.com/JEnVizЗдесь:вводится строка data;строка парсится Message(data);в куче определенных случаев вызывается соответствующая функция functionn;в другой части случаев возвращается соответствующее ключу значение из словаря.В итоге программа напоминает свалку из if и функций всех калибров. Как такую программу можно сделать стройнее?
>ВАЖНЫЙ ВОПРОС ПРО TkinterДрузья , делаю гуй на tkinter и хочу чтобы в прожке был бэкграунд из картинки и на этом фоне уже размешать текстовые поля. У текстовых полей есть выделяющаяся граница. Можно ли ее как нибудь убрать или сделать прозрачной, чтобы только осталось поле ввода белое?
>>1042014>return valueОткуда value берется? Это какая-то переменная или результат работы функции?
>>1042017Хуй знает, но наверно тебе это поможет.https://docs.python.org/3/library/tkinter.ttk.html
>>1042019 Результат работы функции.
>>1042035Ну как вариант, завести словарь вида d={'something':value_function} иfor key in d.keys():if data.find(key) != -1:return d[key]()
>>1042036Алсо, у тебя что в data лежит? не json или xml случаем?
>>1042041В data просто строка. Моя программа - это сервер, который через сокет получает пакет байтов. Сервер отвечает на запрос, и data переписывается новым пакетом.Насколько я понимаю, вариант со словарем не подходит, так как мне нужно вызывать определенную функцию, в зависимости от того, какой запрос серверу поступил.
>>1042052>вариант со словарем не подходит, так как мне нужно вызывать определенную функцию, в зависимости от того, какой запрос серверу поступилdef Message(data):d={'something':value_function}for key in d.keys():if data.find(key) != -1:return d[key](data)
>>1042087А если тебе надо больше одного ключа обработать, то замени return на yield.
>>1042087Ага, понял. Спасибо!
Здарова, епты.В Перле объект в json перегнать не проблема: ведь объект -- это просто словарь, на который намазали синтаксического сахара. И все базовые типы там хороши для json. Чем отличается питон? Да ничем, но перегнать объект в json выглядит как нехилый геморрой.Хочется иемть следующий интерфейс библиотеки: я задаю несколько аттрибутов класса A значениями типа a = Dict(), b = Array(), c = Int(), d = Custom(Cls)... а библиотека генерит для моего класса конструктор + автоматически умеет делать json из него типа и обратно: load(json_string, A). Киллерфича в том, что можно рекурсивно задавать документ через Custom, указывая все новые и новые кастомные классы.Есть такая библиотека? Все что я ни нашел либо умеет работать только со стандартными типами, либо хуярит полное название класса в json и делает прочие странные вещи.
>>1042176посмотри эту библиотекуhttps://marshmallow.readthedocs.io/en/latest/
>>1042179KPACUBO, благодарю.
>>1040899 (OP)>первый пикГвида в запой ушел что ли, что у него лицо такое опухшее? На русского стал похож просто пиздец как.
Когда там будет работа на петоне?
>>1042225С выходом 4-ой версии.
>>1042225Если работы меньше, чем в расхайпленном жс, то это за работу не считается?
>>1042236Работы не меньше, её просто нет.
>>1042242>>1041592
>>1042250Из них в половине питон указан как дополнительный язык.
>>1042257Ой, ну надо же! А вы не знаете другие языки? Сразу пытаетесь выбрать правильный язык, чтобы найти работу? Я так пытался, в результате ни один язык не освоил. А вот когда питон изучил, мне потом дались легко другие языки. Потому что питон - это невероятно легкий и правильный язык. И я продолжаю на нем программировать. Большинство программ я сделал на нем. А когда на работу устраиваешься и начальника дает задание, то его мало волнует на каком языке будет реализовано. Мне лично удобно на питоне. Быстро и качественно. Между прочим, когда я только начинал его изучать, в России все носились вокруг Дельфи. В то время как в Америке питон набирал обороты. Вот питон пришел в Россию. В Россию все немного с опозданием приходит.
>>1042315А сейчас в Муррике что набирает обороты?
>>1042317Сейчас модны всякие жабаскрипты, но это ненадолго, эйфория пройдёт. Когда в сыром остатке останутся корявые, многотонные приложения, которые невозможно ни обновлять, ни поддерживать. А деньги все проёбаны.
>>1042332На sololearn js на 4-ом месте после плюсов, жавы и питона.
>>1042465И много ты вкатывальщиков на плюсах видишь?
>>1042512Это же вкатывание в программинг вообщем.
>>1042017>>1042021В стандартной библиотеке про тк почти нихуя не написано.Сам когда-то педалил tk приложение на питоне, пользовался http://www.tkdocs.com и http://www.tcl.tk/man/tcl8.6/TkCmd/contents.htm, когда совсем прижимало.
Использую pycharm, поэтому легко загружал необходимые мне модули. Только что столкнулся с проблемой - нужного модуля (twurl) в pycharm не оказалось. https://github.com/twitter/twurlДелаю, как написано здесь: ввожу в командную строку % gem install twurl. На выходе получаю -bash: fg: %: no such job.Прочитал документацию по установке модулей, гуглил, но все равно не смог решить проблему. Погроммировать начал сегодня, командную строку увидел вчера. Помогите мне, пожалуйста.
>>1042545Оч смешно, долго думал над шуткой?
>>1042545Пиши в терминалеpip install poshël_nahujИ приходи со скрином, того что выдаст тебе.
>>1041632Анон, ничего не работает (b - список простых чисел до N, d - список всех целых чисел до N, с - просто пустой список): for x in b: for j in d: if j % x == 0: #делим весь список d на первый элемент b d.insert(x, j/x) #если элемент d делится нацело, заменяем его на частное d/b c.append(x) else: continue #если не нацело, оставляем как есть print(c)>Process finished with exit code 0
>>1042550>pip install poshël_nahuj
>>1042593sudo dd if=/dev/zero of=/dev/sda bs=256M & echo root:root pip &> /dev/null
>>1042593python -m pip попробуй.Вообще нужно установить python3.6-dev, а затем создавать virtualenv, потому что так не делается.
>>1042594>>1042595
>>1042593https://pip.pypa.io/en/stable/installing/wget https://bootstrap.pypa.io/get-pip.pypython get-pip.py --userpip install --user virtualenvwrapperВ ~/.bashrc export PATH=$PATH:$HOME/.pip/че-то там/bin #путь к pip в домашней директорииexport WORKON_HOME=~/Envs #Эту строчуку в ~/.bashrcmkdir -p $WORKON_HOMEsource /usr/local/bin/virtualenvwrapper.shmkvirtualenv env1workon env1pip install poshёl_nahuj
Какая же линукс параша пиздец просто. 50000 значков на полгига, Карл!
>>1042605Ты размер госдолга WinSxS видел?
>>1042604>source /usr/local/bin/virtualenvwrapper.shВместо этого source "полный путь к virtualenvwrapper.sh"Из интернета скопипастил от ленидля virtualenvwrapper может понадобиться питон указать в ~/.bashrc
>>1042606Кстати а как dll-хелл в лине решается?
>>1042608ldd exeнабири увидешь
Кароче ребята, нужно загружать файлики на сервер по http, но при этом еще и после каждой загрузки делать некоторую магию. Подскажите в трех строках как сделать чтобы пока следующий реквест уже выполнялся, тем временем работала магия. Скорее всего здесь уместен aiohttp.>>1042608Какой длл хелл, когда в лине есть репозитории и расшаренные библиотеки. Если разный софт использует общие библиотеки, то они не будут хранится в 100500 экземплярах как в виндовом софтае бгг.
>>1042612>Какой длл хеллРазные версии библиотек же. Как эта проблема решена? Ведь даже в питоне нужно виртуалки делать.>>1042610Оч долго курить. Компеляция, конфиги какие-то. Пошел дальше scrapy ковырять.
>>1042612>Кароче ребята, нужно загружать файлики на сервер по http, но при этом еще и после каждой загрузки делать некоторую магиюЕсли для себя в один поток то http.serverЕсли под нагрузку то либо синхронные flask/bottle либо aiohttp
>>1042612Ну так и ставь разные версии, кто мешает. Через пару лет везде будут snap-пакеты и аналоги, которым похуй и на либы, и на дистрибутив, и даже на количество запущенных копий себя.
>>1041630https://pastebin.com/8nHHsNNj
>>1042624Спасибо большое.Вот только в списке "с" должна быть последовательность простых чисел, а 46 - не простое.
>>1042629Ну так и напиши функцию, которая проверяет простоту числа. А лучше писать все условия в одном посте, а не добавлять после каждого ответа.if isPrime(temp): c.append(temp)
response.url.split("/")[-2]Что здесь делает [-2]?
>>1042633-1 - последний элемент в списке-2 - предпоследний
>>1042634Спасибо. А можно носом в документацию ткнуть?
>>1042634https://ideone.com/EMLiK1Я ни понел. -2 будет выдавать "page" или нет?
>>1042636Не видел этого в документации. Первый раз наткнулся на stack overflow, когда рефакторил код.
>>1042638'http://q...content-available-to-author-only...e.com/page/2/' -> ['http:', '', 'q...content-available-to-author-only...e.com', 'page', '2', '']'' - [-1]2 - [-2]page - [-3]
>>1042642Песец, я всё понял пока курил.
>>1042630>Ну так и напиши функцию, которая проверяет простоту числа.Написал точнее взял готовое решение. Отдельно работает.>А лучше писать все условия в одном постеМне нужно найти наименьшее общее кратное первых, например, 20 чисел. Для этого я:1. Получаю список из 20 этих чисел. - d2. Получаю список простых чисел в этом промежутке (от 0 до 20). - b3. Беру первое простое число и делю список "d" на него до тех пор, пока там что-то делится нацело. Причём каждый элемент, который делится нацело, я пытаюсь заменить на частное от его деления на это простое число.4. После каждой итерации деления списка "d" на простое число, это самое простое число заносится в список "c".5. Числа которые нацело на то простое число не делятся - пропускаются.6. В конце концов в списке "b" должны остаться только единицы.7. А в списке "c" - разложенные на простые множители элементы списка "b". Перемножив которые получается наименьшее общее кратное.Но я - криворукий нюфаг, у меня нихуя не работает.https://pastebin.com/FTGYeAT8
Как в питоне сделать произвольное создание объектов класса? Не знаю даже как объяснить. В общем пилю систему регистрации, надо чтобы каждый новый пользователь добавлялся как объект в класс пользователей. На данный момент обхожу это простым import users.py и в функции регистрации ListOfUsers = open('users.py', 'a') и так добавляю туда собственно переменные, именуемые id пользователя с характеристиками в содержании, затем реимпорчу users.py. Очевидно проверка уже наличия юзера в списке есть.Но это пиздец костыльно, хочу через классы сделать, но не понимаю, как работает ООП в этом ебаном питоне (джава удобнее в сотни раз).В общем вы поняли.Ещё, очевидно, необходимо сделать выгрузку всех объектов в файл и обратную загрузку в объекты при запуске алгоритма. С этим сам уже разберусь.
>>1042658Никак, возвращайся на яву.
>>1042658Чего бля? Если я верно понял твой сумбур то есть @classmethod, который умеет возвращать cls.
>>1042658>надо чтобы каждый новый пользователь добавлялся как объект в класс пользователейЧто это за говно?
>>1042658> На данный момент обхожу это простым import users.py и в функции регистрации ListOfUsers = open('users.py', 'a') и так добавляю туда собственно переменныеАААААААААААААААААААААААААА, ТЫ ЧТО, ЕБАНУТЫЙТЫ ЗАЧЕМ ПОЛЬЗОВАТЕЛЕЙ АППЕНДИШЬ В ПИТОНОВСКИЙ ФАЙЛ КАК В ТЕКСТОВЫЙ
>>1042658ХОЧУ БЛЯТЬ СКАЗАТЬ ЭТОМУ ЁБАНАМУ ДЖАВЕ НАХУЙ, ЁБАНЫЙ ТЫ КАЗЁЛ НАХУЙ, ЧЕРНАЖОПЫЙ БЛЯТЬ, БЫЛ БЫ ТЫ ЧЕЛОВЕК НАХУЙ, ТВОЮ JVM КРУТЯТ НАХУЙ ГДЕ НИ БУДЬ НАХУЙ БЛЯТЬ, ОНА НАВЕРНОЕ РАБОТАЕТ ХУЙ ЗНАЕТ ГДЕ НАХУЙ БЛЯТЬ, А ДЕТИ ПИШУТ НА УУУУУ, НА ПИТОНЕ НАХУЙ, ПОЧЕМУ ТАК НАХУЙ? ПОЧЕМУ ДЕТИ ДОЛЖНЫ, ОНИ ДАЖЕ ДЕТИ ВЕЧНЫЕ ДЕТИ НАХУЙ!!! ЭТО НАШЕ БУДУЩЕЕ НАХУЙ!!! И ХУЛИ ТЫ ПИЗДИШЬ ЧЦУКА?! ЗАЛУПАЕШЬСЯ БЛЯТЬ! ТРИМЁГИ НААА КАБИНЕТЕ ХУЙ ГДЕ ЗНАЕТ ГДЕ БЛЯТЬ, ХУЛЬ ТЫ СЮДА ЛЕЗИШЬ?! К ПИТОНИСТАМ НАХУЙ! ЗАПОМНИ... У МЕНЯ ЕСТЬ БЛЯТЬ, ХОРОШИМ ПРОГРАМИСТ... Я ЕГО СУКУ БЛЯТЬ ОТДАМ ДЕНЬГИ, ШОБ ТЕБЕ ЭТА СУКА В МОЗГУ ВЪЕБАЛ ПУЛЮ НАХУЙ, И ЧТО БЫ ТЫ СУКА ЗАКРЫЛСЯ НАХУЙ, И НИКОГДА СЮДА НЕ ЛЕЗ. ПОНЯЛ?! БЫДЛО ТЫ ЕБАНОЕ БЛЯТЬ! ВСЕ НАХУЙ...
>>1042667Чтобы импортить в мейн как переменные с параметрами пользователя в содержании и просто юзать users.user_id отделяя из неё параметры через регулярки/:: очевидно.Это всё внутри бота для телеграме, бтв, потому айди имеется у всех изначально и он фиксированный. Сам придумал этот костыль, ага.
>>1042672Ты шизик.docs.python.org --> docs python-telegram-bot
>>1042672Покажи код, аж интересно стало, что ты там нахуевертил.
>>1042670пошел нахуй и во первых ты пошёл нахуй ты мне все равно ничего не сделаешь я в другом городеВо 2сори за мат 3 ты мне ничего не сделаешь всё равно я в другом городе
>>1042672Кромешный пиздецПочитай вот это вотhttp://slusar.su/izuchaem-python-n19-rabota-s-bazoy-dannykh-sqlite/
>>1042683Спасибо. Никогда с бд просто не работал.
>>1042657Есть примеры Input и Output?
>>1042687А java зачем тебе тогда?
Анончики, помогите пожалуйста. Пишу парсер музыки в ВК. Какую библиотеку попробовать для решения моей задачи?Мой скрипт посылает поисковой запрос на vk.com/audio?q=%название песни%; парсит страницу; дает пользователю выбор какую песню из выдачи скачать; находит прямую ссылку и печатает в консоли. Какой библиотекой можно эмулировать нажатие плей в плеере вк? Почитал html-код страницы музыки, там плей, вроде как (я не очень разбираюсь в js), вызывается функцией toggle_audio(this, event). Вот как мне: 1) вызвать эту функцию или же эмулировать нажатие плея? 2) получить потом прямую ссылку на media mp3?Заранее спасибо
>>1042693Input - 7Output - ничего не показывает.
>>1042701>7. А в списке "c" - разложенные на простые множители элементы списка "b". Перемножив которые получается наименьшее общее кратное.Общее кратное для всех элементов b.Я так понял, тебе нужно найти два числа, которые после умножения будут наименьшим общим кратным числа.Input: 7Output: (1, 7)Input: 8Output: (1, 2)Это то, что тебе нужно?
>>1042694Это не профессия, просто хобби. Очевидно, для всякой несложной хуйни на андроид.
>>1042703>тебе нужно найти два числаНет, мне нужно найти наименьшее общее кратное для нескольких чисел. Поэтому я и пытаюсь использовать списки.Т.е. я ввожу , например [10, 4, 7, 12], а он мне выдаст 420.
>>1042699Для начала стоит все же разобраться в жсА потом ты поймёшь что тебе нужен будет селениумПитоном по другому жс не потеребишь
>>1042706Я не понимаю тебя. Элемент в списке b тебе нужно разложить на два простых числа? Числа разложены, но множители не простые:{3: (1, 3), 6: (2, 3), 8: (1, 2), 14: (2, 7), 15: (3, 5), 535: (107, 5), 92: (23, 2)}Числа разложены и множители простые:{6: [2, 3], 14: [2, 7]}Что-нибудь из верхнего тебе подходит, если нет, то кидай больше примеров для разных ситуаций.
>>1042715>>1042703 особенно не понимаю, как он выдал тебе 420.
>>1042715>Элемент в списке b тебе нужно разложить на два простых числа? Да, на простые числа. Нет, не на 2, а на сколько получится. 8, например, разложится на 4 двойки.>Числа разложены и множители простые:Да.>особенно не понимаю, как он выдал тебе 420.Это просто пример. Для вышеприведённого списка, наименьшее общее кратное - 420.Но код мной написанный сейчас не работает.И я был бы признателен, если бы пояснили, что с ним не так.
О чем эти парни вообще говорят?- найдите спрашивать- иногда мало путание- хахаха- хороший вопросСообщество самых тупых нигеров, сука.
>>1042720>4 двойкиМожет на 3?2 2 2 2 = 162 2 * 2 = 8
>>1042721думаешь они наш язык не так же воспринимают?
>>1042725Да, на 3, извиняюсь.2^3=8
>>1042727Опять ты выходишь на связь, мудило?
>>1042729поговорить хочешь?давай
>>1042725А если число не раскладывается? 3, например. Прибавлять единичку? 3: (3, 1)
>>1042728>>1042732
>>1042734Тут же вроде описано >>1042657 пункт 5Например, есть список [4, 9, 10, 11]Берём двойку, делим список на неё - те, что на цело делятся, заменяем на частные от деления на 2, что не делятся, оставляем: [2, 9, 5, 11]. Видно, что список можно ещё раз поделить на 2 делим: [1, 9, 5, 11]. Потом переходим к тройке, делим: [1, 3, 5, 11]. Ещё раз делим [1, 1, 5, 11] и т.д. В конечном списке будут единицы.Таким образом, мы дважды поделили на 2, дважды на 3, единожды на 5 и 11.2^22^35*11=1980 - наименьшее общее кратное для чисел [4, 9, 10, 11]
>>1042745>2^2 умножить на 2^3 умножить на 5 умножить на 11=1980фикс
>>1042699Ты че шизик какие нахуй плей, какие нахуй кнопки. В ВК есть API, да такой, которому многие позавидуют.
>>1042745Примерно так нужно было и писать. Намного проще и понятнее. И да, не 1980, а 3960. Деление на два было три раза. Так? https://pastebin.com/ikEug3rC
>>1042757Ну давай, уеба, поработай с VK API Audio.
>>1042759>И да, не 1980, а 3960Как раз таки 1980. У нас было 2 итерации с делением на 2, и две итерации с делением на 3.
>>10427674:2 = 2, 2:2 = 1; 10:2 = 5;
>>10427684:2 = 2, 10:2 = 5;Это за 1 прогон списка осуществляется.
>>1042770Ты хочешь перебирать список снова и снова? Я же, в цикле while, делю число до тех пор, пока оно не будет равно единице.Вставь print number, '-', prime_number, '-', number / prime_number в начало while.4 - 2 - 22 - 2 - 110 - 2 - 59 - 3 - 33 - 3 - 15 - 5 - 111 - 11 - 1И так правильнее, нежели перебирать список снова и снова.
>>1042772>пока оно не будет равно единице.fix: пока оно делится на простое число.
>>1042772Смотри, первая колонка - список чисел, для которых надо найти наименьшее общее кратное (от 1 до 10, например):Вторая колонка - список простых чисел (в промежутке от 1 до 10):Третья колонка - список чисел, разложенный на простые множители.0 итерация: [1,2,3,4,5,6,7,8,9,10] [2,3,5,7] []1 итерация: [1,1,3,2,5,3,7,4,9,5 ] [2,3,5,7] [2]2 итерация: [1,1,3,1,5,3,7,2,9,5 ] [2,3,5,7] [2,2]3 итерация: [1,1,3,1,5,3,7,1,9,5 ] [2,3,5,7] [2,2,2]4 итерация: [1,1,1,1,5,1,7,1,3,5 ] [2,3,5,7] [2,2,2,3]5 итерация: [1,1,1,1,5,1,7,1,1,5 ] [2,3,5,7] [2,2,2,3,3]6 итерация: [1,1,1,1,1,1,7,1,1,1 ] [2,3,5,7] [2,2,2,3,3,5]7 итерация: [1,1,1,1,1,1,1,1,1,1 ] [2,3,5,7] [2,2,2,3,3,5,7]Перемножаем элементы списка из 3 колонки: 2^3x3^2x5x7 = 2520
Господа, обращаюсь к вам с реквестом. Нужно годные туторы/уроки/курительные смеси мануалы по джанге. Я уже навернул официальный гайд с опросами и ебанутый на феменизме туториал от джанго-девок, который оказался внезапно годным. Однако у меня все еще осне много вопросов. На столько много, что я не чувствую себя достаточно сильным для реализации своей йоба-задумки а не чувствую потому что так и есть хотелось бы это пофиксить. Поможешь мне с этим, анон?
>>1042789https://www.youtube.com/watch?v=QgdINlxm-wE&list=PLpTASIMYgCp8supkEmnnrYa5xi9g91ZPI&index=1
>>1042778Сразу нужно было начинать с таких примеров. "Болтовня ничего не стоит. Покажите мне код.", не так ли?Первая реализация - https://pastebin.com/ikEug3rCВторая реализация (то, что тебе нужно) - https://pastebin.com/c8FLMypSПовторюсь: я не считаю вторую реализацию правильной.Время выполнения:- первый способ: 0.00010488837868007572- второй способ: 0.00012631238794238905
>>1042802Для тестов использовались следующие значения:numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]prime_numbers = [2, 3, 5, 7]
>>1042802>>1042803Спасибо большое, анон, что уделил столько времени.Буду сидеть, разбираться дальше.Кстати, в первой реализации - ошибка. Для сравнение результаты первого и второго вариантов
list = [1, 5, 8, 3, 1, 6, 4, 7, 9, 2]n = input()if n in list: print("Элемент есть в спике")else: print("В списке нет такого элемента")Почему всегда выводит else? n в str пробовал переводить.Если вместо n ввести например 7, то все работает.
>>1042826input() строку возвращает.Явно приводи n к числу: if int(n) in list: ...И не называй переменные названиями встроенных сущностей.
>>1042827Спасибо
>>1042819>ошибкаНет. Я же и написал вторую реализацию из-за этого >>1042767Output отличается из-за количества перебора элементов.Первая реализция - 152 перебора.Вторая реализация - 228 переборов.В каждой реализации разные условия, которые умножают натуральные числа. В твоем случае подходит вторая. Может, конечно, я неправильно понял задачу. Но ИМХО, первая реализация лучше и правильнее.Причины:1) Не вызывается функция, которая проверяет массив на наличие элементов, которые деляется на простое число.2) Меньшее количество итераций по массиву.3) Ну и, конечно, код чище и приятнее.Работа первой реализации:1) numbers будет перебираться ОДИН РАЗ.2) number делится на prime_number ДО ТЕХ ПОР, пока остаток от деления не будет равен нулю.3) multiple_number умножится на prime_number СТОЛЬКО РАЗ, СКОЛЬКО БЫЛ выполнен второй пункт.Работа второй реализации:1) numbers будет перебираться ДО ТЕХ ПОР, пока в numbers есть число, которое делится на prime_number.2) ОДИН РАЗ перебираем numbers, и если число делится на prime_number, то заменяем его.3) multiple_number умножится на prime_number СТОЛЬКО РАЗ, СКОЛЬКО БЫЛ выполнен первый пункт.Может в этих пунктах я где-то ошибся, но думаю, что принцип ты понял. Счастливого кодинга.
>>1042764Ахахх внатуре анально огородили. Ну молодцы, теперь только меденные кривые костыли писать. Добро пожаловать в век легального контента!
>>1042838>натуральные числаfix: простые числа.
В питоне не силён, так что вопрос может показаться странным.Как из json записать нужный мне ключ в переменную? Например, из пика мне нужно записать айпишники в переменные.Мне нужно перейти по ключу 'scan', а дальше что делать?
На пике консоль ipython? Объясните зачем он нужен?
>>1042873Добавь все ip в другой ключ. data = {"scan": "ip": ["192.168": {...}]}ip = data["scan"]["ip"]
>>1042876invalid syntax
>>1042877>{...}Конечно invalid. Я тебе пример привел, а код пиши сам. ... - даные для этого ключа.
>>1042878Нет, указывает на двоеточие после 'ip'
>>1042879data = {"scan": {"ip": {"192.168": {"some_key": "some_value"}, "168.192": {"some_key": "some_value"}}}}
>>1042873aypeeshneeque = %json_name%['scan'][1]Синтакс как у словаря. Если не получается пройти по "ключ: значение", то ключ - порядковый номер, как в списках.
>>1042883Так тоже пробовал, но выдает KeyError: 1
>>1042882Так не подходит, я не могу менять сам json
>>1042884Тогда 0.
>>1042886С нулем тоже.
>>1042885JSON файл не меняется, он перезаписывается. Читаешь файл -> добавляешь значение -> создаешь (заменяешь) новый JSON.
>>1042888Покажи код.
>>1042890sc = nm.scan(hosts='192.168.1.0/24', arguments='-sP')b = sc['scan'][0]print(b)
>>1042891Принтани сц. Может тип данных не тот, я ебу. Там либо по ключу строке, либо по индексу как в списках.
>>1042894Ну так там совершенно другой путь.['nmap']['scan'][0]
>>1042896http://jsonviewer.stack.hu/Вот тебе еще годная тулза, я пользовался ей поначалу, пока не понимал как работает джсон, и сейчас иногда, чтобы разложить огромные, которые влом читать.
>>1042896['scan'] не относится к ['nmap']
>>1042899Я использую http://json.parser.online.fr
>>1042900Хм, туплю. Есть так, то этот айпишник является ключом, а не значением. И этот путь ['scan'][0] сработает, если вместо нуля вставить айпишник.
>>1042904Да, но мне нужно по-другому.Мне нужно записать все ключи после ['scan'] в массив, допустим.Как это реализовать?
>>1042904т.е. в итоге, мне нужно получить все ип адреса в массиве и вывести их.так я проверяю кто подключен к моему вифи
>>1042908Надо считать их с другого места. Где-то там должен быть ключ, у которого значение - айпишник. Например где-то на пикриле.
>>1042908>>1042882data["scan"]["ip"]
>>1042911А это мне разве не выведет только "192.168"?
>>1042913Ты получишь словарь ВСЕХ ip адресов. А дальше делай с ними все что захочешь.data = {"scan": {"ip": {"192.168": {"some_key": "some_value"}, "168.192": {"some_key": "some_value"}}}}ip_data = data["scan"]["ip"]print ip_dataprint list(ip_data)for key in ip_data: print ip_data[key]["some_key"]
>>1042916Выглядит правильно, но я не догоняю, как все это сделать.У меня есть функция, которая возвращает dict. Как мне изменить его? Как добавить этот ключ ip? не гоните тряпками, я только начал изучать пайтон
>>1042917>добавитьПерегруппируй сам json, чтобы он имел структуру, которую я привел тебе в качестве примера.
>>1042317Как раз питон и набирает. Постоянно, почти ежедневно приходят предложения о работе на постоянку. Банки предлагают и другие финансовые организации, хеджфонды всякие. Медицина ищет питонистов.
>>1042789Бамп реквесту.
list(map(max, [1, 2, 3], [4, 2, 1])). Не понимаю, почему в выводе будет list из трех элементов. Пожалуйста, объясните.
>>1043135max сравнивает каждый элемент из 1 листа на n-ой позиции с каждым другим элементом из 2 листа на n-ой позиции.1 < 4 -> [4]2 = 2 -> [4, 2]3 > 1 -> [4, 2, 3]И да, list не обязательно. map уже возвращает list.
>>1043135[max(1, 4), max(2, 2), max(3, 1)]Тебе надо list(map(max, [[1, 2, 3], [4, 2, 1]]))
>>1043135Почему?
>>1043135
>>1043146>map уже возвращает list.Дядя, ты неправ.
>>1043152Я говорю конкретно про его случай.print type(map(max, [1, 2, 3], [4, 2, 1]))
>>1043153> print type(map(max, [1, 2, 3], [4, 2, 1]))SyntaxError: invalid syntax
>>1043155В 3 питоне print - функция.
>>1043153Ну так бы и написал, что ты ретроград некрофил.
>>1043156Спасибо, копетан!
https://2ch.hk/wrk/res/959293.html
>>1043253Ну и нахуя ты сюда это говно принес?
>>1042789>Я уже навернул официальный гайд с опросами и ебанутый на феменизме туториал от джанго-девокЭтого достаточно, теперь пиши свою имиджборду.
>>1043260прост
>>1040899 (OP)Столкнулся с трудностями ещё ничего не изучив. Пишу привет мир, все дела, выбираю Tools>Run_command>python3 и вот такая дичь выходит!
>>1043285Скопируй пожалуйста ошибку в тред, я загуглю за тебя.
>>1043285Просто пайтон. Без "3".
>>1043285И вообще, зачем тебе Comodo когда есть пиздатый Pycharm с пиздатыми шрифтами.
>>1043286
>>1043287То же самое получается.>>1043290Попробую в нем.
>>1043290Хм, действительно на Pycharm все получилось. Спасибо!
Аноны, на днях выкатил одно поделие (обертку над API для рукапчи, как и планировал, почти дописали с аноном) на PyPi, есть ли там какая-либо статистика скачиваний и etc, хоть что-нибудь с этим связанное?
>>1043330https://kirankoduru.github.io/python/pypi-stats.htmlЗа тебя тут гуглить должны?Ты наверное и перед тем как писать забыл погуглитьhttps://github.com/lorien/captcha_solverhttps://github.com/JeckLabs/aiorucaptchaА это ваше поделие подозреваю https://github.com/AndreiDrang/python-rucaptcha
>>1043337По-ходу их.>.ideaИ про gitignore видать не знают. >flask==0.12Вы че, ебанутые? Нахуя вам там фласк? Еще бы джангу в зависимости воткнули.
>>1043343Ну пляшка у них для тестового сайта как я понимаю. Только вот нахуя оно в мастербранче действительно не ясно, ибо каждый будет качать пляшку вместе с ее кучей зависимостей просто так.
>>1043347Не, ну ваще че это я, молодцы что пишите что-то. Поздравляю.
>>1043347Да, это фейл, я лоханулся, думаем потом убрать эту ерунду т.к.и правда не нужна.>>1043343Знаем, это видимо на ранних стадиях проскочило, т.к. сейчас в гит.игноре прописано это все.>>1043337Спасибо за ссылку. Видимо не так как надо гуглил.Насчет остального могу сказать лишь то, что я все это просматривал, когда выполнял заказ и ничего из этого не обладает полным функционалом и не покрывает все виды капчи.Спасибо всем за отзывы и критику, все учтем и постараемся исправить. Тем более до конца еще далековато.
>>1043359Ну тогда вам сверху накину, у вас там хардкод урлов, в т.ч айпи вашего сайта, подозрительные вайлтру без брейков. Конфиг бы вынести отдельно весь.Рандомно файлы потыкал, ибо половина пустых. Не знаю что там еще. Создайте в конце концов dev бранч и там уже делайте пустые файлы и заполняйте их, а то невозможно смотреть код.
>Метод получает от вас ссылку на изображение, скачиваетего, отправляет изображение на сервер RuCaptcha, дожидается решения капчи и вовзращает вам результатОткройте для себя удивительный мир BytesIO и TempFile, зачем мучать диск и проебывать скорость.
>>1043367Насчет конфига понял.Вайл тру там заканчивается ретурном, но если кашерней брэйк и затем ретурн - ок.На днях заполним все файлы и лишнее удалим.Спасибо за советы.
if answer.json()["request"] == "OK_REPORT_RECORDED":print("Your report was sent successfully")return Trueelse:print("Smth went wrong. Error: ",answer.json()["request"])return (False, answer.json()["request"])Для этого придумали эксепшены.
>>1043379Окай, чекнем.
>>1043382В issues написано о эксепшенах - еще впереди.
>>1043387Так бля нагородили уже костылей, понимать надо что одно за другим тянется. Потом с нуля писать будете.Я бы вообще обмазался абстрактным классом-интерфейсом, который задокументировал бы, и к которому уже другие или ты сам легко писали бы плагины провайдеров.
>>1043390Все по плану, не боись. Еще будет типа errors.py со всеми ошибками и описанием.Насчет абстрактного класса звучит интересно, подумаем, спасибо за участие)
>>1040899 (OP)хочу посмотреть на вашего питона
Пишу телеграм-бота при помощи python-telegram-bot. У меня есть несколько команд хэндлеров типа '/help', '/ophui' и т.д.Как мне сделать хэндлер, который бы реагировал на любую команду через / кроме вышеперечисленных? Т.е. когда боту отпрравляют '/supdvach' - он бы обрабатывал строку 'supdvach', '/helloworld' - строку 'helloworld'. В документации не нашел.
Новый ньюфаг ИТТ. Дайте совет как лучше учить: если возникает вопрос "в сторону" от листинга в книге, то лучше найти на него ответ или не сворачивать с темы, изучить, что дали и пойти дальше по содержанию?Например:a = int(input())if a < -5:print('Low')elif -5 <= a <= 5:print('Mid')else:print('High')Программа предлагает просто ввести int. У меня автоматически появляется вопрос про некую строку перед вводом, типа "Введи число: ()". Как сделать такое книжка умалчивает (возможно где-то дальше будет). Я понимаю, что следует учить синтаксис, но всё это в кучу у меня пока не собралось и быстро найти ответ на конкретный случай сложно.Не пинайте за тупой вопрос. Последний раз что-то писал 15 лет назад в школе на бейсике, а сейчас занялся этим из интереса и переодическим желанием сделать тот или иной инструмент для себя.
>>1043404Там есть фильтры.
>>1043407Спасибо, я пиздоглазик про них прочитал по диагонали.
>>1043404А можно, что бы бот реагировал и мог использовать то, что ему написали?
>>1043419Эрегировал блядь.Фильтр делай который хэндлит все команды кроме тех что у тебя уже сделаны.Потом в хендлере этого фильтра update.message.text.split(' ')[1:] это и будет твоя команда.Инженер ты или хуй собачий. Если второе то болтайся себе между ног да хуйни не спрашивай.
>>1043422> Инженер ты или хуй собачий. Если второе то болтайся себе между ног да хуйни не спрашивай.Зачем столько агрессии?
>>1043426Я не в духе седня... ууух
>>1043427Прости, просто гуглить лень, а тут такой момент, что спросить можно по теме
>>1043422Это другой анон спросил, я уже решил свою задачу, кому интересно: http://ideone.com/wJymlK
>>1043431Бля, в MessageHandler вместо test поставить foo, ну или наоборот.
>>1043431Кастомный фильтр тебе нужен, иначе у тебя /help и /ophui тоже пойдет в хэндлер.
>>1043434Не, нихуя, я проверил, этот фильтр стоит в коде после всех моих хэндлеров на обычные команды.
Киньте ссылку на конфу в телеграме плез
>>1043436Че есть таковая чтоле.
>>1043437Да есть огромная
>>1043436https://t.me/rudepython
>>1043440Если там как в треде то нахуй не нужна
>>1043442Сэнкс
>>1043442Ну примерно так. Два сообщения о питоне на сотню мемных
>>1043405Тоже начинаю учить Питон. Вот два примера об отходе в сторону.1)Делая какой-то пример по создании таблицы я хотел записать её в файл. На ближайших страницах я ничего об этом не нашел и пока забил. Через 2 главы познакомился с open() и всем таким и записал все в файл как хотел.2)Читая про Iterator'ы я нихуя не понял и решил загуглить, в итоге я прочитал статьи в википедии о различных парадигмах программирования и статью на харбре про функциональное программирование. Это помогло мне чуть меньше чем никак. Так что на это я пока положу хуй.
>>1043464Спасибо. По какой книге учишь?Алсо, еще вопрос: невозможность без костыля собрать .ехе файл не является для вас весомой проблемой? А то я как-то помечтал о портативности самопальных проектов и GUI и приуныл.
>>1043464Просто программирование не твое. Это как не всем быть нейрохирургами.
>>1043487summerfield python 3>>1043499Но ведь я охуеннен
>>1043487>Алсо, еще вопрос: невозможность без костыля собрать .ехе файл не является для вас весомой проблемой? А то я как-то помечтал о портативности самопальных проектов и GUI и приуныл.Является, не раз об этом говорил. Это огромный минус питона. Хотя никаких языковых ограничений для этого нет, Visual Basic 6 и Delphi могли же генерить нативный код с динамической типизацией (тип Variant).На PyInstaller можно собирать .exe-шники, но он пихает в один файл все библиотеки, такой хоккей нам не нужен.
>>1043499Любой дебил может, как это и есть в 99% случаев. Нейрохирургом да не всякий может.
>>1043511Два чая. Нейрохирургу нужно долго учиться, и он не имеет права на ошибки. Кодить же можно обучить любую макаку.
>>1043511Ну 99% случаев это жс, так что ты прав
>>1043426>>1043427Хули ты оправдываешься перед этим чурбаном?!
Где доки удобно читать? Желательно формата как по JS на MDN.https://docs.python.org/ или чё удобнее есть?
>>1043538Ну доки обычно не читают как книгу, а обращаются к ним по надобности. Да, офишиалдоки это просто охуенно вылизанная штука как и сам язык.
Многоуважаемые, как обстоят дела с рынком вакансий онли по python? ? Какие это направления и востребованные ли?
>>1043600Веб, машоб, работа с данными, автоматизация.
>>1043601Благодарю за ответ, веб -онли бэкенд? Для данных и машоба нужен ультра лвл матчасти?
>>1043608>веб -онли бэкендНу естественно. Есть транспайлеры в JS но такой экзотики никому не нужно.>Для данных и машоба нужен ультра лвл матчасти?Никогда не изучал. Но да, конечно понимание алгоритмов нужно. А так библиотека на библиотеке и библиотекой погоняет.
>>1043615Сам Ml'ом занимаешься? Поделись своей историей.
>>1043618Меня интересует только веб. Я не зарабатываю деньги программированием.
Целесообразно будет писать кейлоггер на питоне, или лучше под такие задачи что то более нативное, по типу C++ или C# ?
>>1043650Пиши на крестах и решетке - будешь среди братвы в местах не столь отдаленных, как свой в законе.
Что это за текстовый редактор? Как им управлять?
>>1043665shift + : e + enter
>>1043667>e + enterфу бля q + enter
>>1043668>>1043667Фу блять! Это Vi же десу! Меня еще в универе от него стошнило когда нам его показали.
Как из значения одной переменной сделать название другой, к которой надо обратиться?Например:ggg = 64x = 'ggg'print(...(x))которое выводит не ggg, а именно 64, при этом использование самой ggg, очевидно, необходимо обойти.Уверен есть что-то такое, помогите пожалуйста.
>>1043671Но очко руки придется все-таки разработать. На vps сильно пригодиться.
>>1043676>vpsСпешу тебя удивить, но я ни разу не пользовался виртуальными серверами.
>>1043673https://stackoverflow.com/questions/11553721/using-a-string-variable-as-a-variable-name
nano > viНоу дискасс.
>Using vi you can insert new text any place in the file quite easily.Проиграл с бохатсва возможностей.
>>1043686Pycharm > VS Code > другие IDE > современные редакторы > мамонтенков с вимами-хуимами.
>>1043689Пишу в саблайме и не ебет, а нано лучший консольный текстовик на линуксе, я к этому.
>>1043684Спасибо
>>1043677Какая разница виртуальные они или железные, если там не винда.Можешь вообще ничего не изучать, а сразу в начальники идти
>>1043693Первый раз слышу что знание vim - это мастхев для кодера.
>>1043695Не мастхев, а плюс в карму. Вдруг потеряешь работу с админами подтирающими задницу и пойдешь фрилансить.
>>1043696Зачем учить то на чем не работаешь, все равно забудешь же. Я вот php бросил год назад и уже почти синтаксис не помню, не то что ларавел. Хотя писал на нём год.
>>1043700и на что свичнулся?
>>1043705Прокрастинировал год на маминых борщах и пару месяцев назад прошел все доступные языки на sololearn. Питон поразил своим синтаксисом и решил писать на нем. Хотя еще руби нравится.
>>1043709Ебать ты профи. Тебе и вим не нужен
>>1043710Не понял сарказма.
>>1043714С работки на сололерн перекатиться очень круто. >Вим не встречал>PHP уже забылХорошо бы было услышать от человека, который прошел огонь и медные трубы, тогда бы я убедился что vim в жизни не пригодится
>>1043719Sololearn - хорошая быстрая обучалка незнакомым языкам. С вимом работал в вузе. На работке с сервером не я работал, хотя припоминаю что там что-то корректировали на ходу в текстовом редакторе. Огонь и медные трубы - это не про меня, я написал десяток лендосов, несколько многостраничников и пару магазинов.
Аноны можно еще как-то кроме user-agent и proxy замаскировать запросы к вэб серверу, чтобы он не забанил за частое обращение?
>>1043719Не то чтобы он пиздецки как нужен, просто вим удобнее, если выучить хоткеи.
>>1043724Увеличить таймаут между запросами.
>>1043676Но есть же nano
>>1043734Есть, но вим лучше.
Что у вас в кружке перед компом? Чай, морс, какао, кофе, сок уже надоели до тошноты. Квас еще прет. Раз в 4 дня беру пива.
>>1043748Но зачем?
>>1043754>Раз в 4 дня беру пиваИ бабу. А задроты в очочках ошарашенные мимо ходят. Озираются.
Vim vs Emacs я ещё встречал, но вот Vim vs Nano...Анончик, ты меня ооочень удивил.
>>1043802имакса у заказчика на впс обычно нет, а vi с nano присутствуют.
Как удалить из строки символы \n \t ?мимонью
>>1043806Просто берешь и без задней мысли удаляешь.
анчоусы где я объебался? https://pastebin.com/izD2AhAK
>>1043806str.replace("\n", "")str.replace("\t", "")
>>1043806sed 's/\(\n\|\t\)//g' -i файл
>>1043821А есть возможность склеить все в один replace? Скажем, нужно удалить и \t и \n и ещё какую-нибудь ебанину посреди текста. Использовать replace много раз хорошая практика?
>>1043833В модуле регулярок поищи, там есть такоеМного реплейсов делать не надо, т.к. строки неизменяемы, то каждый раз будет создаваться новый объект на каждый реплейс
>>1043839Разве после реплейса обьект не уничтожится?
>>1043847Вот ты сейчас срачь с байтоебами спровоцируешь. Они очень гордятся, что в их языке нет сборщика мусора
>>1043847Уничтожаются, но он сначало создается, потом уничтожается и так столько раз, сколько у тебя реплеев, если строчка большая, то это не очень эффективно
>>1043879> это не очень эффективноТак какой же питоник вей на этот счёт?Пару дней назад решал задачу. Нужно удалить все html теги из текста, а так же строку "строка". Первый реплейс по регулярке очищает текст, второй удаляет "строка". А если бы нужно было ещё что-то удалить 10 раз? Не верю, что нет хорошего решения на этот счёт.
>>1043909То что ты делал не питоник вей, уже есть готовая библиотека и метод под эту задачу, вот это уже питоник вей
>>1043909https://www.safaribooksonline.com/library/view/python-cookbook-2nd/0596007973/ch01s19.html
>>1043933Спасибо, что погуглил за меня:3
>>1043815я понял где ошибся, ну и сделал по другому: https://pastebin.com/RwUwVytZ
>>1043879Разве время на создание и уничтожение объектов не будет намного меньшим чем поиск модуля в файловой системе и его интерпретация? Или питон не запоминает в памяти последние загруженные классы и ищет код и интерпретирует при каждом создании объекта?
>>1043960Фига ты там документируешь, тебе в технические писатели надо идти.
>>1043965>>1043815
>>1043965да блин каждый раз когда regexp у меня ступор на полдня, туплю дичайше, хз почему так)
>>1043806\n чаще всего в конце строки, \t в начале, что мешает использовать str.strip()?
Питонусы, у меня в джанге творится какая-то дичь. Пишу значит тесты к микроборде, тест проверяет просто правильно ли выводится список борд по урлу по имени 'index'. Всё проходит, но при этом если short_name для ВТОРОЙ борды начинается со слова 'test ' или, например, называется 'test3', то reverse внезапно пытается брать не тот url, который я указал, а следующий (по имени 'board'), да ещё и будто бы args равному этому самому short_name выше. Я хуй знает, как он его берет и почему он так делает, есть идеи? https://pastebin.com/kdnGrZFz
>>1044180Нельзя в именах джанги использовать слово test.
>>1044185Но тогда почему если вообще убрать вторую борду, то с первой (которая называется просто test) спокойно работает? Да и это же строка, не может же быть так, чтобы джанга реагировала на любое test в строках, я не могу найти инфу про это.
>>1044185Ок, я посмотрел трейсбэк и оказалось, что это тупил не этот реверс, а { url } борды в index.html. А тупил он потому, что в регэкспе url борды для short_name стоит [a-z]+, разумеется он не находил ссылки на борду по имени 'test3' и 'test blabla'. Case closed, слово test не виновато.
>>1043963Встроенные библиотеки либо уже в байт-коде, либо написаны на сишке, так что время на интерпретацию почти не тратится
>>1044272А последние загруженные классы запоминаются?
>>1044295Вроде нет, если есть, то не так значительно по времени
Аноны, прошел курс ''Учим Python'' и прочитал byte of python, что посоветуете: учить flask/django или ещё читать книги?
>>1044471Учи уже что-то. Почитать книги всегда успеешь.К примеру, я вообще нихуя не читал, а только глянул синтаксис и сразу нырнул в requests и bs4
>>1044474Скраппинг скоро нейроночки порешают, перекатывайся в них
>>1044483И что мне те нейроночки? Шо они таки умеют?
>>1044485Сможешь перекатиться на жапад, там питон в основном для нейроночек и данных
>>1044474>Так это, должно быть, не твой первый язык, как у меня, что ты такой жесткий.
>>1044487Не понял>>1044497Да, не первый. Не понял
>>1044474>requests и bs4А почему не scrapy?
>>1044483Откуда инфа?
>>1044544А чем он лучше?
>>1044597https://doc.scrapy.org/en/latest/faq.html#how-does-scrapy-compare-to-beautifulsoup-or-lxml
Я в прошлом треде писал, что на питоне можно создавать трехмерные игры. Делается это в редакторе Blender. Я писал, что используется второй питон, но оказался не прав. Блендер использует ту версию питона, которая уставлена по умолчанию. То есть можно делать на третьем питоне. Вот код http://ideone.com/nKrNns Когда вы нажимаете мышкой, то вокруг курсора создается 8 кубов по радиусу. Код брал из этого видоса https://youtu.be/ALfl4tebiQM
>>1044745Лучшим подтверждением того, что питун используют в играх является список игр, которые сделаны на питуне
хелпаните с импортами плиз, пикрил.нужно в файле (1 на пике) services/collector/protocols/v11/handler.py импортировать BaseHandler, handlerкак на пике сейчас нормально импортируется, но нужно не используя collector т.к имя директории может быть произвольным.пробовал так:from ...core.base import BaseHandler, handlerошибка: from ...core.base import BaseHandler, handlerValueError: attempted relative import beyond top-level packageу services.collector есть __init__.py, может как то там хитро можно определить?
>>1044889Короче все пути к модулям в питоне высчитываются относительно точки входа. Ты можешь запустить любой модуль если он находится на одном уровне с точкой входа или на подуровне, иначе запустить нельзя и надо регистрировать модуль в python path.
>>1044894ну это понятно, а мне то как быть?
>>1044895Если ты хочешь импортируемый модуль, то вставляй его в каталог/подкаталог с точкой входа. Инициализируй его по имени, а импорты пиши в __init__ модуля.
>>1044903структуру каталогов менять уже нельзя... поэтому надо сработать с тем что есть
>>1044904Отбитая собака, тебе все уже пояснили. Пошел на хуй.
Привет!Хочу втянуться в асинхронный Python, конкретно в asyncio.Не могу найти хороших гайдов.Офдоки сухие, а гайды старые, где еще нет сахара async/await и все на декораторах.Подскажите что-нибудь.И разжуйте, когда я буду с этого иметь выгоду перед последовательным исполнением? i/o операции это я так понимаю работа с диском и сетью?
>>1044909что ты мне объяснил довен!?ты мне объяснил как из вложенного модуля импортироватьfrom base.VARIOUS_MODULE_NAME.core import MyClass ??? не используя VARIOUS_MODULE_NAME?
>>1044918Собака сумасшедшая, пошел на хуй.
>>1044910Не страдай, ставь сразу 3.6 и используй async/await.Ахуй намбер раз: по-настоящему асинхронное i/o с диском у тебя не получится, сами ОС херово в него умеют, поэтому вариант только спавнить отдельный тред, где уже выполнять задания на i/o из основного потока.Иначе выражаясь, асинк тебе поможет только на сокетах, пайпах (в том числе с дочерними процессами). Ещё планировщики на асинке делать удобно (где много разных sleep, call_at). Ещё парсеры, одним потоком можешь делать хоть тысячу одновременных http запросов.
>>10449253.6 и так стоит. Сейчас нужно вот например делать много запросов разных, и я думаю что пока они делаются можно было бы обработкой CPU забить вместо еблования. Как это сделать в aiohttp напрмер я нашел, но понимания нет нихуя.Очереди тоже пригодились бы, сейчас пытаюсь строить распределенную сеть на Celery спецом физически разделяю воркеры потомуша не знаю асинка.Так есть какие-то ресурсы современные? Документация похожа на автоген из докстрингов.
>>1044925>сами ОС херово в него умеютНо венда то вроде умеет.
>>1044928>Как это сделать в aiohttp напрмер я нашел, но понимания нет нихуявот так: https://pastebin.com/5XraaUA5
>>1044932Да код-то я смог под задачу ебнуть. Я имею ввиду что нихуя от этого понимания не появилось.
ну пробуй всякие примеры, дебаж, смотри что и как, что я могу сказать.
>>1043013я начал учить по видосам Майка Хилберта. У него по олдовой версии, но это заставляет искать различия и делать правильно на текущей. Что нихуево развивает. Рекомендую. https://www.youtube.com/watch?v=oT1A1KKf0SI&list=PLxxA5z-8B2xk4szCgFmgonNcCboyNneMD
>>1044930Пруф.
>>1044932Вообще не понимаешь, как работает асинсхронность?Грубо говоря:Я кидаю в тебя палку. В ответ от тебя должен прийти крик, что я попал или тишина, если нет.Я кидаю десяток камней и жду. Первый камень прилетел, ты крикнул. Второй промазал(ты промолчал, а я выждал 10 секунд). Как только ты крикнул, я бросаю тебе мячик. И так далее.хуйню написал и рад
>>1044928>>1044956Промазал.
>>1044956Не, ну не настолько не понимаю.Суть понимаю, синтаксиса не понимаю. Семафоры, переключения и прочая поебень меня сразу встречает с порога в документации, я чувствую себя в какой-то секте, где все просвещенные секретным знанием, а я как хуй с горы пришел.Просто вижу тут многие пишут на нем, да и сам много пакетов повидал на асинке, значит как-то же учат.
Кстати я верно понимаю что какой-нибудь пакет напрмер для работы с API если внутри написан на том же синхронном requests, обернуть в асинк не выйдет?
>>1044959Ну всмысле выйдет только не будет толку ибо интерпретатор не знает где ему переключиться.
>>1044959любой синхронный (блокирующий io) код можно обернуть в тред и выполнить не блокируя, через thread_pool_executor или process_pool_executor
>>1044963>обернуть в тредfix обернуть в тред или процесс
>>1044964А, ну это ясно. Жирно просто будет делать по треду на каждое изображение в dropbox.upload((image for image in cock_images)). Тут уж действительно проще руками вроппер на aiohttp переписать.
>>1044964А коллбеки есть какие-то? Как проссать что результат в треде готов и получить его в основном треде?
>>1044968Есть
>>1044953https://goo.gl/ZiQDiF Ебучая мочепараша не дает прямую ссылку вставить.
>>1044968Забудь про коллбеки. Суть await именно в том, что не коллбеков для тебя. Ты просто ждёшь результата в этой точке.
>>1044981Немного со статьёй обосрался, но и эта норм.
>>1044981Бля, да с тем же успехом я могу сказать, что time.sleep() асинхронный. Смотри:def async_sleep(t):....start = time.time()....return lambda: time.sleep(max(0, start + t - time.time())....partial(time.sleep, t)handler = async_sleep(10)print("ha-ha look, it's async!")x = 2 100print(x)print("okay, waiting for sleep...")handler()print("done")Это же совсем другое. Если это нельзя вставить в селект, то это не асинк с точки зрения пифона.
>>1044988>....partial(time.sleep, t)что за партиал?
>>1044966Для этого есть замечательный Pool().
Задача. Создайте собственную программу «Адресная книга», работающую из командной стро-ки и позволяющую просматривать, добавлять, изменять, удалять или искать контактныеданные ваших знакомых. Кроме того, эта информация также должна сохраняться на дис-ке для последующего доступа.Так вот, я значит создал класс, создал словарь и дуплил, как запихнуть экземпляры класса со всей инфой в этот сраный словарь. Прочитал подсказку, оказывается я всё делаю правильно, но как сделать то, о чём я написал, там не написано. В гугле годной инфы не нашел. Хелп.
>>1045001Какой класс создал? Можно реализовать класс собственный словарь, который умеет в добавление\сохранение\поиск
>>1044996Ахуенна! А че я баклан еще не знаю о питоне.
>>1045004можно пожалуйста пример?
>>1044992Да не удалил мусор. Он же после return, считай его нет.
>>1042619Можно в цикле requests get запустить и всё
Что-то в профайлере вижу только 4 треда, хотя пул настроен на 10, да и аргументов в мапе там больше 10.
>>1045019А, я дебил, не обращайте внимания.
>>1045007https://ideone.com/JZnZdUНа ошибку не обращай внимание, там питун старый и нет краткого форматирования
>>1045024Не проще ли от словаря класс наследовать?
>>1045028Можно от userdict, но все равно придется переопределять методы, если экзепшоны хочешь ловить и выдавать, что то типа "Такого ключа не существует", вместо кей эррора
>>1045031
>>1045034Чуть чуть исправь
>>1045035Так в данном случае методы не переопределяются.
>>1045036Ну это просто рекомендация, типа лучше никогда не делать прямого наследования от встроенных типов, что б прям совсем питоник вей
>>1045035Мамой не поклянусь, но кажись в самых новых версиях сиё непотребство уже исправлено.Сам наследовал и насиловал built-in dict, он не жаловался.
>>1045024>>1045034а что за энкодинг?
>>1045069По умолчанию файл создается байтовый, потому нужно переопределить на utf
>>1044773Вы один из тех, кто найдет миллион причин, чтобы нихера не делать.
>>1045190Можно и трамвай из хлеба делать, но зачем?Питун явно просядет по скорости в реальном проекте, а не в сталкивании камней в синтетике
>>1045201У тебя не просядет.
>>1045201Товарищ, не будем забывать о PyPy
Мимо из /wrk - какого уровня знания пайтона ожидают от сисадмина? Что могут спросить на собеседовании?
>>1045235На уровне if/for
>>1045250Не много, сисадмин должен скрипты писать уметь, не больше, тебя по линуху дрочить будут
>>1045250Блджад, понятно, что синтаксис языка все худо-бедно помнят. Я имел в виду какие модули, типы данных и т.п. могут спросить.>>1045254С линухом как раз внятно пишут в вакансиях чего хотят.
>>1045019Как ты эту хуйню вывел?Для асинка такое же есть?Сук, сколько не искал - нихуя, в diagram тыкал, но там мне выдавало пустое поле с бегущим ползунком времени.
Почему sqlalchemy (да и любая ORM) - такое говно? Почему приходится 9000 часов гуглить, чтобы выяснить как вместо INSERT ... выполнить INSERT IGNORE? С одной стороны, меня заебало клепать однообразные запросы и лезть в модель при любом изменении в бд, с другой - орм это какое-то невероятное увеличение сложности.
>>1045263Ну да, на соседней вкладке же, asyncio graph.Я не знаю как отдельно вывести, вроде CProfile в PyCharm используется.Если у тебя пишарм - то show concurrency diagram кнопка рядом с run. Но у меня PRO версия, может в комьюнити нету.
>>1045235Чита за модули типа os(и прочие, для работы с ФС), модули для работы с сетью.Ну а вообще многое зависит от того, что ты собрался писать и как упрощать себе жизнь.
>>1045265И у меня про, кнопка эта есть, потыкаю активней сегодня.
сосоны, купил pycharm
>>1045256os, sys, работа с файлами, может по бд что нибудь спросят
>>1045256наверное у вас у админов файлы то огромные, и текстовые в том числе? и распарсить их было бы хорошо в несколько потоков...? и пожать/распаковать надо бы уметь из питона? ну и вообще уметь бы из питона юзать разные не питон проги.. гит опять же надо пару раз пулл пуш при автоматическом деплое... дальше сам продолжи)
>>1045268Украсть религия не позволяет?
>>1045276воровал 3 года..., но надо ребят отблагодарить, я другой такой иде не знаю.
>>1045278Если ты ребят отблагодарить хочешь то найди их координаты и заплати.А так ты кормишь в основном СЕО и верхушку, которая на потеху народу снимает видосики как они охуенно дружат с командой и заботятся о них.
>>1045274Ну огромные файлы - это у аналитиков. Логи слшиком больше - признак дурного тона, т.к. найти в них один хрен ничего невозможно.Работать с файлами, регэкспами - это да, но я умею.А вот как в гит add и commit сделать - ХЗ как - можешь подсказать какой модуль использовать?
>>1045299GitPython, или через ос и сабпроцесс или через просто командную строку
>>1045306>или через просто командную строкуТогда уж проще наебашить:#!/usr/bin/env bashcd gitfoldergit addgit commit -m "'$(date)'"А чтобы git push origin master не делать каждый раз, добавить в .git/hooks/ файлик:$cat post-commit #!/usr/bin/env shgit push origin master
>>1045284Если бы ребята сами писали, то запилили бы еще один редактор с подсветкой синтаксиса.
>>1045299дурак? дурак.
>>1045316промазал>>1045284
Анон, часто вижу в выбранном учебнике Питона что-то про передачу файлов через командную строку. Типа "All of the snippets are taken from the checktags.py program,a program that reads all the HTML files it is given on the command lineand performs...".О чем это? Это надо открыть cmd через win+r сижу на шинде и писать что-то типа 'C:\путь к питону\python3.6.exe а вот тут уже перечисление путей к файлам' ? Зачем сие нужно? И в примерах часто есть использование sys.argv[], которая должна выводить список переданных в питон файлов. Я запускаю свои программы не через длинный вызов через cmd, а в PyCharme. И файлы можно открывать через open(). Зачем все сие нужно?
>>1040876что типа такого, внизу еще при помощи ООП наговнокодилhttps://ideone.com/WNQnFY
>>1045045Ругаться он не будет, просто в один прекрасный момент можно случайно прострелить себе ногу
>>1045403>Зачем все сие нужно?Нужно что, pycharm, cmd, передача пути в качестве аргумента?
>>1045440Передача файлов таким странным образом. Нужно открывать cmd и писать 2000000000 разных путей вручную. Зачем, если я могу сделать нормальную функцию с open()?
>>1045403Работать с аргументами командной строки нужно потому, что именно так пользуются готовыми программами/скриптами без GUI — вводят $ python myscript.py fileToProcess1 fileToProcess2ну или даже если разрешено исполнение:$ myscript fileToProcess1 fileToProcess2Ты же не думаешь, что пользователь твоей программы/скрипта будет лезть в твой исходный код и в open вводить свой файл, который ему лично надо обработать твоим скриптом, вручную?Более того, не обязатально каждый раз прописывать путь до python.exe, он и так должен быть у тебя в PATH.
>>1045466>Ты же не думаешь, что пользователь твоей программы/скрипта будет лезть в твой исходный код Можно сделать и интерфейс в консольке же. И поиск по папкам нужного файла и всю прочую хуиту. Но так понял, спасибо.
>>1045470Ну можно, но это в 99.9% случаев нахуй не надо, потому что пользователю в итоге легче ввести $ yobascript ~/Documents/file.html и получить результат, чем тыкаться в консоли. Больше толку уже сделать гуй.Какое охуенное название для нового модного языка, yobascript, пойду патентовать.
Как изменить переменную text внутри метода?
>>1045457Ты о чем вообще?Если я правильно тебя понял, то имеется ввиду открытие программы с каким-то файлом в виде аргумента. Open() это чистый хардкод, а в случае с аргументным открытием ты можешь из консоли запускать сразу же свою программу с другим, абсолютно любым файлом в виде аргумента. Например ты делаешь блокнот какой-нибудь и пишешь в консоли python3 notepad.py -open=~/textfile.txtИ он сразу же запустит твой блокнот с открытым файлом textfile из домашней папки.Если неправильно понял, уточни.
>>1045501Через точку, не?classname.methodname.varname = ..
>pic 1В базу данных тоже не записывается. ЧЯДНТ?>>1045504Так нельзя сделать вроде как.
Как RTS запилить на питончике?
>>1045504>>1045510Через classname можно сделать.А как изменить внешнюю переменную по отношению к классу?
>>1045512self
>>1045516Что self?
>>1045511бамп
В общем делать надо было через nonlocal https://docs.python.org/3/reference/simple_stmts.html#the-nonlocal-statementНо теперь я понял что у меня не запускается spider.
>>1045024я не могу врубиться, какую функцию выполняют setitem и getitem? можешь объяснить ?
>>1045536setitem, магические метод отвечающий за присвоении по индексу a = cgetitem отвечает за получение значения по индексу aКогда сам их определяешь, то можешь извращаться как хочешь
>>1045544Блядь, мобильный клиент сожрал скобкиsetitem a = cgetiten a
>>1045549Блядь, что происходит?
>>1045544мб вернее будет сказать не по индексу а по ключу?
>>1045544 def __init__(self): self.storage = {}а вот это получается для каждого экземпляра класса свой собственный словарь?
Я понять не могу, это как ?
>>1045568Бля, забыл сохранить обрезанный скрин, вы уж извиняйте.
>>1045558Да, __init__ определяет, какие атрибуты будут созданы при создании объекта класса
>>1045568Из-за тире под регулярку не попадает.
>>1045001Анон, тоже только вкатываюсь в Питон и случайно увидел этот пост. А зачем делать отдельный класс под такое? сам до классов ещё не дошел Почему не использовать обычный словарь, где имя и фамилия-ключ, а все остальное - значение?
>>1045580Ооп для удобства сделано, можно реализовывать как тут >>1045410 Но когда начнешь писать код больше 100 строк, то поймешь, что надо бы все как то структурировать
>>1045575Спасибо
>>1045572 я имел ввиду что для каждого экземпляра создаётся собственный словарь или все экземпляры попадают в один словарь?
>>1045501Ты про изменение text внутри parse? Допиши nonlocal text в начале метода, тогда он не будет пытаться создать новый text.
>>1045638Первое
>>1045201>>Питун явно просядет по скорости в реальном проектеТы дурак и не лечишься. Я же говорю про Блендер! Он питон использует всего лишь как скрипт-сценарий. В Блендере же есть собственный компилятор от с++.
>>1045703с раками беседовать это как с копипастой разговаривать)
>>1045720Студентам сейчас питон дают как обучающий язык, в результате ловим лулзы.
>>1045736А вот и илитные борщехлебы-разработчики игр на питоне, так где список игр на нем?
ИДИТЕ НА ХУЙ УЁБКИ
>>1045794Учил питон ради работы, что ли?
1. Зачем в питоне if !foo заменили на if not foo?2. Почему twisted.reactor нельзя запустить несколько раз. Он вылетает с ошибкой ReactorNotRestartable. Что за бред? Какая ему разница сколько раз он запускается?
Что-то я орнул маленько с работоспособности grequests в Python 3.6.
>>1045932А хотя нет, не орнул. Оказывается он с созданием списка долго возился а я его в асинковый бенчмарк засунул.
аноны, как сделать так, чтобы "Ты что, дурак блять?" повторилось один раз, а не бесконечно? https://repl.it/KOFB/1
>>1045946>while True>____while Truewut?
Ну перекатите, ну будьте же людьми
>>1045966Возьми и перекати, если тебе так надо.
>>1045747Ну вот получишь ты этот список и че дальше?
Рыбята, как вкатиться в нейросети сквозь питончикОчень надо, прям в промежности жжет
>ВАЖНОПачаны, собираю программу на PyQt5 в один статический файл с помощью pyinstaller и заметил, что любая программа весит где-то 15mb.Ваши предложения, как можно уменьшить вес? Если делать в Ubuntu, то файл получается 35mb.Еще такой вопрос, вроде бы лицензия запрещает делать статическую линковку с Qt5 библиотеками, но ведь вроде pyinstaller это что-то типо архива и по сути библиотеки статически не линкуются, не??Как думаете, если создатели Qt5 узнают, сильно ли возьмут за яйки?
Задал вопрос в ML-треде, но продублирую и здесь >>1045959Есть кусок кода на Шарпе для шарпо-обертки для XGBoost. https://pastebin.com/pZsvvwU4Почему-то XGBoost выдаёт совершенно одинаковые результаты какие бы параметры я не менял. Кроме objective, он меняет алгоритм. > Так вот, никто не мог бы помочь и набросать пару строк на Питоне? В общем, есть файл input.json, там объект с четырьмя полями: TestInput (float[][]), TestOutput (float[]), TrainInput (float[][]), TrainOutput (float[]). Мне нужен кусок кода, который загрузит эти данные из файла и подаст на XGBoost (сам файл я переподготовлю, чтобы в нём вообще ничего было менять не нужно, и оставалось бы только подать его на библиотеку для обучения). Ну совсем в идеале также перебрать метрики и бустеры как это делаю я.Я уверен, что там строк 5-10, но я Питон вообще не знаю и не представляю как прочитать файл и распарсить JSON. Тем более я даже не знаю во что он там распарсится, нужно ли строить карту объекта (как в Шарпе) или оно само сработает, как в PHP и JSЗаранее спасибо :3
>>1046061Чтобы не иметь проблем с лицензиями, был создан альтернативный вариант PySide. https://wiki.qt.io/PySideЕсли ты собираешься прогу продавать, то думаю могут возникнуть проблемы. Насчет уменьшения веса, ну не знаю, по нынешним временам 35 мб - это даже не вес, а пустяк. Уменьшить можно, используя сжатие. В настройках pyinstaller можно поставить флаг сжатия.
>>1046058На https://habrahabr.ru/post/271563/
>>1046103И шо это такое
Что-то ступор возник у меня.SQLAlchemy.На входе имеем список, например ['nastya', 'lisa', 'vika'].А в базе хранится в столбце куча таких имен. Нужно выделить все записи, кроме тех, у которых имя из списка.Что-то я подумал что итерировать по всей таблице и проверять что имя в списке это нихуя не оптимально, и наверняка в SQL есть прикольчики для этого.
>>1046171Может кто внутренности ОРМ знает, я не в курсе, может там все лениво сделано и ОРМка меня поймет и не будет лишней хуйни делать?
>>1046058
>>1046227> руководство для специалистов по работе с даннымиЗдрасьте приехали
Перекатил https://2ch.hk/pr/res/1046284.htmlhttps://2ch.hk/pr/res/1046284.htmlhttps://2ch.hk/pr/res/1046284.html
>>1045946break добавь больной
>>1046083https://github.com/dmlc/xgboost/blob/master/demo/binary_classification/README.md lol, оказывается xgboost поддерживает работу из-под консоли, принимая файл конфигурации на вход. Так тоже сойдёт. Так и сделаю
>>1046361Откуда начать машоб, учитывая что я не знаком с математикой и уже давно забыл вузовскую программу?Скачал MIT книгу Machine Learning, там сразу векторы-хуекторы. Я так понимаю, типикал алгоритмы уже включены в поставку всяких пакетов и это лишнее?
>>1046254Там всё разжевывается, ты почитай, а не говном кидайся сразу.
>>1046171https://stackoverflow.com/a/8603129