F.A.Q. https://github.com/TheKnightsWhoSayNi/info/wiki/HatДля кода https://repl.it/languages/python3 Не скидывайте сложные исходники в тред, у двоща ебанутое форматированиеКниги https://yadi.sk/d/tArKKuQu3KejuqВ предыдущей серии >>1199534 (OP)
Переношу сюда дебаты. >Лутц>Самерфилд>Бизли >СвейгартРешаем какую книгу выбрать для освоения вкатывальщику, после "Укуса Питона" В прошлом треде мнения разделились на диаметрально противоположные, но при этом все пришли к мнению что Лутц - неактуален, и годен только как справочник.
>>1210312>книгу>после "Укуса Питона" Ты там змеиным академиком решил стать? И работай уже.
иди работай уже
Мда, поймали на собеседовании на том, что аргумент по умолчанию, оказывается, mutable. Вот я лох обоссанный. Пойду перечитывать Лутца.
Перекачу вопрос сюда.Аноны, есть нормальные попенсорс проекты CRM/ERP на джанге/другом пайтон-фреймворке(а вдруг)?Глянул на гит(хабе/лабе) и приуныл. Одна система от индусов, кривая и ущербная. Вторая вроде и нормальная, но выглядит как админка джанговская и т.д.
>>1210315>Ты там змеиным академиком решил стать? у меня есть свободное время, хочу изучить достаточно глубоко, а не нахватавшись поверхностно потом тупить с гуглом и стаковерфлоу по каждому простейшему вопросу в нетривиальной задаче. В любом случаи в прошлом треде прошла забавная ситуация с разделением мнений и надо таки придти к консенсусу КАКОЙ МАТЕРИАЛ НАИБОЛЕЕ ИНФОРМАТИВЕН и более актуальный и усваиваемый для обучения
>>1210329Тогда тебе нужно учить алгоритмы и компьютер саинтс, а потом просто гуглить, как это реализовать на питоне.
>>1210312>Решаем какую книгу выбрать для освоения вкатывальщику, после "Укуса Питона" Пока что никакую, на первое время знаний из укуса хватит сполна. Потом можешь при необходимости читать отдельные главы из лутца, хотя лучше обращаться к официальной документации.И вообще, в первую очередь надо программировать, а не читать книги. Чтение книг тебя не сделает программистом
>>1210329>тупить с гуглом и стаковерфлоу по каждому простейшему вопросу в нетривиальной задачеПрости, но так все и будет, даже если ты наизусть выучишь всего лутца. Научиться чему-то можно только решая проблемы, которые возникают в процессе разработки реального приложения.
>>1210312Укус Питона же говно. Надо было сразу Свейгарта рашить.
>>1210358он использует моментами литературные обороты, и для человека со средним знанием английского это превращается в попаболь с гугл транслейт
>>1210413А обычно за сколько люди могут научиться, кодить ну там как мидл хотя бы?
>>1210428Зависит от человека и опыта работы. Понимаешь, боссу нахуй не нужен человек, который знает змея. Ему надо, чтобы раб умел в какой-то фреймворк, знал шаблоны программирования, соответствующее мышление имел, ну и всякую ебань типа фронтэнда со всеми этими вашими ангулярами/вьюджиси/джейкуери, базы данных с их выборками и сортировками.Короче, если за год освоишь это все на уровне, что к тебе будут обращаться - ты мидл.
>>1210428>там как мидл хотя бы?сейчас бы мерить реальный показатель знаний, шаблонным клеймом продакшен макаки
>>1210329самерфильд -> лутц -> документация джангияскозал >>1210413содомит
Пришел на собес и резко забыл что такое рекурсия.Ебаный стыд.
>>1210528>резко забыл что такое рекурсия>резко забылпереволновался?
>>1210322Odoo тебе не подходит? Она монструозная правда.
>>1210368Свейгарт так-то переведен
>>1210559Сэр, прошу предоставить убедительные пруфы. Ибо в сети встречал лишь англоязычный вариант
>>1210559Всё, нашел на яндекс диске у какого то анона.
>>1210308 (OP)На 3 оппике похоже на взгляд сверху во время опенсорса.
>>1210583Запоздалый пруф, если кто-то все же не верит. По остальным книгам не в курсе (а есть ли они?).Минус в одном: это скан книги, поиск по словам внутри Акробата работать не будет, придется по старинке — вчитываясь в оглавление.
>>1210531Видимо. После собеса вспомнил только, что на втором курсе универа было аж.Забавно, про рекурсию не рассказал ничего, зато про GIL пояснил.
>>1210607>После собеса вспомнил только, что на втором курсе универа было аж.То есть ты не знаешь, что такое рекурсия, и всерьез считаешь себя программистом? А что такое "переменная" у тебя на собесе случаем не спрашивали?
>>1210611> ВспомнилЭто значит, что знал, но резко отрубило память, на собесе.
>>1210437Ну я образно выражаюсь, как бы навскидку просил сказать. Понятное что это все абстрактные величины.>>1210435Спасибо большое за прямоту. >фреймворкКстати что за фраемворк? И какой именно стоит "знать" ? Я гуглил что это такое, и понял что это примерно что-то между системой и кодом и железом . Но даже текст вики до меня не очень дошел, слова там сложные. Мне интересно что такое фраемворк обычными словами, если кто может своими словами сказать,плиз.>фронтэндаЭто типо html и прочее? На счет БД да я это сразу понимал, так как бд в любом крупном проэкте есть и используется.
>>1210715Фреймворк (набор библиотек) — конструктор для построения приложения. В вебе это django. Фреймворк снимает с тебя 95% рутины, правда заставляет выучить правила работы фреймворка и с фреймворком. Например, тебе нужен сайт, который будет выводить некую инфу из БД. Вуаля, джанга тебе в этом помощник. Ибо развернув фреймворк ты уже можешь коннектится с БД, делать выборки, за счет паттерна программирования mvc выводить это все на главную страницу сайта. Сумбурно написал употребив некоторые термины, которые тебе сейчас не понятны, пусть они станут тебе ключевыми словами, это востребованные вещи в современном мире.Не доходит с первого раза - не беда, у тебя вся жизнь впереди. Не дойдет сейчас отдохни и вернись позже, только не затягивай, а то пропадет интерес. Можешь банально спотыкнуться на какой-нибудь ерунде и потерять иньерес. Пропусти и вернись позже.Фронтенд - это html+css+js. бекэнд - змей. Опять таки, в фронтэнде свои фреймворки bootstrap или angular например. Это отдельные люди на крупных проектах делают. В мелких фронтом загимаются все подряд.Анчоус, не хватайся за все сразу в момент потеряешь интерес и желание заниматься. Учи постепенно. И пойми что ты хочешь, ибо вебдев и просио разработка две разные вещи. На змее можно писать кроссплатформенные приложения для каких-нибудь рассчетов, а можно в вебе формочки выводить. Определись что тебе интереснее и ближе и в том направлении копай.
Спасибо большое, ты все очень подробно и понятно написал.Я все понял>>1210727>Можешь банально спотыкнуться на какой-нибудь ерунде и потерять иньересОй ну вот это я уже на себе испытал один раз, вот недавно опять вернулся , но уже с иммунитетом на такое.Фронтенд - это html+css+jsА вот я не понимаю зачем Js тут, если он так же ООП как и змей, или просто js как-то работает с html & css по особенному?>не хватайся за все сразу в момент потеряешь интерес и желание заниматьсяДа уж, ну вот змея я начал учить просто потому что он более менее простой и расспространенный. Я просто подумал что это объектно-ориентированный язык и что он может все что может c++, JS и т.д Что конкретно меня интересует? Наверное сам кодинг, создавать какой-то софт интересно. Я хочу уметь и сайты, и графические приложения и просто полезный софт идейный, типо антивирус, помошник какой-то, чит, игрулька, приложение напоминалка, искуственный интелект и т.д , это все было бы интересно создавать, свое же будет.Неужели что бы зарабатывать обязательно учить JavaSсript и Html?
>>1210729> А вот я не понимаю зачем Js тут, если он так же ООП как и змей, или просто js как-то работает с html & css по особенному?Не в этом дело. Дело в том, что змей выполняется на стороне сервера, а вся графическая срставляющая — это уже браузер делает. Для отображения форм — html, css для красоты этих самых форм, а js для «свистоперделок» и не только. JS в фронтэнде единственный ЯП, есть куча диалектов и фреймворков, но увы это стандарт для взаимодействия между юзером и сервером. Асинхронный запрос между сервером и пользователем не возможен без js. Так что он нужен в обязательном порядке.> Что конкретно меня интересует? Наверное сам кодинг, создавать какой-то софт интересно. > Я хочу уметь и сайты, и графические приложения и просто полезный софт идейный, типо антивирус, помошник какой-то, чит, игрулька, приложение напоминалка, искуственный интелект и т.д , это все было бы интересно создавать, свое же будет.Это конечно хорошо, но изучение вот этого всего у тебя уйдет вся жизнь. Ну и антивирус ты не напишешь на змее. Что-то типа анализатора с базой сигнатур, остальное уже байтоебство и низкоуровщина, которую можно на ассемблере и си реализовать только.> Неужели что бы зарабатывать обязательно учить JavaSсript и Html? Посмотрим правде в глаза, если у тебя нет престижной вышки в области программирвоания, то вебдев вполне себе реальная ниша подзаработать. Слишком низкий порог вхождения и слишком большая конкуренция. Работы будет предостаточно, а вот оплата будет зависить от места.
>>1210735Да уж, ты сейчас прямо огорчил немного меня. Получается Js нужен для работы, если я хочу делать web, но что касается приложений на смартфон? А конкретно Js обязательно всего учить для этих "свистоперделок" или лишь какой-то фраемворк? Кстати почему Jython не справляется с этим всем?Еще вроде есть какой-то фреемворк, который позволяет на питоне писать код Js..> JS в фронтэнде единственный ЯПЧто такое Яп?Вообще если честно, я не ищу работу именно в веб-программировании. Я все таки продолжу учить змея, только потому что мне он нравится.Но пожалуй Js придется в будущем начать учить, раз для создания сайтов он так нужен. Спасибо тебе большое, что столько разжевал мне тут.
Есть родной маковский питон 2.7. Есть скачанный с сайта 3 версии (точную не помню). Как сделать так, чтобы при python zalupa.py в сосоли у меня работал интерпретатор 3 версии и чтобы не поломались родные утилиты использующие 2 версию?
>>1210776Никак не сделать так.можно поебаться с разными терминалами. Стандартный терминал юзай для работы с змеем2, а fish, например, для змея 3. Только в конфиге фиша создай алиас python=путь до змей3
>>1210782А как мне обновить скачанный с сайта питона питон? Или проще снести его нахуй и поставить через homebrew?
>>1210783Либо качаешь каждый раз обновления с сайта питона, либо хоумбрю.
>>1209978>>1209973То есть не надо список файлов создавать?Или надо, но тогда придётся последовательно их вызывать, проверяя закрытие каждого файла?
>>1210815Да
>>1210825Это ответ на первый или на второй вопросы?Или на оба?
>>1210828Да
>>1210749> что такое япебать, уебывай нахуй из треда, над тобой даже рофлить не сгорев невозможно. Пиздец, 'хочу уметь все' - начни с изучения поисковых запросов, больше половины говна что ты спрашиваешь можно найти первой же ссылкой в гугле
>>1210735Постой. То есть ты говоришь о том, что если и залезать в веб, то только со знаниями джанги, ЖС, хтмл, цсс?
>>1210851Яп - яплакал. ру :3Хватит агриться, ночью писал. Голова не сооброжала. Только сейчас понял,что это язык прог.
>>1210492а если начал с лутца?
>>1210954Ну так а как ты хочешь?Даже в парсинг без понимания хтмл не влезешь нормально.Никто не говорит зубрить, но понимание должно обязательно быть.Из js хватит jQuery, а для верстки простой почитай примеры для bootstrap3/4.Мимодругойанон
>>1210587Нашел, кидай. Не жадничай.
>>1210954Нахуй ты сракой читаешь и ещё только последний пост? Я с самого начала писал, что выбор стека зависит от типа работы. Где-то будет достаточно знания джанги и азов верстки , а где-то придется писать модули под собственную cms/crm с применением всяких других фреймворков. И да, в вебе знание и умение в html+css+js обязательно.Я себе не представляю бекэндщика, который напишет парсер или шаблонизатор не понимания как устроены эти самые html/css/js.
>>12110222ая ссылка в гугле
>>1211166третьябыстрофикс
>>1210972Она у тебя и сейчас не сооброжает.
>>1211168Спасибо.
>>1211184подлец
>>1211228Говорить правду - это не подло.
>>1211237Что плохого в том, что новичок интересуется по поводу языкав треде с данным сабжем?
>>1211265Абсолютно ничего.
Ребят, есть трехмерный numpy массив iarcloud[x][y][z]. В нем больщая часть элементов равно 0, но где то рядом друг с другом тусуются значащие элементы, мне нужно найти границы этой области. То есть мне нужно вычленить все элементы, которые не равны 0, но имеют хотя бы один соседний элемент равный 0. Писать 26 кривых проверок вручную нет желания. Есть какой-то инструмент который облегчит задачу?
http://pycon.ru/2018/participation/price/17к, стоит?
Слушайте, можно ли нормальные игры пилить на питоне? Я для этого собираюсь его, собственно, и изучить. Си окончательно доебал меня
Так. Как без ебли и анальной боли при удалении в дальнейшем/обновлении/без конфликтов между собой поставить на Mac OS питон последней версии? И чтобы они никак с родным 2.7 не пересекались и не конфликтовали. И чтобы я мог потом легко указать на него путь в пайчарме, дабы мои скрипты интерпретировались последней версией питона.
>>1211488virtualenv
>>1211488Я поставил себе miniconda3, в терминале питон просто заменился на последний, а сама conda мне кажется очень удобной, чтобы библиотеки устанавливать и обновлять
В PyCharm в некоторых случаях не работает автокомплит при использовании сторонних библиотек. Конкретно - Tag из библиотеки BeautifulSoup. Это можно как-то починить?
>>1211484на питоне нет, кури тему с GIL. Доебал си - бери раст.
>>1211532Это из-за динамической типизации. С этим ничего не поделаешь, разве что аннотации к каждой переменной дописывать.мимо с такой же проблемой
>>1210749Для приложений на смартфоне - java.
Вкатился недавно на первую работу, провели по губам кодом на 2к строк, который мне придется рефакторить. Там try-блок в try-блоке, зачем это? Есть ли какие материалы по хорошим практикам кодинга в петяне, рефакторингу? без абстракций типа макконелла или принципов SOLID, нужны конкретные примеры
>>1211360Бамп, помогите пожалуйста
>>1210315Работать после прочтения 150-страничной книги ? Это нереально, вот что нужно знать недо-джуниору помимо всего что написано в "Изучаем Python-4" Марка лулза1. Стандартные типы данных2. Разница между туплами и листами3. Множества (set)4. Стандартные библиотеки (sys, os, re, datetime)5. PEP86. variable swap (x, y = y, x)7. Разница между range() и xrange()8. Минимальное значение в листе9. Удалить повторяющиеся элементы в листе10. str.split()11. Mutable and immutable types12. Менеджеры контекста13. Итераторы и генераторы14. yield15. lambda functions16. Разница между методом класса и статическим методом17. Анонимные функции18. Шаблоны проектирования (Singleton, Decorator, etc)19. Магические методы20. Sync and wait (python 3.5)21. Плюсы и минусы множественного наследования (это зло)22. New style and old style classes23. MRO24. _slots_25. Дескриптор протокола26. Multiprocessing and threading27. Metaclasses28. Функция type()Это с собеседования на жуна
>>1211484>Слушайте, можно ли нормальные игры пилить на питоне?Движок юнити и визуальный новеллы.Ну или можешь изобрести "велосипед".
Поясните за многопоточность
>>1211697Помнишь вчерашнюю очередь мужиков с оголенными хуями к тебе? Так вот, каждый пояснявший тебе за зеку — это поток. А вот когда в тебя 2-3 хуя одновременно пихали — это многопоточность.
>>1211640Я тоже примерно 300стр прочел, та же проблема.Но ты не парься. Я понял одну фишку.Все не надо запоминать это, просто "ознокамливайся" как можно. Запоминай только самые нужные в практике темы, как "функция" например, или классы
>>1210317?Мьютабеллность дефолтных аргументов зависит от типа данных которые в них запишешь. Как раз по этой причине принято не использовать как аргументы по умолчанию списки и словари, потому что на все вызовы такой функции они будут общие.
>>1211484Можно писать что угодно на чем угодно. gil не проблема. Проблема только в том с использованием чего писать. Тот же самый популярный pygame годится разве что для простеньких 2д, а для разных графических красивостей тебе так или иначе потребуется какая-нибудь opengl.То есть проблема в отсутствии нормальных фреймворков, потому что на питоне мало кто пишет игры. Если собираешься делать 2д - вперёд, pygame
>>1211360первое что в голову пришло sparse matrix а дальше идешь по элементам и смотришь рядом они или нет
Как последовательно открыть каждый файл из списка?
>>1211764def spisok = [1...10]open spisok(1)open spisok(2)...open spisok(10)
>>1211767
>>1211767А если это видео/аудио? Как проверять, что файл проигрался, прежде чем переходить к следующему?
>>1211772if fileStillPlaying(): dontPlayNextFile()
>>1211702классик но я туп для туториалов хотелось бы наглядный код увидеть с подробными коментами
>>1211796Ищи в гугле глорихолв в своем городе.https://www.tutorialspoint.com/python3/python_multithreading.htm
>>1211772import * from multimedia...play( open( spisok(1) ), open( spisok(2) ), ...)
>>1211702>>1211804
>>1211807Ай-яй-яй, у кого-то синтакс еррор.
>>1211814Макаба пробелы съеласпасибо Абу
>>1211807>>1211774Спасибо, но сделал через модуль playsound.
>>1211819Я про импорт.
>>1211821Типичный оверстакер: спрошу, а потом буду гуглить.
>>1211822А что с ним не так?
>>1211823Я гуглил. Мне предлагали использовать методы из pygame или os.В первом случае вылезала ошибка, во втором проигрывался только первый файл списка.Playsound я нашёл только сейчас.
>>1211825Подумой.
>>1211827Если что, совет на будущее: спрашивать здесь не стоит. Тут пидоры, нихуя не отвечают. Лучше на реддите спрашивать.
>>1211830Подумол, не понял
>>1211832Окей. Спасибо.Мэйлач уже не торт
>>1211832Постите сами смешное. Ему к тому же ответили вообще-то.
>>1211843А мне не ответили. По двум разным вопросам, блять.
>>1211868Наверное вопросы либо слишком сложные, либо слишком легкие.
Анон, а можно на питоне сделать самозапускаемый скрипт на 2 недели?
>>1211898cron
>>1211900Спасибо.
>>1211887>слишком сложныеThis. Слишком углубленный. На реддите был только один ответ, не лайкнул никто. Зато вопросы уровня "Как работают лупы for и while, я нипанимаю я вить прачитал статью!" только в путь апвоатятся.
Можно ли в Jupyter.notebook с помощью ANSI символов организовать цветной вывод? Пробовал несколько решений со stackoverflow, ручной ввод всяких \x[31и разные библиотеки - ничего не работает, всё равно ч/б, хотя на том же stackoverflow у людей оно работает. Это как-нибудь фиксится?
Анон, помоги скриптом, пожалуйста!Он должен брать перые два значения каждой строки из .CSV и прогонять следующую команду: [code] curl -s https://api.github.com/repos/${1 значение}/${2 значение} | jq '.created_at' [/code]И записывал результат вместе с оригинальными двумя значениями в новый .CSV.
>>1212102Или альтернативу этой строки на питоне, если возможно.
>>1212102https://youtu.be/Xi52tx6phRU
>>1212102os.systemsubprocess.call
>>1212114Сейчас посмотрю, спасибо.>>1212116А не подскажешь аналог команды для питона?Она загружает пик релейтед и вынимает значение строки "created at" при помощи Jason
как построчно конкатинировать вывод из двух файлов питончики?
без панды желательно
олмост
ларчик просто открывался)))
Ох уж эти ОНАЛИТИКИ.from contextlib import ExitStackfilenames = ['a.txt', 'b.txt', 'c.txt']with ExitStack() as stack:....files = [stack.enter_context(open(fname)) for fname in filenames]....for lines in zip(*files):........print(' '.join(lines))
фиксанул, если кто подскажет как побырику выпарсить то что между кавычками буду признатилен, примерно представляю, но у самого горшочек уже не варит
и да опчик мы все еще помним за сайт и ждем его оче!
зато работает ололо, однако ощущение что можно было сделать лучше все еще не покидает меня
>>1212208Что за редактор у тебя?
>>1212241vscode
Кстати, для вкатывальщиков могу поделится небольшим тестовымНеобходимо написать мерджер логов для хай-лоад приложения с сохранением временного порядка, возможностью указания лог левела не ниже заданного и создания файла с смержиными логами, оформить в виде модуля, входные данные: список файлов и уровень логов. А так же отдельный скрипт, который позволяет работать с этим модулем через пайпыПодразумевается, что список файлов может быть очень большим, каждая запись лога занимает одну строкуЛоги имеют такой формат[timestamp] [level] [source] messageнапример[Wed Oct 24 2012 14:32:52 +0200] [error] [client 127.0.0.1] client denied by server configuration: /export/home/live/test
>>1212172zip
>>1212209Какой сайт?МимоНеОп
>>1212209Простите, немного со сменой работы завал, как освобожусь, так сразу запилю
>>1212246> Подразумевается, что список файлов может быть очень большимИ о чем это говорит? Как действовать? Первое что пришло на ум: Создавать очередь из файлов-заданий и выполнять через multiprocessing пачками по n-штук.
>>1212250>zipв питони?>>1212251>Какой сайт?https://sites.google.com/view/pypry/pytonach>>1212253>работы завал, как освобожусь, так сразу запилюмы так и понели кек, уже почти полгода прошло лол, а тем временем слепленное из говна и палок за 30 минут работает и продолжает приносить людям пользуне смотря на то что ты педрилла выкинул его из моей шапки
>>1212254>И о чем это говорит?Значит, что в оперативку все сразу не загрузить>Создавать очередь из файлов-заданий и выполнять через multiprocessing пачками по n-штукИзлишне, файлы все равно придется читать последовательно и мултипроцессингом ты тут ничего не решишь
>>1212260>продолжает приносить людям пользу>Сайт с 3.5 книжками, парой видосиков и форсом всратого вс кода от человека, который знаком с питоном на уровне сортировки шешебок по папкам и который даже о встроенной zip не знаетВсе это и даже даже больше есть в факе треда, вот он приносит пользуНахуй твой говносайт не нужен, я бы понял, если бы он хотя бы на питоне написан и был бы пособием для вкатывальщиков, но ты решил выебнуться и запилить свое дерьмо на гуглодвижке
>>1212268>большене значит лучше, антошки теряются и тревожно дрочатв то время как чуть укусив и вправив майндсет уже нужно ебошить говно ибо только так можно научится РАБОТАТЬ, а не читать книжки и много знать != делатьа ты решил выебнутся купил домен и обосрался, и лишь питончиков с человеками постишь как я =)) сученешь без фантаззии блядь
>>1212261>Излишне, файлы все равно придется читать последовательноТо есть файлов много но они короткие?Как тогда решить эту задачу максимально качественно?
>>1212260> https://sites.google.com/view/pypry/pytonachТы опять выходишь на связь, мудило?> мы так и понели кек, уже почти полгода прошло лол> кек> лолКхем, понятно.Я уже тебе говорил, и скажу ещё раз: у людей бывают свои заботы.Мимодругойанон
>>1212273>То есть файлов много но они короткие?Нет, они вообще могут быть любого размера, суть в том, что ты их в оперативку все не сможешь загрузить для сортировки в памяти>Как тогда решить эту задачу максимально качественно?ГенераторамиЯ создавал структуру дескриптор файла-текущая строка в файле и массив из нихА так же класс, в котором есть:метод, который чекает лог левел и присваивает текущей строке в структуре, если она соответствует и делает readline дескриптору, если лог-левел ниже до тех пор, пока он не найдет нужный или файл не кончится, в последнем случае он удаляется из массиваметод-генератор, которая берет весь массив и находит минимальное время через min и регулярку (таким образом в памяти в худшем случае хранится только массив из строк и дескрипторов равный количеству файлов)метод вывода в файл, которая line-by-line заполняет новый файл и использует предыдущую функцию для получения одной строкиПримерно так, вроде оптимальный расход по памяти, можете поправить, если что
>>1212283А, я ещё и твоё задание не так понял.Спасибо за решение.
>>1212275>у людей бывают свои заботыа за базар тем не менее положено отвечать
>>1210308 (OP)Поясните почему если в терминале ubuntu написать: source .env/bin/activate, то я захожу в виртуальное окружение .envЕсли то же самое наисать в файл .sh и положить файл туда где это окружение, то эта команда уже не работает.Тем более, она не работает если в python3 я пишу эту команду через os.system или subprocess.call?Что сделать чтобы запускать это виртуальное окружение и выполнять нужные мне программы?
Анончики, поясните за shelveвот пример:import shelvelist = [1, 2, 3]db = shelve.open('dbname')for l in list:....db[str(l)] = lprint(db.keys()) # KeysView(<shelve.DbfilenameShelf object at 0x0341C890>) <--почему у меня не выводит ключи? читал примеры, делал все то же самое, все равно не выдает ключей
>>1212403print(list(db.keys()))Этих ключей может быть миллион и они могут подгружаться в оперативку по мере надобности, а ты ожидаешь что весь миллион тебе на экран сразу высрет. Просто итерируйся по ним for key in db.keys()
>>1212408если пытаться через список, то list object isn't callableдо итерации не дошел, потому что тупил с получением ключей.все же как мне получить список ключей?
>>1212314попробуй в .sh указать абсолютный путь
>>1212474Потому что ты закрыл встроенный list переменной.list = [1, 2, 3]
>>1212517>закрыл встроенный lбоже мой, какой я долбаеб, спасибо
>>1212314попробуй .env/bin/python path/to/script.py
Есть текстовый файл в который периодически надо записывать данные.Надо ли постоянно открывать/закрывать файл?
>>1212727Открывай файл в режиме append.
>>1212727Раз в год - открывать/закрывать.Раз в 10 секунд - держать открытым постоянно.
Что там сейчас удобнее? VSCode или Pycharm?
>>1212775linux+i3wm+neovim
>>1212775То что тебе удобней.Попробуй всё.p.s. vscode и pycharm сравнивать не совсем корректно, цели у данных программ разные и назначение.
Ушел из вкатывания во фронт, т.к не понравилось. Думал податься в питон и фласк, а потом понял, что в итоге все равно дорога приведет меня к фронту, ведь когда-то мне надо будет становиться фуллстаком.
>>1212737>>1212774А как это скажется на записи, если рабочая машина периодически будет в режим сна входить?
>>1212005Бамп
>>1212780>ведь когда-то мне надо будет становиться фуллстакомСейчас бы в говноконторах работать, которые не могут позволить себе разных специалистов на фронт и бек
>>1212785Ты какие-то задачи нереальные ставишь. У тебя машина спит, а питон работает? Не находишь никаких противоречий?
>>1212805Не так. Есть скрипт, который выдирает данные и записывает в файл. Есть cron >>1211900 , который будет периодически запускать первый скрипт.Но машина на которой это всё происходит, не будет работать 24/7. Вот и вопрос, как это всё будет работать.
Г. Россум, Ф.Л.Дж. Дрейк, Д.С. ОткидачЯзык программирования PythoНасколько годная книга для нуба?
>>1212820https://serverfault.com/questions/52335/job-scheduling-using-crontab-what-will-happen-when-computer-is-shutdown-during
>>1212832> Язык программирования PythoЛибо ты тредом ошибся, потому что здесь про язык программирования python, либо авторы данной книги настолько не в материале, что пишут даже название языка с ошибкой.
>>1212835ха ха ха Не скопировал последнюю букву, давай трави меня. Так все же, годная или нет?
>>1212832Неактуальна, абсолютно. Старьё ибо.
>>1212842а что актуально? кроме документации
>>1212845Тебе как новичку любая подойдет, которая была выпущена за последние пару лет. 2016-2018 любую для новичков выбиоай.
Кароче репостну вопрос сюда. Можно хочу написать клиент серерный пет проект. Со стороны сервера Питон Фласк СКЮЛЬ алхимия, постгресс. Клиент на андройд студио, под андройд собственно. Обмен в виде JSON. Фулл рест апи, кароч. Кто то так делал? Что в таком случае с производительностью?
>>1212921> Обмен в виде JSON.> Фулл рест апиЗойчем тебе тогда Flask?Бери Falcon, как раз заточен под создание API. Бенчмарки и документацию у них на сайте можешь глянуть.
Подскажите нубу по джанге. Загуглить не смог.есть 2 модели(на какую сам сядешь...):class Article(models.Model): title = models.CharField(max_length=200)class ArticleImage(models.Model): key_article_image = models.ForeignKey(Article, related_name='key_article_image')Хочу в шаблон 2 эти модели.Что писать во view? Как делать через get_object_or_404 для 2 моделей?
> Как делать через get_object_or_404 для 2 моделей?Для одной модели, потому для второй и передавай в шаблонизатор данные> Что писать во view?То и пиши
>>1212945^^^^^^^^^^^^^^^>>1212985
>>1212985пуся, а пример кода можешь кинуть?
>>1211640Лол, либо это мой список, который я составлял когда ещё на работу не устроился, либо я знаю с видео какого чувака на ютьюбе его переписывали. Так вот - это примерно десятая часть того, по чему меня дрочили на джуниора. Хорошо, что у меня таких списков разных было штук 10 и я за неделю без сна разобрался во всех вопросах. Кстати, почти всё, о чём рассказывал, пригодилось в работе.
>>1213020Пример кода есть в доках джанги, там все хорошо расписано.
>>1211640>помимо всего что написано в "Изучаем Python-4" Марка лулза>1. Стандартные типы данных>2. Разница между туплами и листами>3. Множества (set)>28. Функция type()>11. Mutable and immutable typesЭто все в начале у лутца объясняется>4. Стандартные библиотеки (sys, os, re, datetime)>26. Multiprocessing and threadingЭто ближе к середине-конце книги>5. PEP8Ну да, почитать надо дополнительно>6. variable swap (x, y = y, x)Ну ахуеть конечно знание, опять же у лутца есть>7. Разница между range() и xrange()Можно, но второй питон это моветон уже>8. Минимальное значение в листе>9. Удалить повторяющиеся элементы в листеЕсть>10. str.split()Раздел про строки>17. Анонимные функции>15. lambda functionsЭто одно и тоже, опять же есть у лутца>13. Итераторы и генераторы>14. yieldЕсть>16. Разница между методом класса и статическим методом>19. Магические методы>22. New style and old style classes>27. Metaclasses>23. MRO>21. Плюсы и минусы множественного наследования (это зло)>24. _slots_В теме про ооп он про это пишет>20. Sync and wait (python 3.5)Книжка про питон 3.4, так что да, нужно>25. Дескриптор протоколаПро дескрипторы и протоколы отдельная глава есть>18. Шаблоны проектирования (Singleton, Decorator, etc)Да, это надо, но еще нужно учесть, что в питоне часть реализована уже в средствах языка, есть спец книги по питоньим паттернамЛутц даст вам 80% процентов фундаментальных знаний про весь пистон, остается доучить паттерны, асинхронность и пеп8мимо прочитал лутца
>>1213085>есть спец книги по питоньим паттернамРеквестирую люто бешено.
>>1210308 (OP)Бля ели нашел вас тут, братишкиПочему так?
>>1213075А https://djbook.ru/rel1.9/ норм ресурс? Или там нет половины?
>>1213197Норм, но сейчас актуальна джанга 2+, так что если и учить, то её сразу.В доках всё мммаксимально просто расписано, с примерами.
>>1213210> но сейчас актуальна джанга 2+и ты конечно распишешь за существенную разницу в документации 1.9 и 2.0?)
>>1213195https://pythoner.name/documentation/tutorial/floatingpoint
>>1213212>за существенную разницу в документацииВ некоторых местах она и правда существенна и новичок рискует наткнуться на "делаю точно по документации, но ничего не работает".
>>1213212Уже всё расписано за меня:https://docs.djangoproject.com/en/2.0/releases/2.0/В общем, дело-то твоё.
Есть на серваке вебсокеты, через aiohttp пытаюсь создать 1000 постов, но создается только около 250. Это я в клиенте как-то неправильно отправляю, или на серваке что-то не то?Код клиента:https://dpaste.de/tdfk
Привет, начал писать лёгкий плеер (пока без выбора песен, тупо весь плейлист) и воспроизвожу на нём звуки с помощью пакета playsound. Плеер работает, но я хочу привязать его к какой-то определённой папке, чтобы в неё кидать музыку и проигрывать в общем плейлисте. Вот код:from tkinter import *def sound1(): from playsound import playsound playsound('C:/sound/Driver.mp3', True) playsound('C:/sound/Tokyo.mp3', True)def quit(): root1.quit()root1 = Tk()btn1 = Button(text="Запустить проигрыватель",command=sound1)btn2 = Button(text="Выйти", command=quit)btn1.pack()btn2.pack()root1.mainloop()Обратите взор на функцию sound1, в ней и нужно привязать программу к одной папке, как это сделать?
>>1213287На "/t" не обращайте внимания, это просто из-за отступов.
Освоил питон на джунский, примерно, уровень.Написал пару проектов для себя, осенью планирую устроиться на работу, скорее всего макакой, но может и что получше найдется. Пока за эти два месяца хочу получить как можно больше релеванитного опыта, со своими идеями у меня всегда было туго, поэтому смотрю в сторону опенсорса. Опесорс - это кодревью, работа вместе с интересными людьми над интересными идеями и тд и тп. И в связи с этим у меня возникает вопрос, какой проект выбрать для вкатывания? И где вообще искать списки открытых проектов? Пока нашел вот это https://github.com/the-tale, пытаюсь осилить код, но сложно пиздец, не уверен что потяну такое. Анон подкинь интересных опенсорсных проектов, желательно игр, с неслишком ебучим кодом. Есть опыт пхп-макакой 1год.
Что юзать для ГУИ? Есть норм гайды?
>>1213317Можешь попробовать здесь поискать: https://summerofcode.withgoogle.com/>желательно игр, с неслишком ебучим кодомХотя хуй знает тогда.
>>1213287path = r'C:/music'os.chdir(path)for sound in os.listdir(path):playsound(sound, True)или я что то не понял?
>>1210308 (OP)Есть гуру wxPython или подобного?Юзаю одну либу, которая позволяет логиниться на сайте. Тестю в консоли - вроде всегда все работает. Тестю с ГУИ - при логине, прога просто вылетает без каких-либо ошибок, эксепшенов и логов. В чем может быть трабла?
>>1213482Дебаггер юзать религия не позволяет?
>>1213488Было бы что дебажить. В логгере той либы ни о каких ошибках нет записей, и сам дебаг толком не говорит какая операция вылетела, при разных запусках - по разному.Сейчас все-таки словил, что в консоли также бывают такие вылеты без сообщений. Мб проблема в самой либе или в зависимостях, хотя обычно все равно выдается какое-то сообщение. Не понимаю.
> wxPython> позволяет логиниться на сайтеНе понял связи.Может ты селениум какой юзаешь?
>>1213482^^^^^^^^^>>1213508
>>1210312Люблю справочник Бизли за интересные и жизненные примеры программ, на которых объясняется изучаемая тема
>>1213441У меня выдаёт какую-то ошибку отступов в строке os.chdir(path), можешь вставить в мой код свой код?
Питоны, поясните про лексическое окружение в питоне, а точнее вот что:есть списокarr = ['www', 'www1']def foo(): # global arr arr.append(500) return arrl = foo()print(arr , 'в глобальной области') - почему изменился список в глобальной области? числа/строки выдают ошибку при попытке изменить без указания в global. А списку похеру. Почему?print(l)
>>1213553goo.gl/ugEw5kСтраница 474
>>1213564Да я собственно по этому учебнику и учусь.Меня именно спискиЮ как изменяемые типы данных смутили.
>>1213572Ну так код с ошибкой тоже скинь
>>1213573Да нет ошибки.Просто есть список, в глобальной областиarr = ['www', 'www1']есть функция его изменяющаяdef foo(): arr.append(500) print(arr)foo()По идее в лексической области функции нельзя изменять переменные объявленные в глобальной лексической области, если они не объявлены в global. Однако foo меняет список arr без обьявления его в global.Объясните механизм плиз.
>>1213577тутarr.append(500)print(arr)отступы отавлились , это тело функци
>>1213577>Если предыдущий раздел показался вам запутанным, спешу успокоить – в действительностивсе сводится к трем простым правилам. Для инструкции def:Поиск имен ведется самое большее в четырех областях видимости: локальной,затем в объемлющей функции (если таковая имеется), затем в глобальнойи, наконец, во встроенной.• По умолчанию операция присваивания создает локальные имена.• Объявления global и nonlocal отображают имена на область видимости вмещающегомодуля и функции соответственно.Ты жопочтец просто
>>1213580>>Ты жопочтец просто Не исключаю.Если в моем примере будет не списокarr = ['www', 'www1']а допустим строка x = 'www'то если я внутри функции foo попробую сделатьx+='qqq'То выпадет ошибка. Что логично. Так как изменять без обьявления в global и nonlocal нельзя.Но вот список из функции меняется. Это потому что это изменяемые объект?
>>1213580Короче, без global ты можешь смотреть переменную, но не изменять ссылку на нее, в случаи append ты не меняешь ссылку на лист, а изменяешь содержимое листаТут написано, но из-за всратого перевода это утеряноДругими словами, все имена, которым присваиваются значения внутри инструкцииdef (или внутри выражения lambda, с которым мы познакомимсяпозже), по умолчанию являются локальными; функции могут использоватьимена в лексически объемлющих функциях и в глобальной области видимости,но чтобы иметь возможность изменять их, они должны быть объявленынелокальными и глобальными>>1213581А, лол, ты про этоВ случаи с сокращенными операциями происходит x = x + 'qqq' для иммутабельных объектов, и он ломается. Производится попытка использовать х из функции, т.к. ты его объявил, а он еще неопределен
>>1213582>для иммутабельных объектовТак, вроде для всех встроенных, а не только иммутабельных, не помню точно
>>1213540вот. тот пример скорее всего не будет работать, потому что в функцию должен передаваться путь к файлу, и мой способ некорректен, я не шарю в playsound>какую-то ошибку отступовкакую? скорее всего ты просто не использовал сырой путь к файлу, как у меня >path = r'C:/music'
>>1213582Ок, вроде понял. Нельзя изменить саму ссылку. Но содержимое ссылки, если оно мутабельно, внутри функции можно изменить.если я делаю arr.append('что то') - я меняю объект по сылке.если arr = 'что то 'то внутри лексического окружения функции я создаю новую переменную.А вот что бы изменить arr в глобальной области, lдопустим на число - нужно arr обьявить в global.
>>1213586упд. потестил, тот пример тоже работает
Есть Один Цикл в котором полно хтонических созданий, вложенная параллелизация и страх глубин, иногда он нормально отрабатывает до конца, но бывает просто зависает на переходе между итерациями и без ошибки ждет Ctrl + C. Вопрос, можно ли в питоне сделать полный сброс после итерации цикла, имитировать остановку и перезапуск скрипта?
Аноны, как лучше хранить изображения на сервере, для оперативной выдачи их по запросу к API от фронта/мобилки?Еще б и шифровать их при этом, что бы никто, кроме автора не смог их увидеть, даже на сервере.Я только додумался до хранения в base64+соль и выдаче тоже как base64(на фронте/мобилке декодировать) но уже без соли.Хранение целым файлом в папке, в ОС не рассматриваю, т.к. не представляю как зашифровать, да и пересылаться дольше будет.
>>1213583Нет.
>>1213627Ты же понимаешь что твой жпг и строка в base64 это одно и то же с точки зрения хранения информации, просто разное кодирование? И "файл" кодируется и пересылается точно как строка.Для шифрования используй нормальные алгоритмы вроде RSA.
>>1213592TypeError: playmusic() missing 1 required positional argument: 'path'Теперь вот эта ошибка. Взял код из твоего пика.
>>1213662>TypeError: playmusic() missing 1 required positional argument: 'path'>Теперь вот эта ошибка. Взял код из твоего пика.Какой же ты тупой, иди хоть про функции и аргументы в питоне прочитай, плеер он пишет
>>1213662чел, ты рофлишь что ли? в playsound в скобочки путь к папке с музыкой вставь.А лучше иди почитай Лутца "Программирование на Python" или "Автоматизация рутинных задач при помощи Pytohn" Свейгарта
>>1213679playmusic быстрофикс
>>1213635Ну да, ошибся, помню по этому поводу срался с анонами о том, что питон при своей философии явности не совсем явно реализует сокращенные выражения
При вызове subprocess.Popen() параметры зачем то оборачиваются в кавычки. На git нашёл описание этого: The Popen command add quotes around parameters if they contain spaces, because each element in the array is a param.Как пофиксить? Мне не нужны кавычки в параметре, из-за этого нихуя не рабоатет
>>1213723пофиксил, у меня неправильно вызывалась программа
>>1210308 (OP)гайз как подключиться к бд которая уже связана с сайтом ? подключаю через mysql.connector если подключаюсь как по гайдам то вылетает куча ошибок
Поясните за хорошую практику.Скажем у меня в бд есть 2 сущности, под которыми можно оставлять коменты, коменты полностью одинаковые. Правильно сделать 2 таблицы с коментами к каждой сущности, или одну таблицу с 2 foreign key и позволять отправлять только одно из этих 2 значений?
Qt for python (PySide2) или Kivy?
>>1213741Какие ошибки? Как подключаешься? Где код с трейсбеком?
>>1213679Так я всё вставил, ошибка есть.
>>1213674Так, сука, я сразу прописал патч и в функции, не работает, def sound1(path): path = r'C:/music' for sound in os.listdir(path): playsound('%s/%s' % (path, sound))
>>1213839>Так, сука, я сразу прописал патч и в функции, не работает, >TypeError: playmusic() missing 1 required positional argument: 'path'>Я УМНЕЕ ИНТРЕПРЕТАТОРА, Я СКОЗАЛСкинь весь код и трейсбек через пастебин
>>1213839блять, ты должен прописывать не в функции, а ПЕРЕДАВАТЬ функии свой путь. А ты хуету какую-то делаешьдолжно быть playsound('твой ебаный путь')>path = r'C:/music'зачем ты переопределяешь переменную? я тебе скинул 2 рабочих функции, просто скопируй. в твоей нихуя работать не будет хотя бы потому, что у тебя рабочая дериктория в пизде, а не в папке с музыкой
>>1213849блять, не playsound, а plaumusic
>>1213851playmusicс третьего раза
>>1213849Так я папку давно на sound поменял.
>>1213856ой, я идиот, в этой функции не нужно менять рабочую директорию.>Так я папку давно на sound поменялмолодец. я тебе выше написал что ты не так делаешь. если хочешь по своему, убери аргумент path из твоей функции, и все заработает
Паrни, есть тут те, кто pytest шарит?
>>1213864Я всё-таки сделал рабочий код,from tkinter import *import osfrom playsound import playsound def sound1(): path = r'C:/sound' for sound in os.listdir(path): playsound('%s/%s' % (path, sound)) def quit(): root1.quit()root1 = Tk()btn1 = Button(text="Запустить проигрыватель", command=sound1)btn2 = Button(text="Выйти", command=quit)btn1.pack()btn2.pack()root1.mainloop()Просто затупил с функцией, давно очень ничего нормального не кодил, хотя вроде базу я хорошо знаю и про функции тем более, раньше много задач по ним решал. По сути, что я не смог сам запилить - это только цикл for, а с функцией и аргументом path - банальный косяк.
>>1212172for line, line2 in zip(r1, r2):____print(x+y)
>>1212845почему не документация ?
>>1213951Потому что документация изложена по примеру лутца - подробное расписывание каждого объекта, каждой структуры, нет общего комплексного подхода, в котором ты успеваешь усвоить общий материал и не забыть применение первой выученной структуры после 1000 страниц после неё. Аноны, что по этой книге?
В какой области сейчас работают питонисты? Правда ли, что серпентарий под названием "Джанго" умирает?
>>1214012Да, aiohttp его неслабо побил. По крайней мере я уже давно на джанге ничего не делал.
>>1214018У вас просто стильная-модная-молодежная команда, мы джангу, как использовали, так и используем, только версии обновляемА все потому, что у нас логика на микросервисах, а джанга только из базы данные дергает, ее для этого достаточно
>>1213805kivy
>>1213907папалса)
По какой книжке учите джангу? И обязательно ли накатывать прыщи?
>>1213659Насчет кодирования в системе я понимаю. Вот предположил, может быстрее будет самому кодировать 'файл' в нужный 'формат' что бы потом его только отправить, без предварительной магии и таким образом выиграть немного в скорости.За RSA спасибо.
>>1214029Antonio Mele (если мне не изменяет память) + документация.Желательно накатить Unix ось, но можешь и без нее ебаться.
>>1214038Благодарю!
Подскажите заебательскую книгу по PyQt5. Мне просто разворотило щас сракотан, когда я пытался вызвать переменную из функции чужого класса. И нигде, сука, не описывается решение. Прохоренока не предлагать, у него вместо классов все сплошняком в одном конструкторе.
>вызвать переменную из функциинихуя себе, посвяти как вызвать переменную из функции
>>1214050Владимир Дронов, Николай Прохоренок - Python 3 и PyQt 5. Разработка приложенийТолько чётко смотри 2017г, а не более ранний
>>1214022>>1214018Интересно, существует ли фреймворк, который бы не форсили как топовый и вечноживущий, и он не дох через пару лет после хайпа. Увы, но Джанго действительно умирает
>>1214052объявить её глобальной?
>>1214059>Увы, но Джанго действительно умирает Ваши пруфы?
>>1214061Соседние веб студии ушли с джанго
>>1214018>>1214022Значит, работа в вебе еще есть? Хочу из фронтенда перекатиться, но не знаю, что сейчас актуально и как там вообще рыночек поживает.
>>1214057>Прохоренока не предлагать
>>1214064Почему?
>>1214062>Соседние веб студии ушли с джангоА что нибудь кроме личного опыта есть? И на что ушли и почему, это важноА то возникает ощущение, что это очередные смузихлебы, которые гонятся за новыми технологиями непонятно зачем
>>1214067>А то возникает ощущение, что это очередные смузихлебыСмузихлёбы собственно и двигают фреймворк, устраивая ему хайп, думаю это показатель. Заметно что интерес к нему за последний год серьёзно угас. Это всё конечно имхо
>>1213907Что ты хочешь?
>>1214065Я же написал. У него нет нормальных примеров: только вырванные из контекста. Ни одной целиком написанной программы.
>>1214070А теперь иди на хуй! :DDD
>>1214069Ты не ответил>И на что ушли и почему, это важноЧем еще можно быстро сайт накидать не ебясь не с чем используя готовые модули, были рельсы, но они ВСЕ
>>1214074В то и смысл же... кто мешает брать исходники с гита?
Так что там с Джангой? Хочу вкатиться в бекенд, начал читать джангу, там в документации моделей упомянули связь таблиц many-to-many, а я после 1 книжке об скл о такой не слышал. Решил глянуть, а теперь уже месяц читаю скл\тереблю задачки на sqlex, питон не трогаю. Возвращаться к джанге или навернуть aiohttp? Что вообще за aiohttp? По названию я подумал что это какая-то усиленная вернсия стандартного http.server
>>1214083Учи джангу, aiohttp это потом, хотя, раз ты про связи в моделях не знаешь, то лучше теорию по базам
>>1214078Хорошая идея. Спасибо.
>>1214094Вбей в поисковике гита "учебные программы qt" ну и поэксперементируй с поиском, их всегда много от всяких курсов и универов
>>12140701. Как шарить дату в pytest между степами через self?В данный момент self в одном и том же тестовом классе в разных его методах ссылается на разные инстансы я был удивлен когда увидел, не ожидал такогоНапример:class TestSomething: def test_request(self): self.response = requests.get("https://www.google.com") def test_response(self): assert self.response.status_code == 200Получаем: AttributeError : object TestSomething has no attribute 'response'
Анон, такая ситуевина. Хочу запилить инсталлируемый пакет. У меня есть дополнительный текстовый файл, который мой проект использует в рантайме. Как убедить setup.py включить файл в пакет — разобрался.Теперь встает другой вопрос: как мне загрузить этот файл через open()? Я пытался писать open('myproject/myfile.txt'). До установки (из папки с проектом) — все работает. После — No such file or directory.Может, я могу как-то узнать путь, по которому находятся установленные файлы моего пакета?
>>1214124Если я не ошибаюсь, при использовании pytest функции надо класть на самый верхний уровень. Он работает не с классами типа TestX, а с функциями типа test_x.Вообще, почитай их доки, они охуенны: https://docs.pytest.org/en/latest/
>>1214124Вроде все пользовательские объекты после каждого теста уничтожаются. А вообще шарить в разных тестах один объект, если это делается не через setUp\setUpClass, моветон, по крайней мере в unittest так
>>1214124Классы в пайтесте не более чем скоуп. Они никакого особенного функционала не дают. Пайтест тупо каждый раз инстанцирует класс и вызывает один из его test_ методов.
>>1214129Не делай никогда open в таких случаях. Делай pkgutil.get_data(__package__, 'myfile.txt').Так у тебя даже если в zip архиве пакет будет лежать всё подгрузится как надо.
>>1214144Спасибо, анон, ты охуенен.
Ну че аноны, стоит вкатываться в пайтон в 2к18 чи подождать до 2к20, я хуй пойму.
>>1214012> Правда ли, что серпентарий под названием "Джанго" умирает?Нет, как пилили на нём сайты так и пилят>>1214018> aiohttp его неслабо побилИ много ты на нём написал сайтов, сложнее пары страниц?В питоне ещё ничего лучше не придумали. И тем более ещё ничего не обросло таким комъюнити и набором библиотек и готовых решений для разработки.Aiohttp безусловно отличная библиотека, но немного для других целей и сравнивать их, как по мне, не совсем корректно.
>>1214155А чего ты ждать собрался?
>>1214160Ну а вдруг придумаю ЯП, в который действительно стоит вкатываться. Или начнется ядерная война, и мне уже не пригодится пайтон.
>>1214136>Вообще, почитай их доки, они охуенныПервая строчка>The pytest framework makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries.говорили они>>1214137>если это делается не через setUp\setUpClass, моветон,проблема в том что у них бага https://github.com/pytest-dev/pytest/issues/517 2014 года, лол а у меня фикстуры есть в скоупе session которые должны срабатывать перед setup_class. Только что попробовал через setup_class, шарятся только те, которые были определены в нем же, это не очень удобно на мой взгляд. Через фикстуры как засетапать я тоже нашел https://computableverse.com/blog/pytest-sharing-class-fixtures но там все та же самая проблема, шарятся только задефайненые в нем, придется присваивать None куче переменных, что не очень гибко>>1214141да, да, я об этом и говорою. Сейчас я юзаю хук, через который я могу шарить все что угодно, но хотелось бы по человечески через self
>>1214169Зачем ты тащишь unittest в pytest? Нафига тебе self когда есть божественные фикстурки?
>>1214173>Зачем ты тащишь unittest в pytest?В каком это месте?>Нафига тебе self когда есть божественные фикстурки?Да потому что что такое класс?1! Это пространство имен (пакеты перменных) и это пространство должно оставатся единым.Я еще раз говорю у меня есть хук-фикстура, которая это решает, но это это не то, что я хотел потому что из-за этого автодополнение в пайчарме не работает, хнык-хнык
Почему в книге Byte of Python автор советует установить Vim, Emacs или Komodo Edit, если в комплекте с питоном идет IDLE. И вообще не лучше ли учиться писать код в блокноте без подсветки синтаксиса? Будет возможность самому искать ошибки и тп.
>>1214200Писать без подсветки синтаксиса это есть кактус, учитывая то, что ошибки в рантайме ловятся, а какой нибудь пайчарм часть из них определяет ещё во время написания кода
>>1214200>в блокноте без подсветкиНе нужно. К тому же в блокноте не моноширинный шрифт и нет хоткеев для индентов. Попробуй атом, сублайм.
Почему не удается запустить файл?
>>1214235Потому что в файле понаписано не то что ты думаешь.
>>1214235>эти попытки перейти в директорию со скриптомПроиграл нахуй
>>1214200Если ты хочешь именно познакомиться с синтаксисом, то блокнот будет лучше, конечно. Позже, когда ты совсем привыкнешь к нему, возможно, ты заметишь, что тебя отвлекает или тормозит необходимость постоянно вручную править форматирование (те же отступы), в то время когда ты думаешь совершенно о другом (об алгоритме, о какой-то идее). Вот тогда стоит начать использовать что-то посерьезнее.
>>1214265Ну и как его открыть? Я делаю все в точности как в книге, и нихуя не получается
>>1214280Содержимое файла покажи, долбоёб.
>>1214281вот ебать
>>1214282Ну вот, всё хорошо. Ты его открыл и скрипт работает.
>>1214286Так мне его надо открыть в командной строке.
>>1214289Меня терзают смутные сомнения. Скопируй содержимое файла на pastebin.com и ссылку сюда.
>>1214291https://pastebin.com/mRUU51CJ
удали все что идет до print
>>1214294Сука, в голосину)Оставь только это и запусти:print ('Hello World')
>>1214296>>1214297Всеравно не работает
>>1214303Тебе даже Питон говорит убрать эти ">>>", а ты не слушаешь.
>>1214305Ух спасибо анон. Теперь все норм. В учебнике не написано что надо убирать эти стрелочки и все что сверху. Я думал это типо как в html DOCKTYPE
>>1214303Ты троллишь или правда такой?Оставь в файле только то что я написал:print('Hello World')
>>1214309Даже в учебнике те строчки наверху и стрелочки, и нигде там не написано что перед исполнением программы, их надо стирать.
>>1214312БлэтьТы невнимательно читаешь. Если копируешь, то копируй всё.Ты в консоли должен этот код выполнять!
>>1214319Конкретно тот отрывок что я скинул на скриншоте, да в консоли. Я его скинул, потому что в том коде те лишние строчки которые надо убрать, и стрелочки. На момент проблемы, я выполнял главу 6.4
>>1213948не подходит
а бля ты про ту тему, еба у меня уже другая но энивей санкс заработало годно
кароче сделал изначальный вывод терминальной команнды не в виде пар значений, а чистые значения, не пришлось ебаться с регуляркой(хотя уже даже нагуглил шаблон лел) что бы доставать начения из кавычектакая вот аккуратная няшка вышлатеперь вопрос как это выровнять, через table или есть для зипа ключи какие нибудь?
>>1213700В смысле не совсем явно? А как было бы явно? Что поведение x+=y и x = x + y идентично? С чего бы? iadd это in-place add:https://docs.python.org/3/library/operator.html#inplace-operators>Many operations have an “in-place” version. Listed below are functions providing a more primitive access to in-place operators than the usual syntax does;А += это и есть operator.iaddТо есть, как раз-таки должно быть очень очевидно, что для мутабельных объектов += изменяет его, а не создаёт новый.
глянул кароче таблицы - какой то ядерный пиздецпанда на его фоне прям 21 век, хотя тоже один хуй ебень, не влазит в терминал, хотя места дохуя и не дает убрать по людски нумерацию строк и столбцов, на стаке какие то адовые портянки под эксельки тем болеекароче реквестирую годноту для табличного вывода без ебания головы
>>1214098Хорошо.
>>1214077>рельсы, но они ВСЕ Почему? Что с ними случилось?
>>1214376Джанго и пыхо-фреймворки спиздили все фишечки, а т.к. на руби помимо рельс достаточно мало работы, то они отвалились за ненадобностью
кароче хуита ваш зип без задач и энумирейты какое то гвно не гибкое>A table can be created with add_row() or add_column() methods.после того как я полтора часа потупил в >TypeError: add_column() missing 1 required positional argument: 'column'я таки решил почитать мануал чуть дольше чем 30 секунд и внезапно НЯЯЯЯЯ ^___^
В питоне Ø. Но есть желание написать бота в телегу чтоб возился с API Яндекса. Помогите с уроком чтоб было как то приближенно к работе с API
фиксанул, теперь можно ллиться в аур ^_^
>>1214235python helloworld.pyНадо сначала интерпритатор указать
>>1214414Таким людям не нужно отвечать на их вопросы, нужно давать им ссылку на книжку. Вопросы которые они задают ТУПЕЙШИЕ блядь.
>>1214414>Надо сначала интерпритатор указатьВ данном случае не обязательно.
Питоны, привет. Это я -вкатывальщик из JS. Лутца кое как осилил точнее говоря понял большую часть, но не хуя не запомнил теперь осваиваю "Програмируем на Питон". А "Изучаем Питон" - справочник у меня теперь.Но если брать направления - я хочу в вэб%JS макака же. Писать сервера, парсеры, поисковых роботов, ну и сайты конечно же. Какой вэб-фреймворк нужно выбирать? Выше расписали что Jango уже помирает? Что ему на замену идет?как ватывальщик сейчас жалею что начал изучения JS , а не с Питона. Питон гораздо шире представление дает о программировании как таковом. В JS можно проебать кучу времени, выучить кучу абстракций, и по итогу уметь списки и менюшки динамически формировать.%%
>>1214455Обосраля с разметкой.Питоны, привет. Это я -вкатывальщик из JS. Лутца кое как осилил точнее говоря понял большую часть, но не хуя не запомнил теперь осваиваю "Програмируем на Питон". А "Изучаем Питон" - справочник у меня теперь.Но если брать направления - я хочу в вэб, JS макака же. Писать сервера, парсеры, поисковых роботов, ну и сайты конечно же. Какой вэб-фреймворк нужно выбирать? Выше расписали что Jango уже помирает? Что ему на замену идет?как ватывальщик сейчас жалею что начал изучения JS , а не с Питона. Питон гораздо шире представление дает о программировании как таковом. В JS можно проебать кучу времени, выучить кучу абстракций, и по итогу уметь списки и менюшки динамически формировать.
>>1214455нахуя ты копируешь? И как лутц? Информативно?
>>1214458Не умирает, ибо в его нише либо он либо пыхаaiohttp либо для стильный парней с бородами, либо для хайлоада
>>1214458я тот хер что писал что соседние веб студии отказались от джанго. Не слушай меня, я обосрался короче) Но в рашке джангу да, не особо любят.
>>1214463>Но в рашке джангу да, не особо любят.Посмотри вакансии питонические на хх, там джанги полно
а с флаской чо?
>>1214461>>1214463>>1214464Спасибо за мнение. Значит топаю в Джанго.>>ибо в его нише либо он либо пыхаВ пыху не хочу совсем. Да и нахера если питон есть.>>1214459Со спойлерами обосрался. Мод зачистит.>>И как лутц? Информативно? Хорошее пособие, но как мне кажется для вкота с ноля - сложновато. Он объемный очень, и очень подробный. Но на мой взгляд ему очень не хватает задачек простеньких на работу с содержанием главы, например. Потому что многие вещи по итогу понимаешь после того как покрутишь сам руками с разных стороннапример я так с итераторами в JS ебался.Но мне учебник зашел. Со знаниями JS мне конечно же было гораздо проще. Пару глав, типа про try - except я пролистал одну через три - позже вернусь. Так как логику я понимаю, в общем, а вот до деталей дойду как буду что либо писать. 1300 страниц теории - это о я ебу. К финалу забудешь не то что чем tuple от list отличается, забудешь вообще что это такое. Утрирую конечно, но суть ты понял.Короче если у тебя есть некоторое понимание типов данных, стандартных операций типа циклов и у слови, и ООП - то зайдет учебник. Если нет - я бы не советовал все же.
Аноны, завтра позвали на собес.Но я в теории, практически, полный нуль. Что б такого почитать за сегодня/завтра что бы не ударить в грязь лицом?На практике я им напишу что-нибудь, но вот рассказать вряд ли смогу.По телефону спрашивали про ФП, функциональное тестирование и генераторы, а так же фреймворки/технологии и опыт общий.
>>1214308Если пишет SyntaxError то ты накорявил с кодом.Вместо doctype было раньше # coding: utf-8 но в троечке это не нужно.Вот эти >>> штуки показывают как бы интерактивную сессию питона, когда ты запускаешь его без файла для выполнения, так можно вводить руками код прямо в консоли и сразу же выполнять.
Почему на tkinter зависает окно во время проигрывания аудиофайла и как это исправить? Сама музыка играет, но окно зависает напрочь.
>>1214578Может поток управления у музычки, а не у окна?
>>1214578Про многопоточность слышал что-нибудь?
Питонята, вопрос.Есть функция:.... def add_to_history(self, name, operation, value, currency):........# doing somethingВ общем, я не знаю, какой тип данных для history лучше использовать, чтобы:1) Был заголовок (name) и по этому заголовку можно было получить остальные данные (operation, value...)или2) history была списком, в который можно было бы добавлять кортежи.У меня первая мысль была о namedtuple внутри единого списка, но это какая-то ебатория и вообще я долбоеб.Или, может, я не туда смотрю и на самом деле все реализовать можно было гораздо проще?
>>1214822Ебать я долбоеб.
>>1214822Переформулируй вопрос, нихуя не ясно.Ты хочешь это?history_record = {....'name': 'name',....'operation': 'operation',....'value': ...}> .... def add_to_history(self, record):> ........# doing something
>>1214840Да я уже понял, что дурак, все в порядке. Можно было просто словарь взять с именем в качестве ключа и кортежем в значении.Но у меня вдогонку другой вопрос. Насколько это моветон, писать так много аргументов к функции? В общем-то, у меня, например, name, value и currency на деле наследуются из класса, но тем не менее сама запись def funkcia(argument1, argument2, argument3, argument4) выглядит довольно громоздко. Это плохо, да?Буду рад, если кто-то поправит меня в терминологии
>>1214910Если аргументы метода "наследуются" из класса, то и наследуй их, через self.аргумент.> выглядит довольно громоздкоОбычно, если переменных передаётся больше 3-4(и все всегда задействованы), то это говорит либо о неправильной архитектуре, либо об очень специфической задаче.Если переменных прям много и все нужны - юзай kwargs.А иначе - попробуй задачу разнести на мелкие и распределить роли между ними.
>>1214951Метод -- это все же не функция? Или ты просто на всякий случай акцент делаешь на том, что, мол, не всякая функция -- это метод, но всякий метод -- функция.Спасибо за ответ. Буду переписывать.
>>1214962> не всякая функция -- это метод, но всякий метод -- функция.Ебать как завернул то.Функции находящиеся в классе называют методами.
Помогите ньюфагуtry: #кодexcept IndexError: #другой вариант кодаexcept IndexError: #третий вариантexcept IndexError: #этот код точно сработаетНо после первого исключения код останавливается. ЧЯДНТ?
>>1215035Сам спросил, сам ответил:Нужна ебучая лесенкаtryexcept....try....except........try........except
>>1215035у тебя во всех эксцептах один и тот же эксцепшон указан, это не имеет смысла, делай все в первом ветвлением через ифы
>>1215035Блять, ньюфаг, иди читай про эксепшены, а не пытайся свой синтаксис придумать.
>>1211594>там try-блок в try-блоке, зачем это?Чтобы перехватывать исключение, когда ты уже перехватываешь исключение.
>>1211594А вдруг, пока ты будешь перехватывать исключение, произойдет новое?
Аноны, как написать веб приложение на питоне + js не используя фреймворков? Есть гайды, доки? Сам джангу юзаю, но мне дали тестовое задание сделать веб приложуху без фрейморка используя выше сказанные ЯП. Надеюсь на обратную связь.
>>1215515https://docs.python.org/3.6/library/http.server.html?highlight=server#module-http.server
Аноны, как часто вы используете в своем коде декораторы?
>>1215543Самописные - ещё ни разу.Если встроенные в либу/фреймворк - юзал довольно часто.Но у меня опыт небольшой, лишь 1,5 года реальной работы
есть словарь типа Линк:Тайтл на 1800 строк, хочу послайсить по доменный именам и красиво отрисовать штемельку, что лучше? глянул на PyJs чето как то очень уж стремно он выглялит
>>1215543Часто, у нас через них микросервисы организованы
>>1214455> лутца кое-как осилилЯ один такой еблан, который читает лутца уже год и прочитал только половину?
>>1215600бампну же анон, я уже распарсился
>>1215613данет
>>1215600>послайсить по доменный именам и красиво отрисовать штемелькуПо русски.
>>1215662>По русски.чурек ебаный будет так>по-русскикароче я уже все послайсил, теперь все нужно фильтрануть и ебануть в списки, ну это хуйнявопрос в том может ли питоний построить дом ? лол, не выглядий так же убого как ПуЖся хуй знает ну в жсон выведу, и с него надо древовидный список построить со стролочками для разворота, ну т.е группы урлов по домену будут, кароче как в файловом менеджере надо сделать воот
>>1215667>может ли питоний построить домyattag
>>1215657> эти названия переменных
>>1215670Он даун ебаный. Почитай какую хуйню он несёт, лол. Послайсил он блядь
>>1215667Запили шаблон хтмльный и ебни в него данные через jinja
>>1215669>yattagпросто охуенно, мне нужна хуйня которая бы делала охуенно, а не заставляла бы блядь работать в два раза больше>>1215670похуй нахуй, это поиски, удивлен что для тебя это не очевидно>>1215672>jinjaну это уже получше, просто вообще влезать в это говно не хотелось бы, жспараша вот это все нуиво нахуй>>1215671слышь ты ебать, сажу то прибери аноним хуев сука
>>1215676>мне нужна хуйня которая бы делала охуенно, а не заставляла бы блядь работать в два раза больше>>jinja>ну это уже получшеПроиграл пиздец. Для тебя<div id='zalupa'>{% text %}</div> лучше чемwith tag(div, id = 'zalupa'): text(text)?Я вообще не пойму хули ты сделать хочешь, поехавший. Делаешь список любым генератором хтмл из листа своего и пишешь на жс пару строчек для скрытия\сворачивания дочерних элементов. Профит, иди нахуй.
Анон, а объявление функции внутри функции, если эта вложенная функция не будет использоваться вне родительской функции -- признак дурного тона, или не карается законом?
>>1215686>лучше>>1215686>иди нахуй
>>1215613Изучаем питоний и обе части Программирования на питонии осилил за 2,5 месяца, помимо всяких курсов. На самом деле просто книжки читать люблюПару недель назад (то бишь через пять месяцев с начала вкатывания) взяли стажером-неумехой. Два месяца поработаю у них (за стипендию 150р/час, кстати, лол), возьмут в жуниоры.Хуй знает, какой-то ты неправильный вкатыаальщик. Зарплатки-то падают.
Аноны, составил себе небольшой такой вот список того, что надо бы прочесть и вникнуть, для более углубленных знаний:> Python 3 Module of the Week> Intermediate Python> Python Cookbook> Дочитать доки пайтона по стандартным либам(было начал, но не дошёл до конца)Всё ли верно/актуально(кроме последнего пункта, с ним и так ясно)?>>1215686> лучше чемА разве нет?Не лучше ли взять нативный ХТМЛьный шаблон и по-человечески вставлять в него данные, нежели взять пайтон-код и через него клепать ХТМЛ?p.s. Не> {% text %}а> {{ text }}{% %} - для различных условий и йобо-конструкций юзается
>>1215748>Не лучше ли взять нативный ХТМЛьный шаблон и по-человечески вставлять в него данные, нежели взять пайтон-код и через него клепать ХТМЛ?Нет.
>>1213992Разбирается старая джанга сейчас 2.0 там 1.9 отличия огромные
>>1215770Почему?
Раньше еще какое-то облако было с книгами питоновскими, обошел пару тредов в архиваче не нашел, мб кто-то кинет? Помню там был какой-то раздел для мамкиных хацкеров и чуть больше книг
>>1211702Поясни за асинхронность таким же примером плз
>>1215796лови няша, как все прочтешь дальше ебошь кодhttps://sites.google.com/view/pypry/pytonachебошь прямо сразу после укуса разбираясь по ходу
>>1215789я тут полуркал и вот так выглядит топовый фф для дома, ну хуй знает, что рект что вуй одно говно, так и зачем ебаться с тем что еще более хипсторское?а жижа твоя питоний транспелит в жспарашу или как? сайт пидорский примеров чето нихуя
>>1215822Хуй знает. Может, под питон есть что-то вроде Hiccup под кложуру?
>>1215822Посмотри https://lxml.de/tutorial.html#the-e-factory
Прочитал Лутца, по джанге - Головатового плюс сделал опросник с джангопроджекта. Что делать дальше с ориентировкой на вкат вофис?
>>1215835>https://lxml.de/tutorial.html#the-e-factoryсука это охуено анан! то что надо для такого питоаутиста как я ^_^помню в штымеле еще тогда на сабляйме задрочивал эммет, но все равно какое все бесячее было, недоделанное, хотел сделать лучше, поглядывал на шпитца ебучего, но слава б-гу дропнул это говно, туда же заебанные цески, каждый из себя недоязык корчит, фу блядь, фу нахуй, аж тресета тут няяя
кажись нашел леееелскриптуля пашет лак а чарм нахуй :3
какой же лутц пидорас. книга называется "Изучаем программирование на пайтон ТРИ" ТРИ СУКА! почему у меня в каждой главе есть как минимум одно упоминание пайтон два? ладно пайтон два, но ебучий си мне зачем? "ЭЭЭХХХХ РАНЬШЕ БЫЛО ЗАЕБИСЬ. А НА СИ ВООБЩЕ ОХУЕТЬ!" >несвязанные методы хуе мое епты))) тянки текут батя грит малаца>в пайтон 3.0 понятие несвязанные методы ликвидировано))))))
>>1215859>Изучаем программирование на пайтон ТРИИзучаем пайтон три
кароче да брайтон и транскрипт топчиковые, жс маст дайhttps://stackoverflow.com/questions/30155551/python-in-browser-how-to-choose-between-brython-pypy-js-skulpt-and-transcrypt
>>1215901Не победишь. Пиши лучше на жс нативно. Жс не такой уж плохой.
>>1215940>не такой ужя у мамы максималист, не сегодня завтра васм подвезут, и питончик залейтёхает и тогда дети начнут выбрасываться из окон да и помню как это говно меня выбешивало своей швободкой, часики делать затрахался, не говоря о том что все эти нескушные скобочки.. я уже слишком отвык от этого дерьмаа пока брайтон по смыслу чистый жиквери, на изиче, ивенты хуенты дом добавить удалить, вуй рект тупо нинужны, замусоривать голову йебическими абстракциями, которые через пол года выкину на помойкутем более я для себя, для души, по кааайфу, а какой нахуй кайф от жспараши!? ты бля видел как создатель на выставочке в 2к18 весь зареванный жаловался мол какое же он чмо, что же он натворил, накормил говном всю планету и уже не вернуть все в задтайпскрипт в рантайм браузера от хорошей жизни бы не заталкиваликароче просвящайтесь змеюки, для бекняш просто лютый мастхевhttps://www.youtube.com/watch?v=BcDV9QUium4
Могут ли 2 разных пистон скрипта обмениваться данными через один сериал порт?Один скрипт посылает в него данные. Другой читает. Или порт занимается каким то одни и для другого он недоступен?
>быстрофикс
вот ведь узкоглазое ебало
>>1215955Нельзя.Но не обязательно ж через порт, можно иначе связать два скрипта.
>>1215955U N I X | S O C K E TNIX-SOCKET
Как в джанго сделать форму типа селект, имеющая данные для выбора из бд? То есть форма будет с выпадающим списком и данные в этом списке будут из базы данных, как в этот выпадающий список засунуть данные из бд? Сори за каламбур, да кстати это на джаного нужно сделать!
>>1215989Если динамические данные (как вот в поиске подсказки) - то JS юзай.Если форма с заранее заданным списком выпадающим, то в свою форму class UsersForm(forms.Form): вставляй:https://pastebin.com/EmnbQPcHP.s. а вообще гугли, это первая же ссылка, при правильном вопросе
>>1215991Спасибо!
for string in file:...try:......re.search()......re.search()...except Exception:......passПочему при первом None он пропускает весь файл? Мол, если в первом случае нашло, во второй - нет, то все, скрипт завершается.
>>1215843>кидает скрин того же yattaga>АХУЕННА НАКАНЕЦТА НАШОЛ НАШОЛПХХП, пиздец ты овощ конечно
https://youtu.be/Bv25Dwe84g0
>yattagноунейм без комитов и звездочек с ФИЕРИЧЕСКИ блядь пидорскими контрукциями, у брайтона же 2к звезд и ласт комит 5 дней назаду голого траспайлера траскрипта популярность меньше
>>1216084Потому что нехуй перекрывать все исключения без разбора. И потому что твоё предположение неверно. Там не происходит break.
>>1215955stdout → stdinpython a.py | python b.pya.py:print('jopa')print('cyka')print('blyad')b.py:import sysfor line in sys.stdin:..print('Got line', line)
>>1215951Васм подвезли, питончик летает, но хуйня в том что рантайм у питончика очень жирный и кастинг типов в жс очень медленный.Чтобы не страдать от жс пиши через бабель, на ES2018. Настрой линтеры чтобы все жс пиздецы не пропускало, и будет тебе практически тот же питончик. Тайпскрипт да и mypy вещь сомнительная как по мне, как бы там не нахваливали. Аннотации написать хорошо, но ебаться с чекером и тайпшедами то ещё удовольствие.
>>1216157>пиши через бабель, на ES2018я как представлю сколько говна и лишних пакетов на системку свалится я ж плохо становится, пока весь пайп настроишь уже забудешь чо хотелда и в итоге один хер придется майндсет перестраивать, все там по другому, а я уже привык к змиенышу, знаю чо и куда в общих чертах, а там опять вакханалия начнется, ох нет нетмне чисто список на 2к строк заибашить, 5мс или 500мс - похуй вообще, да и вообще если будет 5 секунд отрисовываться так даже интерснее получится лол, эдакий дебаггер ирл, сидишь и видишь как програмка там ползает, ну круто же ^_^
>>1216155Я пробовал перекрывать AttributeError (или что там препятствует появлению None), эффекта нет.
>>1216175> или что там препятствует появлению NoneНе понял, при чем тут None?Вообще, запощенном тобой коде есть только две строки, где может что-то пойти не так. И ты обе строки сократил. Хуй поймешь, что там на самом деле происходит. Пиздуй на http://sscce.org/
двач, объясните следующий код:class x:...def met1(self):......pass...def __repr__(self):......return '%s' % self.met1y = x()print(y)почему происходит бесконечная рекурсия?
>>1216331Закомментируй или убери __repr__ и посмотри, что выводит y.met1Будет что-то вроде <bound method x.met1 of <__main__.x object at 0x7efbfdfa38d0>>Вот эта часть, "__main__.x", вычисляется через стандартный __repr__. Когда ты переопределяешь __repr__, рекурсия возникает в этом месте.Может быть, ты хотел написать self.met1()?
>>1216349Немного напиздел. Стандартный __repr__ возвращает всю строку <__main__.x object at 0x7efbfdfa38d0>.
>>1215986а если я в венде?
палю годноту гаденышы!пизже роскошного вскодовского тултипа и даже справочного метода
>>1216496Арч на домашней системе стоит? Удобно вообще?
>>1216506>Удобноне то слово, я просто наконец то почувствовал себя человеком, а не оператором уебанской системы, которую изобрели дураки что бы специально дрочить меня по хуйне, инсталл любой проги одной коммандой, обновки свежак, если аур и мейнтейнер слоупок, всегда можно пиздануть его палкой и через пару суток он намучивает обновку, прописал обновку в альяс к команде выключения, прожал пошел зубы чистить, пека апнулась и утром за свежак содишься, без дистракшн говнатут прекрасно абсолютно все, а все что по какой то причине тебе таковым не кажется, ты можешь сделать падсибя, без лишнего неясного говна, голая система 350 пакетов, с кедами под 700, делаешь pacman -Qe и не видишь ни одной незнакомой строчки, это просто охуеннои чем глубже тем веселее, тебя не только не бьют по рукам, а наоборот, все сделано для мммаксимум френдли пердолинга, арч вики топоваяну и простые линовые мелочи как установка всех программ одной строчкой, второй строчкой копируешь настроички из бека, и в отлчии от ебаной апп даты и программ даты, тут после аплода дотфайлов и ребута ты тупо попадешь в систему которую оставил до реинсталлапервый месяц после свитча был тяжелый, раз 20 оську переустанавливал, 4 раза по крупному, ну и каждый раз продолжал оттуда откуда начал ^_^кароче если тебя заебало что кто то говорит тебе как надо жить -- то смело накатывайбудет твоим дейли драйвером, ибо тут все на сишке да на питоне, ковырятся одно удольствие, даже мне не кодеру, по кайфу ковырятся в этом конструкторе
>>1216549Что про манжаро-бомжаро скажешь? Я поставил в виртуалку арч, но при попытке ставить иксы, здесь шайтан-дела какие-то.
>>1216551У тебя какой опыт красноглазия?
>>1216554Держал на дуалбуте дебиан и кубунту. Около 2 месяцев переменной работы.
>>1216551>манжаронабешься, у них репки свои, там разрабы австрийцы с франками, сделали дистр для белых людей совсем, так что все перепроверяют и только потом добавляют, а по факту только хуже, но если один раз настроить и не трогать может и пойдетвиртуалкопроблемы, ставь на живую
>>1216555Ну и накатил бы деб.Забыл сказать в >>1216554, я — другой анон.
>>1216557>>1216556Минт поставлю тогда. Спасибо вам.
>>1216557>Ну и накатил бы дебС дровами там заебешься.
>>1216561В виртуалке? С дровами заебешься?
>>1216564Я про дуалбут, я в виртуалке все дистры тестю после неудачного опыта.
на тему удобства>>1216559>Минт поставлю тогда.сука траллировал меня чмо))>>1216557доебан ставят те кто УЖЕ УСТАЛ, кто хочет быть по ближе к земле
>>1216566Ты кедами хвастаешь?>траллировалЯ даже генту ставил неделю, просто так заебало, что я стал замахиваться на такие соблазнительные убунту да минты.
>>1216566Так, как сделать так как на видосе, чтобы прям вот так вот было.
Пиздуйте в /s/.
>>1216577Пиздуй нахуй.
>>1216568>Ты кедами хвастаешь?таки да, они божественны, вначале держал венды на подстраховку, но вот этот вот ресайз окошек просто киллер фича нахуй ну и охуенный кврайт блокнот, по глазам не лупит, с таким же функционалом как у сабляйма за ебучие 80 баксов, ну и дельфин, точиковый фм, просто вот блять охуенен и расширяем ручками на лету за пару минутгента для пидоров анима-девочек внутри, без бляд сервера и парка машин -- чистое незамутненное дрочево>>1216570арчик + кеды + латте док + стоковая обоина>>1216580внатуре ебать))
>>1216587У меня в кедах такая хуйня была, что шрифты в приложениях были малы. Сам я кротообразен, поэтому постоянно так сидеть не смог.
>держал венды на подстраховкумысль улитела лоли было ужасно туго потом на вендах, не смотря на то что они были по максимому запердолены, таскбар вся хуйня темки которые бсодают систему после луп апдейта туда сюда вот это воот все сидишь смотришь, а тебя кормят блуром и показывают красивые презенташки в тубике, реально прошивка для игр, только сейчас начал понимать всю суть данной фразы>>1216588есть такая тема, на вендах тоже 150% всегда ставил, нахуй надо напрягаться, а кому то норм
>>1216593>есть такая тема, на вендах тоже 150% всегда ставилВ хроме и jetbrains продуктах я не мог это настроить.
>>1216594>jetbrainsой всёкром скелица заибись, а блядский пчарм нинужен
>>1216598Я android studio использую в основном. Без него тяжко.
кстати это реально детектор уебанских программчто стим что уеч две единссвенные софтины которые СТИЛЯТ ФОКУС ! во сука вспомнил еще одно наипидорская вендо фичана линупсе же никто не смеет прервать тебя пока ты печатаешь ответ на двачеи вот они тоже хуево скелятся, пришлось поибаться с ключиками да>>1216599а ну это ты к нам в тредик заходил? чето видел по студии, но я хз, энивей все опенцорцное, все что надо полуркал и подправил, если ни скейл ни фонт дпй не помогли
>>1216600>а ну это ты к нам в тредик заходил? чето видел по студииДа, я с кубунту ебался и потом, когда ее сносил удивительным образом затер всю систему и загрузчик винды.
Я хочу применить метод create_table() из другого файла start.py()Делаю import database, но у меня 'conn' и 'c' остаются не активированными, как их активировать через другой файл?
>>1216601ахаха ебать ну это судьба тебе шлет знаки, не иначедавай свичайся братишка и перекатывайся к нам в чятик
>>1216604Когда ты импортируешь модуль, выполняется весь код внутри него. Если ты импортишь database, а потом вызываешь create_table, то у тебя соединение уже закрыто в этот момент.Перемести последние три строки в отдельную функцию и вызывай ее позже, чем create_table.
>>1216607>свичайсяЧто это значит?
>>1216609не тупи анон, все если что дежурные в /s тебе помогут, а я упиздил байки, 66
>>1216610Спасибо, благодарствую. Пока.>дежурные в /sОбоссут скорее.
>>1216608Все сделал как ты сказал, теперь нормально работает, но есть ли иное решение, более оптимальное?
>>1216608Забыл сказать спасибо -- спасибо!
>>12166181. Не используй глобальные переменные. Передавай cursor в create_table.2. Используй context manager (через with): https://stackoverflow.com/a/47501337/6879054Context manager'ы автоматически выполняют действия после конца блока with. Закрывают соединения, файлы, коммитят изменения и все в этом духе.Еще один момент есть — commit сохраняет новые данные в бд. Если ты не планируешь выполнять много действий с бд за раз, лучше выполнять commit сразу. В твоем случае, в конце функции create_table. Ну или используй context manager.
>>1216634Большущее спасибо, выручил
Как заставить питон узнать экзит код программы из баша?
>>1216735Ты питоном программу запускаешь? Как именно?
>>1216738os.system
>>1216739А, все, я понял. Он отправляет экзит код по дефолту, сорри, я совсем новичек, хочу по быстрому скрипт накалякать не уча баш
>>1216748Отправляет, но не на всех системах. Лучше, использовать subprocess.call: https://docs.python.org/3.4/library/subprocess.html#subprocess.call
>>1216753Спасибо за инфу, но я все равно только у себя буду это использовать, да и мне os.chdir тоже нужен в нем, так что пока на system остановлюсь
Есть новички изучающие django? Стучитесь в телегу, будем обмениваться опытом @log999
И собственно сам PEP 563:https://www.python.org/dev/peps/pep-0563/
>>1216361окей, спасибо
>>1216785не думаю, что он скоро выйдет
>>1216797Ну это понятно, скоро только стабильная версия 3,7 выйдет.Я скорее обращаю внимание анона на сам факт 4.0 и annotations.
>>1216816Что "4.0" и что "annotations"?
https://github.com/Wizarysan/telegram-dj-botВкотился
>>1216856>https://github.com/Wizarysan/telegram-dj-botПару меняцев назад о чем-то похожем думал. Оно будет работать как радио, если следующий трек будет поститься до конца текущего?
>>1216857Ну он просто тупо посылает песни, теоретически можно подгадать, но всё равно в чатике придется жать на проигрывание
>>1216870Да вроде, телега сама на следующий переключает.
>>1211640Меня тоже на джуна все это спрашивали. Правда, если ты все это знаешь и имеешь немного опыта, ты уже middle считай и можешь спокойно просить 120-160к. Я вот через 5 месяцев джуноебства за 70к свалил на другую работу, где в 2 раза больше дали.
>>1216748через ос или субпроцесс ты один хуй в терминал будешь команды слать башовые, так что проще все же на баше\фише написать одну строчку чем городить простыню на питоне, сед бат тру
>>1216406Нужно было ставить linux докер
>>1216908АААКак же я нахуй ору АХАААебать профессионалы уровня /pr, str.split() умеет АААХА
>>1216857Спасибо за коммиты, добрый человек!
>>1210308 (OP)Молю, помогите изменить текст лейбла из функции другого класса, неделю бьюсь и нихуя не понимаю.https://pastebin.com/VbJWeg9WТам наверху по кнопке 'download' кликните, сразу весь исходный файл будет, а то комменты поехали малость.
>>1217089Попробуй вынести label из __init__, а то переменные в нем только при инициализации создаются. А еще ты вызываешь методы из неинициализированного класса window да и вообще код говно, если честно
>>1217125Бля, первое забудь, в глаза ебусь, суть в том, что ты неицеализированный класс используешь
>>1217125>да и вообще код говно, если честноНах так прикладывать?
вот вам свеженького принескак видите положняк потиху двигается, и далеко не только меня посещают ебанутые праведные мысли за веб-змеямозиле надо толкнуть васм, и под растом оно ясень хуй буксует, слишком низко, а как только черти заимплементят питонический интепретатор туда, то сами подумайте что будетнароду на конфе дали зеленый светhttps://www.youtube.com/watch?v=hRt0pjybkQ8
>>1217167>мозиле надо толкнуть васм, и под растом оно ясень хуй буксует, слишком низко, а как только черти заимплементят питонический интепретатор туда, то сами подумайте что будетК тормозному педону добавятся тормоза жид-машины и все это вместе приведет к взрывному росту акций интел и продажам топовых процессоров, а мобильный рынок полностью загнется от беспомощности?
>>1217183>мобильный рынокустремится ракеттой вверх, 16 ядер и 8 гигов будет не в топовой самсе, а в каждом дометы месседж сосвсем проибалшколота не знает х86, но АRМ для нее тот самый ПК, так что все будут качать эту тему, оставляя настоящие рабочие станции проф криаторам
>>1217189>устремится ракеттой вверх, 16 ядер и 8 гигов будет не в топовой самсе, а в каждом домеНо ведь в педоне нет многопоточности.
>>1217194Зато есть multiprocessing
>>1217198С овер 9000 стоимостью межпроцессного взаимодействия. На немощных армах, которых только кокоядерность и спасает от унижения с их per core performance.
>>1217200>С овер 9000 стоимостью межпроцессного взаимодействия. На немощных армах, которых только кокоядерность и спасает от унижения с их per core performance. Ну производительность ведроида спустя два года обновлений же хавают? Хавают. Вот тут точно так же, только мобилу раз в полгода менять.
>>1217162Создавать класс, наследовать его и внутри родительского класса создавать инстанс наследуемого это пиздец
>>1217211А как правильно, покажи хоть, а то я тебя не понимаю. Я следую теории и примерам из гугла, они все примерно так и выглядят. За исключением того, что не существует ни одного примера, где бы описывалось, как в одном классе получить значение переменной, сидящей в функции другого класса.
>>1217217Что тебе мешает сделать проперти и вызывать его в другом инстансе?
>>1217218То, что я ничего в этом не понимаю без примеров.
Нашел классную вакансию python developer, где опыт работы не требуется студентота. Так вот, требуется знание автотестов UI. Что анон посоветует почитать?
>>1217364selenium
что за нотация? рекурсия? метод std не определенstd = (ys[xs < 3] - base).std()
>>1213992Сам по такой занимаюсь. Первая часть вроде хорошо изложена, автор разжевывает основы языка и объясняет, что делает каждая строка кодаЮ которую только что наговнокодил. А вот проекты как мне показалось там так себе. 2d игра по сути бесполезная, т.к. на питоне игры делать все равно никто не будет. 2 проект это некий вводный по дата саенс, но опять коротко и не совсем актульно, а про джангу уже ответили, но я до нее еще не дошел. В целом мне понравилась, так там еще кроме языка есть всякая дополнительная инфа по установке\настройке питона, pep8 и тд. В целом для новчика мне кажется хорошая книга, но я и сам новичок и других книг еще не читал.
>>1217400Операции выполнятся в следующем порядке:a = xs < 3 # вернет bool (если у xs не переопределен оператор "<")b = ys[a] # доступ к значению по индексу в списке или по ключу в словареc = b - base # если код рабочий, то здесь должен быть переопределен оператор "-", потому что у чисел нет метода stdd = c.std() # просто вызов метода stdstd = d>что за нотация?Это не нотация.>рекурсия?Нет.>метод std не определенЧто ты имеешь ввиду? Это ошибка, которую ты получаешь или что?
>>1217400>метод std не определенУверен?https://docs.scipy.org/doc/numpy/reference/generated/numpy.std.html
>>1217405>>1217406Если это numpy, то вот эта>b = ys[a]хуйня вообще может штуки-дрюки творить.
>>1217412Explicit is better than implicit, говорили они... Special cases aren't special enough to break the rules, говорили они...
Есть матрицы A и B, B имеет размерность меньше A по обеим осям. Нужно получить 3-хмерный тензор, где B всталена в A во всевозможные позиции. Как с одним фориком сделать понятно, но хочется на чистом numpy.
>>1210308 (OP)Здравствуйте. Сори за возможно тупой вопрос, но как пользоваться стандартной библиотекой? Есть смысл ее учить (я так понял там в районе 400+ модулей)?
>>1217682Если не планируешь зарабатывать деньги кодингом, то учить смысла нет.
>>1217682>как пользоваться стандартной библиотекой?Через import. Да и не только. Когда ты используешь "a b c".split(), это тоже, по сути, функционал стандартной библиотеки.import mathprint(math.sin(0))import reprint(re.findall("[А-Яа-я]+", "Съешь еще этих мягких французских булок, да выпей чаю"))>Есть смысл ее учитьДля начала — вопрос: зачем ты планируешь использовать Питон?Если для работы, то смысл есть. Если для себя — смотри сам. Если ты планируешь использовать Питон для матана — это вообще другой вопрос, и там применяются другие библиотеки.
>>1217687Я хочу для начала интернет магазинчик небольшой сделать с несколькими разделами на пару десятков позиций. Набить руку. Но хочу написать на питоне с его стандартными библиотеками, без фреймворков. В будущем, конечно, думаю зарабатывать на этом, но пока хочу начать с чего-то не сильно грандиозного, но и не слишком простого. До этого серьезно не кодил, только решал задачки по алгоритмам и немного задач с codewars.
>>1217689Оооо че ты захотел... ну удачи. Через месяц бросишь нахуй.
>>1217689>Но хочу написать на питоне с его стандартными библиотеками, без фреймворковНе надо, возьми фласк, напиши в нём и та будет достаточно хардкорно, потом почитай исходники фласка как разберешься с апи
>>1217692Почему?
>>1217702Ниасилишь. У тебя пара лет уйдет только на изучение. Тебе необходимо будет реализовать не только витрину магаза, а срм, шаблонизатор, с бд наебаться вдоволь и многое другое.
Сап, хотел тут полистать 500 Lines or Less, неожиданно не нашел где украсть. Может есть у кого?на либгене, русрекере и флибусте нет.
>>1217704То есть лучше сразу с фреймворка начинать?
>>1217707первая ссылка https://github.com/strump/500lines-pdf/blob/master/500L.pdf
>>1217710для начала изучи сам язык
>>1217728Что ты подразумеваешь под "изучением"? Разве придумать проект и начать его постепенно реализовывать, параллельно осваивая матчасть это не изучение?
>>1217732не слушай старого пидораса, только с реальной четкой задачей и можно чему то научится, ибо фрустум поиска снова и снова будет сужатся до хуйня_нейм, а не томика луца, лишь от взгляда на который уже будет плохо
>>1217734Ога, а потом будет неочевидные места костылить самым идиотским способом и думать, что все делает правильно, пусть хотя бы книжку на 300 страниц прочитает какую-нибудь, прежде чем за фреймворк приниматься
Пиздос анон, почему? Почему это происходит? Я пол дня убил чтобы найти эту хуйню. За що?
>>1217815Пиздец, потому что надо было внимательнее читать. Очевидно, потому что эта функция работает не так, как я ожидал. Но самое забавное, что до сегодняшнего момента всё работало как надо и с этой функцией...
>>1217815Устранение символов из последовательности с обоих концов. То есть он и с конца проверяет наличие символов из последовательности, которую ты указал и удаляет его, тройка у тебя там есть
https://2ch.hk/pr/res/1217842.htmlhttps://2ch.hk/pr/res/1217842.htmlhttps://2ch.hk/pr/res/1217842.htmlhttps://2ch.hk/pr/res/1217842.htmlhttps://2ch.hk/pr/res/1217842.html
>>1210308 (OP)Ваш pycharm не работает. Пишет Permission denied
>>1211807>>1211767сраные школьники >def readfiles(pathlist):> files = []> for path in pathlist:> files.append(open(path,'rb').read())>> return filesскорее всего похерятся пробелы какаба блять, если так, то сам пробелы проставишь, ничего сложного
>>1217815грепнуть на самом деле проще было ну да ладно
>>1217710еще один, да вашу ж мать, почему ни один малолетний долбоеб не вспомнит, что у него в школе информатика не просто так?>то есть лучше сразу с фреймворка начинатьто есть начни с computer science ебать тебя в рыло, прочти "информатика" Броя, ну хотя бы первый том, все 4 не стоит (хотя он и вправду интересно пишет), начни читать Кнута, попробуй в высшую математику (при бауманке есть отличный магазин учебных материалов. если ты не в москве живешь, ну найди учебку по вышке), перестань учить код, начни учить программирование, все! это все, что вам нужно, школяры, чего вам еще надо? выглядите как долбоебы, ей богу, вам за 60 лет накинули материала, стандартов, инструкций, сиди да обмазывайся знаниями и применяй их же. нет, нам надо на двачике попиздеть "а с чего начать?", "а какой фреймворк стоит учить первым?", "а почему мой код не работает?", дебилы, блять.
>>1218373Учи это всё до 25 и опоздай вкатиться
>>1218408ты что, ебанутый?это учится все от силы за год, если ты учишься.естественно, если ты по какому-то блядскому часу в день тратишь на чтение книг, попутно наяривая свой пиструн на два монитора, при этом делая домашку, работая в ворде что бы заранее себе резюме харкнуть, то да, так до 25 и просидишь
>>1218408>о 25 и опоздай вкатитьсяА че 30+лвл прогромизды неликвид?
поясните за деплой модуляпо сути это ведь набор скриптов которые нужно проиндексировать через distutils.setup и потом просто положить куда надо, верно?
>>1218125Права доступа для pycharm.sh расширь.
перекат для тех кто не любит жрать говноперекат для тех кто не любит жрать говноперекат для тех кто не любит жрать говно>>1218866 (OP) (OP)>>1218866 (OP) (OP)>>1218866 (OP) (OP)перекат для тех кто не любит жрать говноперекат для тех кто не любит жрать говноперекат для тех кто не любит жрать говноперекат для тех кто не любит жрать говно
>>1213029кидай список
>>1213029сука, кидай список!