https://github.com/TheKnightsWhoSayNi/info/wiki/HatПрошлый: >>867611 (OP)
>>874631 (OP)На фото слева: cpythonНа фото справа: jython
Обзмеился и вкатился
ебать оно срёт как буйволвся эта живность, котики-собачки там мимикательные, даже сраные змеи - и всё с говном блядь. кто в своём уме будет заводить живность что бы за ней говно убирать? нахуй оно надо? фу блядьа теперь по теме треда:хочу написать эдакую ленту новостей. добавлять штук 20-30 источников - страниц веб-сайтов с новостями и что бы оно всё вместе выгребало из них и складировало.Что порекомендуете под эти цели?
>>874671requests flask brain
>>874671Ну и re
>>874671интересует именно чем парсить/выгребать заголовки и как/куда/когда их проще складироватьбек буду делать на джанго, тексты статей - мне newspapper понравился, ну или во всяком случае мне его функционала хватит пока.>>874676>brainэто ORM какая-то? ну на реквестах и ре можно конечно, но чёт это муторно как-то звучит. особенно если редизайнут. мне бы что бы по x-path'у или типа того указать что за элементы на странице искать и пусть дальше само как-то.
пытаюсь проптимизировать вьюхи в джангоподелии на запросы к бд.Три модели, Book, Author, Genre. В Book соответсвенно автору и жанру добавлены по одному ForeignField'у. В Genre и Author такой еболы нет. Есть вьюха, котораяparams['book'] = Book.objects.select_related().get(id=book_id),т.е одним запросом вытягивает все прицепленное к конкретной книге.Есть еще 2 вьюхи которые выдают книги по Genre и по Author. Но там фокус с select_related не прокатывает, в итоге у меня вот такая сраньparams['genre'] = Genre.objects.get(id=genre_id)params['books'] = Book.objects.filter(genre=genre_id). Мой вывод - Джанга обратную связь не может прохавать. Как быть?
>>874647Чем jp хуже cp?
>>874631 (OP)Увидел в б такой тред, возник вопрос.>ДОКУМЕНТОВ ИЗ ВК ТРЕД 2>1) Заходим на пашка.com/docs>2) Вводим в поиске или >дату(20161112) или стандартный >префикс для фото( DCIM, SRC и >тд)>3) Просматриваем найденное>4) Находим интересные фоточки >и кидаем в тред>4) PROFIT!>Как узнать id человека по >найденному документу:>Адрес ссылки: >doc386641432_439078355 id - >386641432 А теперь внимание, вопрос - на питоне можно ли написать программу, которая будет сохранять имена файлов, которые находит по всем возможным запросам, в базу. А в ней уже искать по айди. То есть реально ли спарсить базу имен доков в вк?
>>874731>написатьда>спарсить базу имен доков в вкнет
>>874683У новостных сайтов часто RSS есть. Можешь парсить его. https://github.com/kurtmckee/feedparser Или другие либы поищи.
Повторю вопрос из предыдущего тредаКак юзать cython? Чем больше читаю, тем меньше понимаю, примеров кода что забавно, дохуя, но что с ним делать? Этот код запускать через сам питон? Его компилировать чем то? Код генерится из питоновского, или учить новый синтаксис? Нихуя не понятно, помогай анон
>>874735про фидпарсер знаю, спасибо, даже использовал разок. Но парсить к сожалению надо не фиды, их у этих сайтов как правило нету.
>>874631 (OP)Вот это господская колбаса! Увожаю! Наверное на джанги кодит!!!https://gist.github.com/anonymous/96f220c2281c8a9e541d6d313ecf80eeЗацените чуть более удобный классовый сниппет для Сублима.
>>874690params['books'] = Genre.objects.get(id=genre_id).book_set.all()>>874744Ну если rss нету и API не предоставляют, то парсить HTML, что еще остается. С помощью BeautifulSoup, например. Придется подзадрочиться.
>>874739Удваиваю, чет нихуя не врубаюсь в jpython, cpython, pypy какие-то блять, в чем разница, поясни анон
>>874753Вот я и хотел узнать может есть какой-то уже подход к этому всему, что бы я не заёбывался лишний раз. Так-то конечно можно и на re + requests написать было бы, но заебусь же.Нашёл вот такую плюшку: http://django-dynamic-scraper.readthedocs.io/en/latest/introduction.html попробую её.
>>874754CPython - реализация языка Python на Си. То самое, что можно скачать с python.org. Дефолтная версия.Cython - надмножество Python, которое компилируется в код на CPython C API. Позволяет мешать типизированный код на Си (или С++) и обыкновенный код на питоне. Результат можно скомпилировать в библиотеку для CPython. Так, например, написан numpy.CPython C API - библиотека на Си для работы с интерпретатором CPython. Может то же самое, что и собственно Python. Используется, когда нужна скорость - можно написать важные места на Си или С++, обернуть их при помощи апи в питоний модуль и вызывать из интерпретатора.Jython - реализация Python для JVM.IronPython - реализация Python для .NET
>>874784UPDPyPy - JIT-компилируемая реализация Python на CPython. Позволяет получать прирост производительности из ничего. Из минусов - возникают проблемы с популярными библиотеками CPython (нужно портировать). Часто это не стоит того, поскольку скорость CPython в основном всех устраивает.
>>874760>Так-то конечно можно и на re + requests написать было быНа всякий случай оставлю здесь предупреждение: http://stackoverflow.com/questions/1732348/regex-match-open-tags-except-xhtml-self-contained-tags
>>874785>>874784добра
>>874784Если я правильно понял, то коротко все сводится к тому, что если хочешь скорости, по учи с, затем импортируй этот код в питоновский скрипт?
>>874739В двух словах так.0. Ты не начинаешь с Cython.1. Ты начинаешь с того, что изучаешь написание расширений на Python C API (https://docs.python.org/3.6/c-api/). Пишешь на Си какую-нибудь дурацкую функцию, типа подсчета суммы элементов массива или там среднего значения массива. Оформляешь ее в модуль для питона при помощи API. Если Си тебя не привлекает, то дальше идти не имеет смысла - Cython подразумевает что ты знаешь Си.2. Изучаешь компиляцию модулей и подводные камни, такие как необходимость под виндой компилировать модули тем же компилятором, что был использован для компиляции интерпретатора.3. Охуеваешь от замороченности процесса. Начинаешь понимать, какие проблемы решает Cython (инбифо убирает 80% заморочек).В двух словах на вопросы> Этот код запускать через сам питон? Его компилировать чем то?Компилировать в Си при помощи отдельной программы, затем компилировать Си в питоний модуль при помощи обычного компилятора. Питоний модуль вызывать из питоньего модуля при помощи import.> Код генерится из питоновского, или учить новый синтаксис?Учить синтаксис Си, учить как синтаксис Си превращается в синтаксис Python. Действительно, простой питоний код можно пропустить через Cython и компилятор Си, но никаких бонусов это не даст. Грубо говоря, нужно сначала простой питоний код наполнить информацией о типах данных, тогда Cython начнет делать нормальные оптимизации и ускорит код.
>>874807Да.
>>874812>Питоний модуль вызывать из питоньего модуляПитоний модуль вызывать из питоньего кода>учить как синтаксис Си превращается в синтаксис Pythonучить как синтаксис Си превращается в синтаксис Cython
>>874807> если хочешь скорости, то учи с.Внимание на точку где-то вот тут ↑, которая знаменует конец предложения и означает законченность мысли.мимо
>>874815Тип того. Cython используется скорее для написания оберток и API к коду на Си, чем для самостоятельных оптимизаций.
Питоняч, поясни долбоёбуimport randoma = random.randint(0,1)b = random.randint(0,1) if a == 0 else b = 0c = 1 if a == b == 0 else c = 1print (a)print (b)print (c)Ругает пикрил. Чяднт?
>>874838> b = random.randint(0,1) if a == 0 else b = 0b = random.randint(0,1) if a == 0 else 0>Чяднт?http://pastebin.com/
>>874839СпасибоПонял, исправлюсь.А если понадобится, допустим,Если а==0 б=1 иначе с=1, то придется иф...елс строчить, в одну строчку никак?
>>874843>в одну строчку никак?locals()['b' if not a else 'c'] = 1Но лучше конечно никогда так не делать, и if...else написать.
>>874850Принято. Пойду дальше говнокодить)
>>874671Scrapy
>>874748СХОРОНИЛ!
>>874683> x path Тогда lxml. Годная вещь, сам использовал.
>>874690.prefetch_related
Как делать циклично вложения в json?Типа такого:{ "key" : { "subkey" : { "subkey" : { ... } } }}
Аноны, помогите.http://pastebin.com/2LBAH15Plist - список чисел в строковом виде, максимальная длина элемента в списке известна.Как распарсить полученный бинарник, для получения исходных данных?
>>874874А как ты делаешь, что у тебя не получается? Делаешь дикт с такой структурой, дампаешь в джейсона.
>>874880Как код нормально вставить сюда?Пытаюсь понять, что я делаю не так. Даже не представляю, как делать потом цикл.s = {"str" : ""}sub = {"substr"}s['str'] = subwith open('test.json', 'w') as t: json.dump(s, t, indent=4)
>>874877Если не ошибаюсь, твой вариант слепит все биты вместе и потом ты хрен поймешь, где какое число.Почему бы не попробовать bitstring.Bits(int=int(list), length=MAX_LIST_INT_LENGTH)?
>>874890ideone, pastebin
>>874890https://gist.github.com/anonymous/1958413d178ac4f2732104e0a79e7461>sub = {"substr"}Это вообще set. Или конвертируй его в лист, чтобы в джейсона дампать или лучше дампай в пикуля, заодно и читаться быстрее будет.
>>874903>Почему бы не попробовать bitstring.Bits(int=int(list), length=MAX_LIST_INT_LENGTH)?Избыточность в записи.Мне нужно как можно меньше битов потратить для записи, поэтому и записываю в бинарник.
Питоняч, на связи снова >>874838-кунВнезапно оказалось что мой говнокод - хуйня и распределяет еденицу между а,б и с с вероятностью 50:25:25. В связи с чем вопрос: назначить еденицу одной из трёх переменных чтобы вероятности для каждой из переменных были равными?
>>874931как назначитьБыстрофикс
>>874931Придумал, уже не надо
>>874925Это понятно, но у тебя каждый раз получается разная длина.[len(bitstring.Bits(bin=bin(i))) for i in (1, 64, 1023)]# [1, 7, 10]Как ты потом будешь определять, где у тебя одно число закончилось, а другое началось?Лично я вижу несколько вариантов:1. Какая-то стоп-последовательность, при достижении которой парсер будет понимать, что текущее число закончилось.[биты_числа]{EOD}[биты_другого_числа]{EOD}2. Префикс фиксированной длины (>= максимальной длине твоих int), в котором будет указано, какой длины следующее за ним значение.{PREFIX:7}[bitstring.Bits(bin=bin(64))]{PREFIX:10}[bitstring.Bits(bin=bin(1023))]3. Не ебать мозг, а прогнать результат bitstring.Bits(int=int(list), length=MAX_LIST_INT_LENGTH) через какой-нибудь алгоритм сжатия.Disclaimer: Я не битоёб, так что мог знатно обосраться где угодно.
>>874938Спасибо тебе!
>>874938>>874943>1. Какая-то стоп-последовательность, при достижении которой парсер будет понимать, что текущее число закончилось.>[биты_числа]{EOD}[биты_другого_числа]{EOD}В этом случае биты числа надо еще закодировать так, чтобы EOD в них не встречался. См. https://en.wikipedia.org/wiki/Bit_stuffing
Вопрос, с немного байтоебским уклоном.С сервера мне приходит такой ответ, как на пикче.А чуть ниже как это должно быть распарсено.Как видите после каждого слова идет байт, говорящий о его уровне вложенности. Причем фишка в том что иногда уровни могут повторятся.Мне нужно распарсить это, и обойти все возможные значения.Я уверен что они использовали уже что-то готовое для сериализации/десериализации.Вопрос как может называться эта хуйбола? Пишу на питоне, я думаю должна быть либа для этого или еще что. Не руками же они так делают.
>>874931>>874935Наверняка какую-нибудь хуйню придумал. Смотри как надо:https://gist.github.com/anonymous/05e7762ffb2a49c4943008953f1c9df9
Подскажите аутисту плез, какой стек технологий нужно знать, что бы нормально устроится джуном в веб разработку на питоне & Django?
>>874975Питон и Джанго.
>>874980Чтобы выучить стихотворение нужно выучить русские буковы и стихотворение.
>>874959Точняк, массивом значительно короче 3 строки вместо моих 10спасибо, анон!
>>874958>Я уверен что они использовали уже что-то готовое для сериализации/десериализации.На 99% уверен, что нет.Как будет парсится строка 'Humans2Man3Hui12cm2Woman3IQ653Tits4Size'? Возможны , конечно, эскейп-символы всякие.Но зачем, если есть JSON или MessagePack
Интересно, чем пахнет.
>>874993>Как будет парсится строка 'Humans2Man3Hui12cm2Woman3IQ653Tits4Size'>?Ты внимательно посмотри, там же не числа, а байты. Соответственно твоя строка вообще никак парсится не будет.Но вот такая будет:Humans\x02Man\x03Hui12cm\x02Woman\x03IQ65\x03Tits\x04SizeСоответсвенно уровень вложенности, где-то до символа пробела с кодом 0x20, потому что дальше уже начинаются печатаемые символы, которые могут быть использованы
>>874906Мне не понятно, как это автоматизировать в цикле.Другими словами, как создать вложенный словарь в цикле с заданной глубиной вложенности?
Переписываю примеры из pysdl2 на воображаемый игровой движок с минимумом бойлерплейта. Занятие интересное. Зацените, какая няша:Хэллоуворлды:https://gist.github.com/anonymous/3fc21dc051ebcaf68ae7a5c40bd1f1dfПонги:https://gist.github.com/anonymous/21827ca804f5976c2663ae09b4b54e30Он такой красивый, удобный, питоничный. Мой манядвижок.
>>874975cgi интерфейсы. orm и sql, хотя бы git и уметь в virtualenv, хорошо понимать как работает что-то в пайтоне. Напишешь callable декоратор - уже хорошо.
>>874958Для начала: тебе приходит именно строка в виде 16-ричных значений или как-то иначе?
>>875084Хех, только что-то глянул вакансии моего города(картохо-дс), и такого набора не хватит.з.ы. хотя для фриланса - самое то.мимо-другой-пистонист
>>875104Мне приходит бинарный блоб, который нужно распарсить, выкинуть не нужное, а потом построить граф всех возможных путей.Сразу скажу что на серверную часть я повлиять никак не могу.Вот распарсил таким быдлокодом, но мне пойдет.Вначале просто генерирую список всех возможных путей, вставляя символ '>' между нодами. Но пока неизвестно может ли имя ноды содержать этот знак. Надо тут что-то по-умнее придумать.На выходе у меня просто лист всех возможных значений, типа:Food>Fruit>AppleFood>Fruit>BananaFood>Vegetable>CarrotИ это хорошо, потому что я могу дальше регэкспом убрать все ненужное.И только потом строить граф.
>>874958Какому типу данных должен соответствовать узел на этой диаграмме - dict, TreeNode?Какой тип данных у листьев?Если всё хуячить диктами, то получается так:http://pastebin.com/yn4eyYPJ
>>875051Да, ты прав. Но наличие ограничения на 31 уровень (до 0x20) уже говорит о велосипедо-костыльности этого протокола.
>>874958Короч напиши ожидаемый Json для своего примера.
>>875119У тебя все правильно.Тип данных на усмотрение.
>>875053>>875119
>>875117Почитай про hexdump, может поможет тебе(с парсингом).С а с этим...попробуй подумать над словарём, в который будут вводится значения на соответствующий "уровень"(уровень определяется цифрой после слова), и в ключи к этому слову гонит всё что имеет "ранг" пониже, если встречает такой же уровень - создаёт новый элемент и т.д. и т.п.
Вброшу животрепещущий вопрос:Зачем в питоне кортежи?
>>875149immutable списки же
>>8>>874748Скажите, что за наклонный шрифт?Я такой-же хочу.
Как сделать так, чтобы число оставалось с 4 знаками после запятой? Даже если их больше или меньше, все равно чтоб было 4
>>875165Round тут не подойдет, ведь он именно округляет
Привет, аноны. Пишу программу для себя. Так вот, как мне сделать так, чтобы я в консоли вводил функцию один раз, а программа потом подставляла в нее аргументы? программа должна работать с любыми мат функциями, понятными питону.. А то не хочется каждую новую функцию в самом коде менять.
>>875165import redef solution(n): pattern = re.compile(",[?!,.]{4}") if pattern.search(str(n)): return n if '<' or '>': return 4
>>875165y = float("{0:.4f}".format(x))
>>875196>>875194Спасибо =*
>>875172func_text = raw_input('Vv3dite Funkciju:')func = eval('lambda x:' + func_text)for x in range(0, 10): print(func(x))
Здрасте, а в питоне есть возможность управлять отдельными пикселями (или какой-нибудь схожий функционал)? Захотелось заново изобрести велосипед
>>875200А как мне туда мои аргументы, для которых я решаю функцию, подставить?
>>875218>>875200А, вроде разобрался.
Питон срет как буйвол потому что сред довольно редко.мимохозяинпитона
Аноны,хочу написать бот для клиентской ммо на питоне,в интренете нашел лишь библиотеку Ghost ,для эмуляции работы пользователя.Может кто сталкивался или интересовался подобным?
>>875241И что тебе не нравится? Боты по большей части так и работают.
>>875246Я довольно зеленый в Python ,кроме веба ничего не делал. Хотел запросить гайдов или примеров подобного .
Вот есть у меня готовый сайт на джанге, который с темплейтами работает, то есть фронт генерит сам. Теоретически, чтобы перевести его на django-rest-framework мне надо будет переделать только вьюхи и заняться фронтом на жс, так ведь? Просто мне надо освоить rest и я думаю насколько сложно это будет сделать на основе моего текущего тестового проекта.
>>875268Я диванный, но думаю да. Достаточно возвращать вместо рендерреспонса json с контекстом. Дальше клиентсайд будет парсить это дело. В lightweight django было немного про SPA на ресте и AJAX.
>>875268Погляди Джанго бай экзампл, там было годно о ресте расписано чё к чему
>>875268Еще тебе надо будет написать некоторое количество сериализаторов.У django rest framework (далее DRF) есть годная фича, называется рендереры.Среди них есть TemplateHTMLRenderer - рендерит в HTML, используя стандартный механизм Джанго.Можешь на первых порах его использовать, если не хочешь сразу лезть в JS.
>>875268Существующие вьюхи можно не переделывать. Просто пишешь API на DRF, который будет использовтаь твой фронт на жс.
>>875157Consolas это всё. Стандартный виндовый моножир.
>>875216pysdl2?
Отличная шапка, еб вашу мать. Я чуть не блеванул.
>>875469А что с ней? Или ты не про шапку, а про оппик с говном?
>>875473про оппик
>>874631 (OP)Посоны, есть небольшое приложение на cgi скриптах. Фронтенд на javascript, backend собственно питон и постгрес. Ну так вот, делаю запрос к базе и мне в консоль браузера приходит строка в escaped unicodeb'\xd0\x9e\xd0\xa8\xd0\x98\xd0\x91\xd0\x9a\xd0\x90: \xd0\xbf\xd0\xbe\xd0\xb2\xd1\x82\xd0\xbe\xd1\x80\xd1\x8f\xd1\x8e\xd1\x89\xd0\xb5\xd0\xb5\xd1\x81\xd1\x8f \xd0\xb7\xd0\xbd\xd0\xb0\xd1\x87\xd0\xb5\xd0\xbd\xd0\xb8\xd0\xb5 \xd0\xba\xd0\xbb\xd1\x8e\xd1\x87\xd0\xb0 \xd0\xbd\xd0\xb0\xd1\x80\xd1\x83\xd1\x88\xd0\xb0\xd0\xb5\xd1\x82 \xd0\xbe\xd0\xb3\xd1\x80\xd0\xb0\xd0\xbd\xd0\xb8\xd1\x87\xd0\xb5\xd0\xbd\xd0\xb8\xd0\xb5 \xd1\x83\xd0\xbd\xd0\xb8\xd0\xba\xd0\xb0\xd0\xbb\xd1\x8c\xd0\xbd\xd0\xbe\xd1\x81\xd1\x82\xd0\xb8 "polygons_geom_key"\nDETAIL: \xd0\x9a\xd0\xbb\xd1\x8e\xd1\x87 "(geom)=(0103000020E6100000010000000500000001000080AECD4240D8F2D8F65DDD4B40010000007CCB42403D54684298DA4B4001000080BCCE42403CF478FEF0DA4B40010000002DCF42404F1E9642DFDC4B4001000080AECD4240D8F2D8F65DDD4B40)" \xd1\x83\xd0\xb6\xd0\xb5 \xd1\x81\xd1\x83\xd1\x89\xd0\xb5\xd1\x81\xd1\x82\xd0\xb2\xd1\x83\xd0\xb5\xd1\x82.\n'Как её сделать человекочитаемой?
>>875493'ОШИБКА: повторяющееся значение ключа нарушает ограничение уникальности "polygons_geom_key"\nDETAIL: Ключ "(geom)=(0103000020E6100000010000000500000001000080AECD4240D8F2D8F65DDD4B40010000007CCB42403D54684298DA4B4001000080BCCE42403CF478FEF0DA4B40010000002DCF42404F1E9642DFDC4B4001000080AECD4240D8F2D8F65DDD4B40)" уже существует.\n'Если в консоль браузера, то тебе в js тред.
>>875493string.decode('utf-8')
>>875511pic>>875493Попробую, конечно, там спросить. Спасибо.
>>875537Это питонья инструкция же.
учу djangо, polls app официальной документации. подтупливаю на строчке:from . import viewsанон, что за . после Import? для чего служит .?Я с импортами разобрался, но что за точка и какие функции выполняет разобраться не могу.
Ньюфаг вкатился, как ускорить обработку большого файла? Файл реально большой, >8 гигов.
>>875609goole://python read large file threads
>>875607>Я с импортами разобралсяНе разобрался, если у тебя такой вопрос возникает. Иди дальше изучай импорты, особенно в 3-м Питоне.
>>875609Порезать на части - Обработать части параллельно - Склеить результат.
>>875607. - это "отсюда" в никсахиз той же папки имеется ввиду
>>875617Скорее всего так и сделаю
Сап, питонач, нуб в треде. Нужно резко вкатиться в питон, т.к. надо для проекта написать поисковик. С кодом разберусь, но нужно как-то запилить локальный веб сервер. В гугле нормальной инфы не нашёл. Объясните аутисту как запилить локальный веб-сервер, который бы исполнял питоновский код и поддерживал БД
>>875844google://python web stack
Анон, объясни про пердолинг с двумя версиями питона.Дано: я учу джангу и одновременно перекатываюсь под линукс, есть 2.7 и 3.5, вся работа с джангой проходит в виртуальном окружении (там стоит 3.5). Для удобства через -update-alternatives поставил дефолтной третью версию питона может это и есть причина происходящего?. При попытке установки некоторых пакетов (Weasyprint) pip сыпет ошибками, а вот под 2.7 ставиться все нормально.1) Я правильно понимаю, что у меня сейчас два стула: или мучиться с установкой нужных пакетов под 3.5 или переходить на 2.7?2) Исходя из такой поддержки 3.5, получается, большинство джангопроектов пишутся на 2.7?
>>875844фласк глянь
>>875899Гугли пакеты, которые ошибками стреляют. Почти на все есть форк под 3.х.
>>875618не понял
>>875899pip3 install
Анончик, как с помощью 'python' можно заморозить/приостановить процесс (windows,linux)?
>>875607Проще говоря, в папках есть файл '__init__.py', преобразующий папку в "пакет", из которого можно импортировать файлы, не пердолясь через 'sys.path.append('. . .')'.
>>876095дрочи os из либы питона и windows hooks для винды. Для пинукса не знаю как там это устроено
Как записать в файл поток ввода?т.е. как писать в файл то, что я ввожу в командную строку?
>>875233Гвидо, ты?
asdasdasd
>>876465виз опен("файл.ткст", "в") эс ф: ф.врайт(инпут())
>>876507Не не.Не чтоб записать нечто один раз в файл.А чтоб перенаправить весь поток ввода в файл.
>>876513Тебя гуглу не научили?
>>876513http://ru.stackoverflow.com/questions/495848/%D0%9F%D0%B5%D1%80%D0%B5%D0%BD%D0%B0%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-sys-stdout-%D0%B2-%D1%84%D0%B0%D0%B9%D0%BBЗаебали блять немощные. Вы бы хоть перед тем как спросить сходили в гугл.
>>876513Под винду есть модуль msvcrt. Под линух есть альтернативы этому модулю.виз опен("файл.ткст", "в") эс ф: вайл Тру: ф.врайт(мсвцрт.гетч())
>>876514>>876515Господа прошу не бомбить.Гуглом я пользоваться умею, но видимо задавать вопросы не способен чтоб выразить желаемое. Имелся в виду не поток, а вообще - всё происходящее в консоли.Т.е. все выражения, утверждения, трейсбеки, ошибки - весь консольный текст. С потоками давно разобрался. Т.е. есть дохуя способов записывать вывод в файл - через логгер, через всякие модули типа code, через перенаправление потоков. Это всё есть в гуглах и книжках. НОВ качестве подзадачи я хочу логгировать строки, которые посылаются интерпретатору. В том числе - неправильные выражения.Пишу import msvcrt - и это выражение чтоб записать в строку.Пишу impoooort Chlen - чтоб это тоже сначала писалось в строку, а потом уже выполнялось интерпретатором. Причем ошибку которую он выдаст я перехватывать умею.Я пробовал копаться в _io библиотеке, но пока не хватает сноровки разбираться что там к чему.Пробовал получить доступ к буфферу StringIO и к буферам потока - но тоже не вышло нихуя.Одно из решений - организовать REPL типаиф __нэйм__ = "__мэин__" вайл тру консол_инпут=инпут(">>>>>") exec(консол_инпут)эксепшены всякие чтоб не слетел цикл если выражение я ввёл неправильноНо интересует - есть ли другой способ через получение доступа к функционалу самого интерпретатора? Вот сука есть "файл" <stdin> - я не понимаю как устроена работа с этим потоком.Читаю Лутца - он приводит кучу способов перенаправления потоков.Т.е. можно в стдин запихать строки из файла, аутпут из другого процесса.По умолчанию в стдин пихается поток символов с клавиатуры.А КАК МНЕ, не создавая полноценный кейлоггер, писать в файл подчеркнутую Оранжевым хуйню?
еще есть вариант с pyreadlineНо это ебаный костыль.Нужно значит кейлогер ебашить.
>>876522Почитай про tee.Простой вариант решать твою проблему - написать скрипт, который будет работать аналогично tee. и вставить в поток stdin и stdout+stderr.it -> tee(1) -> process (join stderr with stdout) -> tee(2) -> stdoutНу или сделай класс потока, который помимо основной задачи ещё и логирует, и заверни в него потоки stdin и stdout.
>>876590А ещё есть такая штука как logging.StreamHandler.Возможно проще всего будет её навесить на потоки.
Изначально есть строка вида:00000000: 15 03 03 00 30 69 9C 7F FA 5C B7 31 8C 5E 48 D3 ....0i...\.1.^H. /n00000010: 45 20 4C 8A 9B DB 84 8F 7F 2F 47 3E 6B E4 16 D9 E L....../G>k... /n00000020: A0 92 6E AB A2 00 72 72 BD E0 DC 4B 64 C2 C2 CA ..n...rr...Kd... /n00000030: 68 90 30 2C 39 h.0,9Затем я записываю её в БД и при извлечении получаю строку типа:00000000: 15 03 03 00 30 69 9C 7F FA 5C B7 31 8C 5E 48 D3 ....0i...\.1.^H. /n00000010: 45 20 4C 8A 9B DB 84 8F 7F 2F 47 3E 6B E4 16 D9 E L....../G>k... /n00000020: A0 92 6E AB A2 00 72 72 BD E0 DC 4B 64 C2 C2 CA ..n...rr...Kd... /n00000030: 68 90 30 2C 39 h.0,9Опять таки, форматирование сохраняется, всё чотко, НО когда вставляю эту строку в HTML таблицу на сайте - всё идёт по пизде.Неужели придётся парсить строку,делить её на строки поменьше и выводить их по очереди(или какой-нибудь ещё йобо-метод), неужели нельзя сохранить кашерное форматирование и в вебе?python 3, flask.
>>876665string.replace('\n', '<br>') или <pre>...</pre>а вообще стыдно должно быть такие вопросы задавать
>>876665> /n
Петян, немного не пойму про скоп.вот пишу я некоторое говно и замечаю, чтошапка у половины скриптов одна и таже, тоесть нужно как-то там инициализироваться,сделать препроцессинг и всё такое короче.и решаю, что всю эту хуйню можно было бывывести в отдельный файл, а потом делатьимпорт всего этого.так вот есть два файла:vsja_huina.py - будет выведенный предпроцессингwork_work.py - а тут чисто со скоряка ебашить.vsja_huina.py содержит функцию init()и в ней уже в переменные, которые былиобъявлены раньше в vsja_huina.py должнызаполняться правильными ништяками.допустим выглядит так:foobar = []def init(): foobar=[1,2,3]а вот в work_work.py я хочу делать вот такfrom vsja_huina import *init()и уже чисто тут ебашить дальше по хардкору.мне не нужна всякая ебатьня с классами, уменя императивно функциональный подход.но возникает такой конфуз, что я в workwork.pyпосле вызова init() список foobar ещё пустой.я уже пробовал и global, но что-то не работаетоно через импорт.помогай!
>>876733import aprint(a.foobar)a.init()print(a.foobar)
>>876733>>876745foobar = []def init(): global foobar foobar=[1,2,3]
Сап питоначЕсть ли тут falcon guru??очень нужен адекватный применр несложного, но красивого RESTful api, написаного на этом ЧУДО-фреймворке. всем плюсы в карму и звезды на гитхабе
>>874631 (OP)Аноны, меня немного отталкивает отсутствие явной декларации переменных в питоне, есть ли что-нибудь вроде линтера, который будет кидать ошибку, если не увидит переменную в коментарии типа# variables some_value?
>>876751> несложного, но красивого RESTful apiУ них тутор есть на сайте
>>874631 (OP)Как сделать чтобы ОНО : {{ a = input("a = " ); b = input("b = " ); c = (a + b); print(a, b, c) }} считало значение "С", а не тупо выдавало "AB" подряд?
Сап, пишу корявый генератор случайных чисел методов серединных квадратов. То есть:есть например число 0,6311, мы узнаем его квадрат (0,39828721), и берем у него средину - 0,39828721 . Это и будет наше случайное число. ну и так дальше, отталкиваясь от предыдущего числа. Я тут немножко наговнокодил http://pastebin.com/vc7pvRxR , и всё работает нормально, но если генерировать больше тысячи чисел, то начинают вылазить какие-то экстеншены, непонятные мне как новичку. Помогите разобраться пожалуйста.
>>876785Нужно строки перевести в числа>a = int(input("a = " ))
>>876792Спасибо! 30 минут почитал самоучитель и решил сам что-нибудь налепить, но видимо надо еще вникать.
>>876786Ты превышаешь лимит на глубину рекурсии. Это значение можно изменить, но лучше переписать код так, чтобы от рекурсии вообще избавиться. Использовать цикл, например http://pastebin.com/Jfr92nwj
>>876786>RecursionError: maximum recursion depth exceeded while getting the str of an objectЧто непонятного?Когда ты вызываешь функцию, текущие значения переменных сохраняются, потому что предполагается что ты сюда ещё вернёшься. Поэтому ты не можешь вызвать функцию, из неё ещё одну, из той ещё одну и так до бесконечности - память закончится. Поэтому введено ограничение на глубину рекурсивных вызовов.Используй цикл вместо рекурсии, или пиши yield.
>>876830>>876831Понял, не знал даже что есть такое. Спасибо вам
Прошел КодАкадемию и собственно подскажите где или что читать, чтобы можно было делать практику и можно было так же её проверить ?
>>876898НигдеОлимпиадки можешь порешать на питонтутор, поиграться в однострочники на кодварсНо лучше наверни стандартные укус+синк пайтон и потребность в твоем запросе отпадет
>>876903Спасибо.
>>876903think для 2.x или только его и стоит дрочить ? или все-таки 3.0 из хипстерского, превратился в рабочую лошадку ?
>>876913Да пиши сразу на тройке, там разницы не дофига(Честно не помню на 2 или 3 синк, я думал 3)
>>876915С другой то и то может понадобиться, все равно спасибо.
>>876916Я учился на двойке, а писал только на тройке. Двойка с тех пор ни разу не пригодилась, но и мук перехода я не испытывал ни единого раза.Синк - охуенная и одна из самых полезных книг для вката в питон. Хочешь понять где его использовать и как - читай. А на версию похую.
>>876676Ну, я не особо силён в этом.Но раз вы сильны, тогда ласт вопрос: он ещё и пробелы съедает, что делать?Условия те же.
>>876746нет, так не работает.>>876745так работает, но я не хочу неймспейс а,надо по хардкору так ебашить, без имени.
>>876924> мук перехода Хули там сложного, если тебе легаси не нужно поддерживать?
>>876983Именно
>>876751Вообще, суть фалкона - это какая-то альтернатива сервлетам из джавы, где ты создаёшь ресурсы, биндишь их на какой-либо урл и обрабатываешь с них определенные запросы по интерфейсу (on_post, on_get, on_delete, етц).Причем все это одна большая абстракция.Вообще мне в этом плане больше бутылка нравится.
Для Питона есть батарейка, реализующая маршалинг/анмаршалинг JSON как в Go? Ну, указал для каждого поля соответствующий элемент JSON-объекта — и всё дальше автоматически парсится без промежуточного словаря, не отжирая миллионы лишней памяти на больших документах. Вижу примерно, как это на ijson построить, но боюсь велосипед сгородить.
>>877167Можешь расширитьhttps://docs.python.org/2/library/json.html#json.JSONDecoderА так наверняка кто-то уже написал подобное.
Сап анон, нужно авторизироваться на сайте через стим. Как это вообще происходит?Тебя перенаправляет на стимовскую авторизацию, там ты авторизируешь, затем тебе приходит токен, и этот токен ты передаешь сайту?
Аноны, как считать из файла первые несколько бит и удалить их оттуда?
А есть ли Пистон Джуны ?
>>877297а есть
>>877328Ну как приложение к JS, может быть, сдается мне что кто-то тут "врете" провоцирует.
>>874631 (OP)Аноны, я девелопер с 5+ опыта и появилось время для изучения 1 нового языка чисто для общего развития. Сижу сейчас на 1 стэке технологий и в принципе python для моих задач в мобильной разработке не подходит но есть желание узнать почему этот язык так хорошо набрал популярность за последние 10 лет ну и вообще расскажите в каких отраслях и сферах python применяется(кроме математики)PS: в Java стэк ебал я в рот вкатываться
>>877360>я девелопер с 5+ опыта>А защем пистон то нужен, хлопцы ?
Есть решение этой задачи. В начале года это решение мне дали в одной из питон тредов, кажется. Но я сейчас нихуя не понимаю, в чем суть этого решения и что вообще происходит. Может кто-нибудь объяснить ?
>>877376Проебалось само решение. Два принта внутри функции я сам написал, чтобы понять что происходит
>>877374съеби зеленькаждый инструмент для своих задачТеоретически все можно описать и 1-м ЯП но на каких-то языках различные задачи будут реализованы изящнее и читабельнееМеня этот момент интересует. Что python умеет делать лучше других и в чем конкретно
"не является внутренней или внешней командой, исполняемой программой или пакетным файлом"Не пойму, как фиксить.
>>877382>Что python умеет делать лучше других и в чем конкретноНичего. Раскручен Гуглом.
>>877387%SystemRoot%\System32 %SystemRoot% %SystemRoot%\System32\Wbemв path-e прописал помимо пути к самому питону та же хуета
>>877388ясно понятно.Увидел множественное наследование и отсутствие дженериков - убежал в ужасе.
>>877382Учи Хачкелл или С/С++ подобные, лучше чем такой же ОПП-шный пистон.
>>877382не знаю как насчет лучше остальных, так как знаю только питон, а вот для вкатывания идеален из-за своей простоты и распространенности. могу ошибаться. трогал js, perl, pascal.
>>877360ебашь Си, хули ты тут жмёшься, как вошь?
>>876953>>876733Петян, помогай.
>>877415Почему не сделать наследование классов, но вместо этого ебаться с двумя подключаемыми модулями ? Просто чем дальше в лес тем охуеешь ты NN модулей для простых функций делать, вместо того что бы уже создать КласНейм(БейзКласс): хочешь те же функции из БейзКласса, хочешь можешь их же переиначить, хочешь можешь через даже после подкрутки вызвать исходную функцию c помощью return super . Просто спрашиваю. Я бомж если что .
>>877435вот писал и забыл экранированый \ впаять, тю.
>>877435ну это куча системных скриптов, старая школа, ебашу императивно по хардкору, нахуй мне классы, не одноклассники же.пока работает так, что нужно делать импорт всего, вызывать init() и опять импортировать всё. ну не пиздец ли?
>>877447А как оно должно быть ?Написал from ... import ...И вауля, пустая функция без объявления данных извне должна дать результат ? Ну сам посуди что нужно как минимум два модуля импортировать, значит проще все это написать в одном в через банальные классы.
>>876733Че-то я нихуя не понял в чем у тебя проблема, анончик, но функция же должна возвращать что-то, правильно?типа def init():....foobar=[1,2,3]....return foobarи в workwork.py ты типа делаешьfrom vsja_huina import *foobar = init()не?
>>877454нет, функция инициализации, она накидает там в глобальные переменные то, что нужно.есть файл xxx.py:foobar = []def init(): global foobar foobar = [1,2,3,4]если теперь импортировать всёиз ххх вот что получается:>> from xxx import >> foobar[]>> init()>> foobar[]>> from xxx import >> foobar[1,2,3,4]видишь, только при повторном импорте у меня фубар не пустой.
>>877461ох ты бля, звёздочки проебалисьfrom xxx import *
>>877379Светлая тема? Ебать ты изващенец
Суть такова есть стража дворца : есть массив в котором лежат математически операторы в виде строки. Как так сделать, что бы их можно было использовать в качестве операторов? Пусть будет список вида [1, '/' , 2], как мне поделить один на два, создавать функции для каждого оператора или есть более компактное решение?
Что не так? Как пользоваться этим импортом поцоны?
>>877461А, кажется понял тебя.Тогда может быть вот так?foobar = []def init():....global foobar....foobar = [1,2,3,4]init()Во время импорта всей хуйни из модуля, вызывается функция init(). Таким образом, тебе будет доступна уже измененная переменная foobar.
>>877470.py удоли
>>877474ты про это?
>>877475Не заметил сразу. Все в одной папке лежит? Только чоо проверил, у меня работает
>>877478>> Все в одной папке лежит?да
>>877469это у тебя ификсная запись, привычная человекам, но ты можешь использовать постфиксную [2,2,'+'] или префиксную ['+',2,2] запись. и просто идти по массиву выполняя операции
>>877479постой - постой"всё" - это...?
>>877480Не понял, как мне этот лисп поможет совершить операцию, при помощи строки содержащей операцию? Можно примерчик?
>>877478в чем хоть причина может быть?
>>877469Создавать функции безопаснее и эффективнее, но если ты любишь погрязнее то есть функция eval
>>877472ну да, так конечно оно будет работать. но меня просто удивило такое поведение. хотелось бы, конечно, иметь возможность вызывать инициализацию по своему усмотрению, иначе можно б было и не заворачивать всё в отдельную фукнцию, а так побросать, хули, не жалко.
>>877486{op: eval('lambda a, b: a' + op + 'b') for op in ['+', '-', '*', '/']}
>>877485Покажи что ли код скрипта из которого ты вызываешь script1
>>877469Я написал для тебя охуенный калькулятор. Вот он - https://ideone.com/TVusa5Остальные операции сам добавь.
>>877485>если запустить интерактивный сеанс работыТо есть написать python и нажать enter
>>877494А ты хорош
>>877475> Kirill> import script1> python import script1Блядь, в голос проиграл на всю квартиру.Показал бате, тот тоже ржет сидит.
>>877497А я (>>877491)?
>>877498До меня только сейчас дошло. Я смеюсь и краснею от своей тупости(я анон который пытался ему помочь)
>>877499Ну нахуй ваш лямбда-фанатизм
>>877496спасибо, няша!
>>877500>>877498да я не тот кирилл, посоны((просто так получилось((((9
>>877484http://pastebin.com/8n04f4Kf
>>877500впрочем, что такого что бы помочь КИРИЛЛУ?
>>877488Смотри, вот так работает:#xxx.pyfoobar = []def init():....global foobar....foobar = [1,2,3,4]#work.pyimport xxxxxx.init()print(xxx.foobar)
>>877520я ему это еще вчера кинул, >>876745 >>876746он сейчас закукарекает что не хочет импорт ххх
>>877524>я ему это еще вчера кинулА, я не увидел.>он сейчас закукарекает что не хочет импорт хххНу вообще-то в PEP8 написано, что стоит избегать импортов со звездами. Так что это решение не только работает, как нужно, но еще и PEP8 соответсвует. Что вообще заебись.https://www.python.org/dev/peps/pep-0008/#imports>Wildcard imports (from <module> import *) should be avoided, as they make it unclear which names are present in the namespace, confusing both readers and many automated tools.
>>877535Избегать не значит не использовать.С неймспейсами всё предельно ясно,мне нужен один глобальный.Хули в Пистоне без изъябств нельзянормальное поведение как source вбаше нарулить? Заебали эти ООП ужимки пидерские.
>>877524Да обосрался ты вчера, ещё не подсохло.
>>877702гнида неблагодарная
>>877700уйди нахуй олень
>>877379>Замазал имя пкОру, деванон по названию папки, это нечто новое
>>877740может быть у него там никнейм, по которму его можно в соцсетях пробить.
Ребят, не подскажете библиотеки для работы со звуком?Чтобы можно было считать файл, воспроизвести наоборот или как-то изменить сигнал?
>>877744Да кому он нахуй нужен
>>877747gstreamer для проигрывания, ffmpeg для редактирования>>877744> никнеймСтавлю, что это Kirill
>>877764udvaivau
>>877402>>877411уйдите, сектанты
Прочитал "Укус Питона", дальше пошел на сайт Джанго читать документацию, и как-то сложно очень. Есть ли что-то по фреймворку для новичков?
>>877790Книжку Адриана Головатого попробуй.
>>877792Спасибо, пойду смотреть
Джанго-аноны, что такое Class based views и для чего они нужны, простым языком?Дошел в учебнике до этих самых вьюшек, а там просто фразочки типа "скопируйте код, вставьте, вот у нас и получилось )000". Во всяких видео и статьях там подразумевается, что я уже должен был настолько задолбаться без них, что благодарить бога за их существование.
>>877801http://djbook.ru/rel1.5/topics/class-based-views/index.htmlкуда еще проще то, блять?
>>877790> 2016 > укус питона Ну ты даешь! Надо было Луца один раз прочитать и все.
>>877708>>877710вся суть невежды.
>>877795Не вздумай читать это говно.Сейчас уже 1.9 вышла, а там все про 1.6 рассказывают.В Djang'е очень много вещей изменилось, так-что лучше ничего djbook нет и русского
Есть хуйня на пикче.Есть код: http://pastebin.com/rwwx8qzVНе могу допереть, как исправить, чтобы не выходил за рамки списка( ясен хуй in range, но где ). Второй вопрос как поместив переменные, которые имеют числовые значения в список - передавать обновленные числовые значения. Очевидно что если есть List = Yv, где Yv = 0.003, то при print(List) он выдаст 0.003. Однако когда я захочу записать List = 0.004, он нихуя не изменит мне значение Yv, а лишь запишет на индекс i - 0.004. Можно наверное словарь использовать, но чет не ебу как тогда с ним матрицу сделать и переходить по нему к следующему элементу.
>>877830почему не так?print([Elem_list[count+1] for count, value in enumerate(Elem_list) if value != 5000])
>>877830Elem_list = [Yv, Y1, C1, C2, C3, L1]это не список со ссылками на твои переменные, а список со значениями, которые лежат в твоих переменных
>>877830Ваще не врубаю о чем разговор, чем тебе List.insert(i, val) не подходит?
>>877883pop(i) предварительно, естесно
>>877830while i < len(Elem_list): calc = Elem_list + 1 Elem_list.pop(i) Elem_list.insert(i, calc) i +=1не то?
>>877887перепеп8 какой-то
>>877849окей. как мне получить список со ссылками на переменные?
Ньюфаг вкатился. Решил решить простенькую задачку. В принципе как ее правильно решить я знаю, но интересен вариант при помощи словаря.Условие: вернуть в словах вводимое значение от 0-9. Типа если ввел 1, вывод будет 'один'. Как правильно будет вернут значения ключа словаря?
>>877954>Как правильно будет вернут значения ключа словаряd[1] ?
>>877961блять точно, это же очевидно. пиздец затупок.
>>877961лучше так d.get(number, default_value)
Юзаю bs4html = urlopen("https://vc.ru/p/why-no-leave-ny")bsObj = BeautifulSoup(html.read())allTags = bsObj.findAll("p")print(allTags)В общем, он выдает мне простыню типа [<p>, 1бла-бла<a href="http://myday.nyc/ya-ne-uezzhayu/" target="_blank"> 2бла-бла</p>, <p>и далее. Как мне убрать все тэги из текста, чтобы осталася сам текст, то есть 1бла-бла 2бла-бла?
Прохожу я codecademy и вижу, что не догадываюсь как решать большинство заданий из тех, что ближе к концу (типо звездочки на маты и всё такое)Надо будет зубрить какую-то книженцию по алгоритмам или как?
>>878007Pandas
>>878007.get_text()allTags - список. Значит,for tag in allTags:...print(tag.get_text())
>>878008>звездочки на маты и всё такое>Надо будет зубрить какую-то книженцию по алгоритмам или как?Ещё один "чтец книг".
Аноны, есть словарь вида:{'a': int(), ...., 'z': int()}И переменная int().Как найти ближайшее к этой переменной значение из словаря?
>>878209Pandas
P A N D A SANDAS
>>878214Что именно оттуда?
>>878217методы: как итерировать словарь, как делать вычитание, как делать сравнение переменных, как присваивать переменной значение.
Шел сегодня по по питон треду и случайно наступил в говно. Пригляделся по-лучше, оказалось что это pandas.
>>878220Шел сегодня по по питон треду и случайно наступил в говно. Пригляделся по-лучше, оказалось что это django.
>>878221>>878220поднял и съел ^_^
>>878089Спасибо тебе большое. У меня к тебе другой вопрос есть. Используя тот самый, кода как возможно убрать из allTags текст, который находится в div-e, в названии которого фигурирует слово comments?Вот есть такой див class="b-content-w b-content-w-commentsЯ думаю, что сначала выцепить все названия div-ов в лист, затем уже каждый элемент искать на наличие comments и как-то его вырезать из основного текста
>>878234*тот самый кусок кода
>>878197Ну я хочу научиться думать как программистер. Сам не тупой, но чёт сложно без подсказок решать такое
Начал знакомство с "волшебным миром" кодинга с приложухи на телебоне. Худо бедно дочитал до "булева логика", оператор not и тут логика начала сбоить. Как это понять? Комменты почитал, но так и не воткнул.if not True: print("1")elif not (1+1==3): print ("2")else: print("3")
>>878234Если тебе нужен только текст статьи без лишней херни, то ищи тег <article>http://pastebin.com/Kvw3GsyP
>>878296if not True - False(1+1==3) - Falsenot (1+1==3) - TrueЗначит,если не True, пишем 1или если 1+1 не равно 3 (это True), пишем 2во всех остальных случаях пишем 3Но вообще, это хуета какая-то. Тут вообще есть только 2 варианта(True/False) и print('3') не выполнится никогда и потому нахуй не нужен.Можно было простоif (1+1==3):....print('1')else:....print('2')Анон, правильно рассуждаю или у меня тоже логика сбоит?
>>878314Что именно то тебе не понятно?
В шапке висит ссылка на потонувший тред, поэтому дублирую:Как в питоне создавать свои методы? Пишу программку на Qt, хочу для кнопки добавить свой метод. Пока что нагородил костыль http://ideone.com/vjXxtl , который вызывает функцию, которая принимает кнопку как аргумент, но хочется оформить все методом
>>878364создаешь класс-миксин, у которого есть этот метод, потом класс миксин миксуешь с оригинальным классом твоей кнопки, потом создаешь кнопку, которая наследует миксин и оригинальный класс твоей оригинальной кнопки. Наверное как-то такмимо_с_дивана_после_Fluent_Python
>>878364Наверное, надо создать свой класс, который наследует все от какого-то родительского класса. Ну и создать там свой метод.Может что-то вроде такого http://ideone.com/Vkcpd3
Что из себя представляет типичный рабочий день python (web) разработчика? Какие задачи встречаются наиболее часто и какие технологии приходится чаще всего использовать?
>>878391ТО что надо, спасибо
Объясните мне, дауну: что отправляет джанго при аякс-запросе, и что, блять, принимает ебучий аякс-апрос? Я весь день пытаюсь сделать ебучий лайк баттон, но ничего не выходит. Может кто-нибудь дать рабочий пример подобного кода, в гугле какая-то одна непонятная херня.
>>878403Есть вьюха. Назовем её меин пейдж. Вьюха отображает список объектов - постов. У каждого поста есть возможность поставить лайк. Лайк - это другая вьюха, на которую идет другой урл.Что мне писать в аяксе в урле? Урл главной страницы, или урл вьюхи лайка? Что мне писать в дате?
>>878403Завтра ищешь в интернете книжку Django By Example..Страница 154 - Adding AJAX actions with jQuery. Там как раз пример про кнопку "Лайк"
>>878413да там все равно все будет по-другому написано. Мне просто нужна инфа. Что писать в аякс урл, когда у тебя лайк идет через другую вьюху, и как получить дату с сервера.
>>878403JS http://pastebin.com/EFGAqyuYHTML http://pastebin.com/Jar8b5peВьюха http://pastebin.com/hAdztNyt (не орите с + - - знаю, что можно через бул, но я тренировался с использованием чоисов)
>>878416>Что мне писать в аяксе в урле?Урл той вьюхи, которая будет делать лайк. Делаешь POST запрос на этот урл и отправляешь данные (айди поста, действие(лайк/дислайк) или что там у тебя). Во вьюхе делаешь свое дело. Запрашиваешь сегодняшнюю дату и все это дело шлешь обратно. Можешь слать JSON, HTML, plain text. Показываешь на странице. >>878419 Извини, сложновато разобраться сейчас, плохо соображаю.Что у тебя конкретно не работает? В браузеры открывал инструменты разработчика и отслеживал че происходит вообще?
>>878437Я использую GET реквест, пост здесь не нужен.Не меняется значение количества лайков после клика.переписал аякс реквест вот так вот http://pastebin.com/96ZNkfeH Ничего не изменилось.Хз, в девтулсах копался - он вообще ни на что не ругается. Я тупой пиздец, я ничего не понимаю.
>>878447Если своим запросом изменяешь базу данных, то это, все таки, должен быть post.Если выложишь на гитхаб, то попробую поковырять
>>878457Здесь парадокс в том, что саксесс аякс-запроса проходит, но он не меняет значение класса тотал лайкс даже если вбить какой-нибудь левый аргумент вместо полученной даты. Т.е. я вообще хз, в чем дело.В смысле должен быть пост? Это просто ссылка, которая запускает вьюху, которая сама по себе меняет значение в БД без поста. Я прикрепял код - там видно, как она работает. Зачем здесь пост?
>>878458Без аякса с пейдж-рефрешем лайки обновляются нормально
>>878458Я хз, обложись принтами и делай console.log(data) в своем жс-скрипте, открывай инcтрументы разработчика и смотри что выводит. Ну или алертами выоди свои данные.Судя по вьюхе, чтобы получить число лайков в шаблоне тебе надо писать data.data.Попробуй просто выводить $('.total-likes).text(data.data)Насчет post vs get https://ru.wikipedia.org/wiki/POST_(HTTP)#.D0.92.D0.BB.D0.B8.D1.8F.D0.BD.D0.B8.D0.B5_.D0.BD.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.BE.D1.8F.D0.BD.D0.B8.D0.B5_.D1.81.D0.B5.D1.80.D0.B2.D0.B5.D1.80.D0.B0
>>878488проблема была в том, что this находился в success аякса. вынес за его пределы - все заработало нормально.
>>878488энивей, большое спасибо за помощь
>>878341Можно так перевести? если не верно: пиши 1 илиесли не верно (1+1==3): пиши 2 иначе: пиши 3Т.е. задача найти неверность, она во второй строке, почему тогда 2 а не 1?
Аноны уже 2 час туплю есть код:'' - пустая строка....x1 = ''x2 = ''x = [x1, x2]....тут операции, изменяющие x1 и x2 x1 += 'str'....print (x)Результат - ['', '']Какого хуя?
>>878535когда ты делаешь x = [x1, x2], то ты добавляешь в список значения переменных, но не сами переменные. Так это работает в питоне.Нужно делать:x1 += 'str'x[0] = x1
>>878522(1+1==3) - это ложь - FalseТо есть, логика такая:if not True:print("1")elif not False:print ("2")else:print("3")
>>878522Два Хауди Хо тебе
>>878220>>878221
>>878364>В шапке висит ссылка на потонувший тредБля... а ты ожидал …?
>>878364Бля, там ещё верблюд, нахуй, не читал.
Кто такая Екатерина Поршнева?
>>878663Ламповая JS-няша, одна из лучших в украине, которая никогда не даст воняющему говном джангисту.Мимо-ебарь-задавай свои ответы
>>878694>Ламповая JS-няшаспасибо, не надо.
>>878663Звучит как псевдоним для хорошего такого хуястого трансвеститаА >>878694 только подтверждает мою догадку
>>874631 (OP)Django. Я что-то неправильно написал? Вроде всё по мануалу делаю.
>>878709напиши from . import models
>>878657Верблюд? Ах да, верблюд, ну да. Ну, слон вашему дому
>>878712
>>878723Внезапно, но заработало вот так. Как же надоедает, что периодически обновления выходят и приходится постоянно заново учить. И логики-то тут особой нет, просто зазубриваешь и всё, ска.
>>878725Отклеилось
Аноны, прошу вашей помощи. Сам школота, прогал на паскале, немного к нему привык, при переходе на питон начинается катастрофический затуп. Как понять массивы и двумерные списки на питоне? Прочитал кучу информации по этому повод, как то: гайды, главы из учебников и т.д., но не нашёл ничего кроме "мы заполним этот массив таким способом, но вы его так не заполняйте, потому что потом вы не сможете изменить значение, бла-бла-бла...". На паскале всё было довольно просто: ты вводишь две переменных для итерации и по их индексам обращаешься к элементу. В питоне же я АБСОЛЮТНО не понимаю, как обратиться к элементу и, например, задание: "В одну строку вводятся пары чисел i и j, означающие наличие связи между городами i и j, заполните матрицу смежности графа 10х10" вызывает ступор, отчаяние и плач. Как научиться работать с этими массивами и как их понять?
PyCharm professional поддерживает js ?
>>878737arr = [[1,2,3],[4,5,6],[7,8,9]]for i, x in enumerate(arr): for j, y in enumerate(x): print('item [{},{}]'.format(str(i), str(j)), '=', y)
two column primary key with auto-increment можно в джанге нативно сделать, без sql?http://stackoverflow.com/questions/5416548/mysql-two-column-primary-key-with-auto-increment
>>878725А, не, нихуя, он снова перестал работать. Я начал сомневаться в адекватности Pylint'а.
>>878743Может быть что-то типа такого http://stackoverflow.com/a/28712960/5201699
Flask, Pyston 2.ЧЯДНТ?
>>878801import sysreload(sys)sys.setdefaultencoding('utf8')
С компьютерами знаком хорошо, с никсами, с сетями, с алгоритмами и протоколами, безопасностью и т.д. Но все это на уровне любителя, урывочно, нету базы. Хочу вкатиться в программирование как сильное хобби, есть СИСП в бумаге, но он сложный, я фейлюсь в первых заданиях и не понимаю, как работает guess в их находителе квадратного корня.Хочу купить бумажный вариант попроще, но книги сейчас очень дорогие поэтому спрашиваю без задней мысли (пользоваться онлайн-манами я все равно буду, но хочу иметь хорошее в бумаге): покупать Think Python? Или есть вариант лучше по соотношениям Талмуд/Полезность/Практичность?Еще скажу, что школьную математику забыл, но знал на 5. С английским проблем нет.Алсо, думаю купить Таненбаума по сетям и архитектуре ЭВМ.
>>878808Синк это чисто понять какие у питона есть применения. Не узнать, типа почитать тредики и прикинуть чё из него делать, а вот прям реально на своей жопе выполняя задания вдуплить какие есть либы, куда их пихают и тд. Короче это самая прикладная книжечка по питону, рекомендую если уже знаком с синтаксисом.Более-менее фундаментальная литература по именно вкату в компьютерные науки это вопрос совсем другого уровня абстракции. Я не знаю что тут рекомендовать, сикп есть и на питоне уже, но его как и Таненбаума можно и не осилить.Потому предлагаю просто начать с синка а там по мере необходимости уже двигаться дальше
>>878814А писать-то простые скрипты для простой жизни и простые программы (например прилепливатель тэгов к файлам, чтобы их можно было легче искать и сортировать, такая на питоне уже есть) эта книга научит? Или если у меня такие потребности, то лучше не заморачиваться покупкой и просто читать Укус Питона? Очень не хочется читать литературу для домохозяек (или чуть выше).
>>878821Именно об таких фиговинах она и естьУкус такой себе на самом деле, годится на мой взгляд разве что после кодекадеми не забыть чё учил вообще.Можешь ещё automate the boring stuff with python глянуть, но оно нудное как пиздец и точно не вместо синка
>>878823Ну тогда покупаю.
>>878825на русском есть пдфка кем-то давно переведённая, это чисто FYI
Пацаны, возникла проблема с установкой модуля numarray.libnumarray , погуглил, но ничего нужного не нашел, может кто сталкивался с такой проблемой?
>>878827Зависимости посмотри, может (скорее всего) там нужна какая-нибудь ебала типа пакетов python-dev и тд
Поцики, у меня тут накопилось за год изучения питона хуева туча отсылок на книги-курсы-туториалы-инструкции-ресурсы и тд и тп для вкатывающихся, но признаться там чуть бардак а разгребать и систематизировать их некогда, и вроде как мне уже не актуально.Но может кому для вката полезно будет. Это доска в трелло.Пишите мейлы - всех добавлю. В реплаи к этому посту или на mos@openmailbox.org (ответы от меня могут попадать в спам, имейте ввиду, хотя я просто буду кидать инвайт на доску через мейл с трелло) Ну и не баловаться на доске особо.
Как вкатиться в торнадо? Если вообще не шаришь во всей этой асинхронной херне и т.п. С чего начать?
>>878869псомотри примеры асинкио, там на пальцах показывается как работать севентлупом
>>878836Говно все эти ваши курсы-хуюрсы, дайте нормальной литературы по фундаменталу для погромиста. Чему там в ВУЗах учат.
>>878912нахуя тебе? кормен Алгоритмы: потсороение и анализ + язык, наиболее подходящий для области, куда ты хочешь вкатиться
>>878912Есть крутой курс Harvard CS50 - http://cs50.tv/2015/fall/ - на русском версию тоже где-то виделА так держи копипаст кого-то из /pr/ с кем я в целом согласен:В идеале, если ты хочешь не просто полюбопытствовать, тебе нужен полноценнный курс из нескольких смежных областей:Базовый матан, на уровне первого курса, чтобы понимать математические формулки, алгоритмы на графах, и подобную хуйню. Используй любую пару вузовских учебников поспрашивай в sci, если хочешь, я рекомендую Ильин-Садовничий-Сендов ч.1 матан и Яблонский дискретная математика, можно читать только про алгебру логики, автоматы и графы.Базовая теория множеств, после первого пункта пойдет на ура. Подойдет Куратовский-Мостовский гл.1-3,6-7, хотя выбор не принципиален, можешь навернуть какой-нибудь видеокурс. Это очень важный пункт, потому что в норм книжках не разжевывают каждую мелочь, а используют терминологию множеств. Поэтому, в частности, ты и охуел от Кнута а от Успенского-Семенова вообще обосрешься.Теперь ближе к делу. Колмогоров-Драгалин, тут без вариантов и от корки до корки. Можешь порешать задачки из Лаврова-Максимовой, это гораздо полезнее, чем просто зубрить теорию.На этом этапе ты уже, вероятно, сам поймешь, чего тебе надо. В любом случае, здесь ты уже без проблем осилишь Кнута, Кормена etc. Если же тебя больше увлекает теоретическая сторона вопроса то бишь, построение новых алгоритмов, а не воспроизведение существующих, то наверни Успенского-Семенова, а затем гугли публикации за последние джвадцать лет. Также неплохо обмазаться методами оптимизации, теорией моделей, ну и по своей предметной области всяким. Такие дела
Суп двощ, как на пихтоне подсчитать сумму чисел между первым и вторым отрицательными элементами в листе.
>>878938находишь индекс отрицательного числаделаешь проход от этого числа до индекса первого попавшегося отрциальетного числасуммируешь, не?
Есть текстовый файл с 1000 ютьюб каналов, хочу чтобы утилитой их прогоняло и выводило количество подписчиков и дату залива последнего видео. Как сделать?
>>878995>>878938Pandas
>>878919Основы я не втыкаю. Систематизации знаний у меня нет.
>>879039у меня тоже нет. не помешало вкатиться джуном в 27 лет без образования и опыта работы
>>879025>PandasКак с этим добиться этого >>878995 ?
>>878836>mos@openmailbox.orgДобавь меня.justmiacc@gmail.com
>>879075Когда же вы, толстячки, помрете уже.
>>879197Добавил
>>879199Никогда :3
>>874631 (OP)Время суток анон_программач. Стал изучать python, написал скрипт для закачки контента с треда двача. Оцените код, дайте советов мудрых как его оптимизировать и распараллелить (сейчас работает в один поток) http://pastebin.com/RJjVYGnw
>>879234pep8 сука> formatStr = "{0:." + str(decimals) + "f}""{argooment:.{decimals}f}"> int(round> sys.stdout.writeprint> os.mkdir/os.chdirpathlib> url.spliturlparse> soup.find_all('div', {'class': 'image-link'}, 'a')soup.select("div.image-link a")> list(range> len(sys.argv)docoptКороче, всё плохо.> распараллелитьasyncio, threading
>>879240Спасибо Бро. Буду курить
>>879199Сам ты толстячок. Правда, у меня было еще за плечами 4 немаленьких проекта на гитхабе, которые я пилил, пока сидел на шее у мамки :3
>>879271
>>879443Ты неосилятор с профильным во, который не может вкатиться? Ору с таких немощей.
>>874785На пайпай написана игра тройки геймз - Temple of Elemental Evil, кстати.Т.ч. для риалтайма подходит даже.Хотя консольных игра на питоне я не припомню.Ну, вернее, есть Severance: Blade of Darkness на Xbox Original, но там с производительностью совсем плохо было.
>>878694>в украинеУже нет.http://alchevsk.su/
Для тех, кто родился и вырос в Советском Союзе, существовала огромная страна — одна для всех. Никого не удивлял, к примеру, узбек, которого судьба привела в Эстонию, или латыш, живущий вАзербайджане. Вот и Раиль Каспитский уже очень много лет — житель Донбасса. Здесь отработал всю жизнь на государственной службе, в Перевальском районе и областной государственной администрации, в областной инспекции гостехнадзора. Сын солдата Великой Отечественной, он воспитывался на общих для всех ценностях.— Мой отец стал настоящим примером для подражания, — говорит Раиль Каспитский. — Я и по сей день стараюсь следовать его наставлениям. Он участник Великой Отечественной войны, прошел всю военную компанию с 1937 по 1946 годы, освобождал Сталинград от немецко-фашистских захватчиков и принимал участие во взятии Берлина. Был тяжело ранен, но остался жив.Многонациональный Донбасс принял Раиля тепло. Он создал здесь дом и семью, нашел друзей. Любимая жена Наиля, две замужних дочери, 16-летняя внучка — все есть, что надо для счастья, и глава семьи всем близким старается уделить внимание.— Мои родители и родственники были направлены сюда после Великой Отечественной войны, по программе восстановления Донбасса, — рассказывает Раиль Ханяфович. — Наших соотечественников здесь много. По национальности я татарин, но мои корни в Ульяновской области. Когда-то ещё в советские годы Ульяновская область и Донбасс считались самыми развитыми в отношении братских и производственных связей. Из всех регионов постсоветского пространства десятки национальностей плечом к плечу трудились на Донбассе, духовно обогащали и дополняли друг друга.Но не только работа и семья наполняли жизнь Раиля Ханяфовича. Размышляя о судьбе своих соотечественников, живущих в Донбассе, он понял: им нужна поддержка.— Пятнадцать лет назад, перед о мной встал вопрос о поиске общих интересов своих соотечественников и объединении родственных душ, чтобы совместно решать жизненные проблемы. Здесь я должен сказать большое спасибо покойному имаму г.Алчевска Гирфану Абкадировичу Гильдееву, который посвятил вопросу народного единения значительную часть своей жизни. Мы чтим его память и благодарны ему за все, что он делал для объединения всех народов проживающих в Алчевске и Перевальском районе.День народного единства Раиль Каспитский считает очень важным праздником — особенно в свете того, что нам довелось пережить за последние годы.— Особенно сейчас стал актуальным вопрос в единстве всех народов, которые проживают на Донбассе, — считает он. — Нужно сплотиться против общей трудности, чтобы пережить это непростое время. Я скажу всем известный афоризм, которому стоит следовать всегда: «Сила — в единстве, единство — в вере».Мудрый человек, немало повидавший на своем веку, Раиль Ханяфович убежден: интернационализм — не в забвении своей истории, не в отказе от своего народа. Он в дружбе и взаимной поддержке представителей разных национальностей.— Исходя из своего жизненного опыта, хотелось бы пожелать всеобщего братского единения народов проживающих на Донбассе, — говорит он. — Без единства ни одно общество в современных условиях не сможет выжить и чтобы народности процветали, нужно решать все проблемы совместными усилиями.
>>879486нахуя ты это говно в питонотред принёс, болезненный? попроси модератора пусть удалит
>>879487Почему не зарепортил?Репорт на тебя за это.
>>879489А чё такое? Мультикультурализм. Всё как на Западе.
Врываюсь. Подскажите тему, чтобы можно было написать, чтобы: понять как работает ООП в Пайтоне, как-нибудь реализовать присылание СМСок.По возможности какие-нибудь годные либы, УРОКИ, етц. Так же хайли интерестед в разных примерах\гайдах\идеях для скриптов.А то я только Джанго-макака с 0.5 проектами
>>875058Уважаемый, а можешь скинуть на гитхаб свой мвнядвижок, мне интересно
>>875304>Далее "DRF" Нигде не использовал
>>875609Yield yopta
>>879513Программа для рассылки смс спама.Либа - Twillio Создавай свои классы типа ПартияСпама, наследуйся, автоматизируй. Короче простор для фантазера йоп
>>878995Для начала нужно понять как работать с апи ютуба. Для этого используется гугл. Далее использовать нужно requests и стандартный механизм питона. В зависимости от формата текста, разбивается массив данных по каналам и циклом по каждому каналу используя апи гугла получаешь нужные данные
>>879529Только вот эта либа? Ничего такого, но за неё платить надо, чтобы отображался номер, как я понял. Аналогов нету?
>>879606Жаль, но для нормального использования нужно платитьХотя по-моему бесплатно смс можно отправлять. Смотри курс на Udacity, называется Python Foundation (в одном из уроков они юзают его)
>>879522Должен тебя поздравить, ворнинги типа "переменная объявлена, но нигде не используется" твой организм генерирует отлично.
Я линукс никогда не видел, кто-нибудь может мне объяснить что значит "знание Линукса" в вакансиях, просто встал вопрос переустановки ОС и вот не знаю что выбрать, столько всяких фич как фреймворков джавы...
>>879667>знание Линуксаbash, shell script
>>879670Душевно благодарю, cударь.
>>879667Умение работать с дистрибутивом - с УБУНТОЙ, в основном. Чтобы ты мог сам себе развернуть окружение, настроить
>>879725Арихато, милейший
>>879725я на убунте пайчарм поставил. я ахуенен?
>>879732Умочка!
>>879732Он под линух вроде как и делался изначально. иде для питона же На винду накатывать раньше было неудобно, была путаница со слешами. И если начинаешь писать, то все возможности Пайчарма тебе пока не нужны. Хватит и Атома\Саблайма.Так же в настройку окружения входят и тулы для контроля версий, понимание работы веб-серверов, понимание протоколов. Если есть девопс, то об этом думать не надо, но знать как работает HTTP, что такое гит\свн желательно. Имхо, конечно же
>>879749я на гит из пайчарма коммиты и пуши делаю. Я уже скилованный чувак?
>>879756Ты умочка!
>>879756сколько способов добавить коммит знаешь? Назови, деструктивный… итт
>>879758чет сложна. я жму commit and push - оно само приезжает на гитхаб. Я понял, буду изучать глубже
думал схожу в питонотред PANDAS раздать, захожу, а тут... всем PANDAS
>>879824P A N D A SANDAS
>>874739>Как юзать cython?https://rutracker.org/forum/viewtopic.php?t=5191758http://gen.lib.rus.ec/search.php?req=cython&lg_topic=libgen&open=0&view=simple&res=25&phrase=1&column=def
ВНЕЗАПНО: Как последовательно удалить какое-то количество элементов из списка? И почему на пикрелейтед выходит такая залупа?
>>879947Выведи на экран A после каждого удаления.
>>879948Всё понял, спасибо.
>>878695Воняющий говном джангист порвался
Есть лист:list1=[['OP', 'huy'], ['Abu', 'ohuel']]Нужно чтобы он записывался в txt файл.При вызове выводилось что-то вроде1. OP - huy2. Abu - ohuelПомогите пожалуйста.
>>880043Pandas
>>880055A можно пожалуйста что-нибудь по конкретнее, а то решение нужно прямо сейчас, а библиотеку изучать займет слишком много времени.
>>880043[code]with open('list.txt', 'w') as f: for k,v in list1: f.write("{} - {}\n".format(k, v))[/code]
>>880066Бля, проебал разметку. Там на второй строчке(где for) один отступ, а на третьей - два
>>880066A как это нужно читать, чтобы вывод как тут >>880043 был?
>>880066> {} - {}
Всем привет. Очень хочу в питон, сделал пару небольших проектов на джанго, чистым питоном улекаюсь, но entry-level вакансий вообще не могу найти, везде нужны сеньеры иди 3 года опыта. Что делать?
>>880156слать везде, даже на сеньора. или в пхп укатываться, там куча вакансий для джунов
>>880151>>880066зачем там там это вместо запятой ?
Пацаны, кореш попросил написать бот для флуда объявлениями на местном говносайте. Как это реализовать с помощью питона? Подскажите хотя бы в общих чертах. Респектую
Решил вкатиться в пайтон, и тут такая хуйня:>>> a='dick'>>> b='dick'>>> a is bTrue>>> a='dick dick'>>> b='dick dick'>>> a is bFalseКак я понял, этот оператор дает True тогда, когда две переменных ссылаются на один объект в памяти. Вопрос: "дик" и "дик" — это на самом деле один "дик", а "дик дик" и "дик дик" — это уже два совершенно разных "дик дик"?
>>880182почитай, в чем различие между == и is
>>880170отличный совет от питониста, укатываться в пхп. Я имею ввиду, почему такая ситуация вообще сложилась? Откуда тогда беруться сеньеры?
>>880210Ну пишешь и на гитхаб выбрасываешь всякий охуенчикА потом говоришь что хочешь быть сеньором помидором, тебе говорят что не тянешь, но записывают в стремящиеся, а потом и берут куда-нибудь
>>880212понял, попробую. На гитхабе пока простой блог на джанго и контрибьютинг в API на прошлой работе. Но да, я пиздец стремящийся.
>>880186Как я понял, "а==b" сравнивает значения a и b, "a is b" проверяет, ссылаются ли a и b на один и тот же объект в памяти. Я не понимаю, почему в случае со строкой "дик" переменные ссылаются на один объект, а в случае со строкой с пробелом ("дик дик") на два разных. Как по мне, и "дик", и "дик дик" — это просто строки. Почему пайтон так по-разному их фиксирует?
>>880214Простым блогом можно подтереться. Надо что-то более серьезное.
>>880217да от блога зависитесли он во все стороны срёт рестом и мамкешидся через рабитэмкю, авторизирует хоть через ежовуюзалупу_оаутх и свистопердит во все стороны всяким говном - блог так блог, всем похуй
>>880219это уже не простой блог
>>880217например? у меня просто идей совсем нет.
>>880230магаз бахни, какой-нибудь новостной сайт, имеющий кучу самых разных фич, бахни какую-нибудь хуйню, аккумулирующую контент с других сайтов (парсеры-хуярсеры). Приеблань чат на торнадо ко всему этому. Все вакансии твои.
>>880234надо попробовать, спасибо.
>>874631 (OP)чо питон так обосраться может?
можно, плес, перекат, только без гавна и прочей ссанины
>>880237Это питон-двачер.
>>880216Тоже самое с интами больше 255 вроде. Короче, проверяй изом только на None или в тех ситуациях, когда ты точно знаешь, что ищешь вот этот инстанс вот в этом контейнере, например. Забудь о том, что питон что-то там оптимизирует и у тебя будут одинаковые ссылки на одинаковые объекты.
>>880182Ну типа в Пистоне кешируютсяв результате получается один объект короткие строки, в длинные нет.
>>879513Хули тут понимать.Работает как везде.Есть объекты - обособленные структуры данных +их методы(функции).Может быть объект - Ононимус. Структура данных, в которой хранится несколько переменных - пол, имя, возраст, любимый раздел на борде. Может быть объект - парсер. В нем - структура данных (шаблон для собсна парсинга конкретных сайтов) + методы объекта, реализующие сам процесс парсинга.Что вообще значит - как работает?Задан класс (класс - это тоже "объект", по сути - шаблон для создания объектов, форма для отливки, лекало). Класс это такой способ создания объектов в памяти компа. В частном случае например класс = тип. допустим есть класс(тип) "строка" или "целые числа". Конкретная переменная типа int - это объект."ооп" - по сути некий набор правил для создания сущностей/процессов в рамках написания и работы программы. Ебантяи лепят классы везде где можно, что нихуя не правильно по мнению создателей самого питона. Классы нужны там, где нельзя разумно обойтись тупо функциями. Т.е. нужны они для создания сложных объектов с замороченным поведением. В идеале при создании классов нужно руководствоваться предметной областью/реальными объектами в гештальте юзера. Класс "окно с кнопачками" в интерфейсе, класс "мобилка" или "транзакция" в интернет-магазине. https://habrahabr.ru/post/140581/в питуне причем ООП реализован не идеально. Лично меня при начале изучения питуна выбесило нерациональное использование лексем при задании класса. Эта ебаная ненужная конструкция "def __init__" , self - выражения и так далее. Но люди привыкли.Лично я предпочитаю смотреть на классы как на шаблон в коде, а на объекты - как на реально развивающийся процесс в оперативке. Процесс физический и информационный. Объект на уровне физики это некий обособленный набор состояний/"квантов энергии ЭМ-поля" в ячейках оперативной памяти компа. мимо-ньюфажина в программировании
Че тут за ботаны сидят? Нихуя непонятно вообще.
>>880387Нет, ёбта, хуя ты затупь ваще васян, структур данных и паттернов не понимаешь, пизда рулю
>>880387Читай пикрил станет понятней
>>880387ну ты лох внатуре епте бля
>>880174urllib + несколько потоков. как обойти капчу хуй знает. найми двачера лучше
>>880055ты еблан что-ли? такая хуйня делается очень просто на нативном питоне.
>>880373>>880352Понял, спасибо.
Додик в треде, нужна помощь анончики. Есть один курсач: программа должна принимать много строчек текста, удалять в нем слова из stopWords и сокращать на -ing , -ed, -ly оставшиеся слова если они не находяться в noStemWords. Потом выводить частоту нахождения слов в тексте в виде: слово : строчка#, строчка#,...http://pastebin.com/aL341xG9Я осилил создание словаря, но не могу понять как из этого словаря вытянуть каждый лист и повыкидывать из него stopWords и сократить на noStemWords.
>>880579> Додик в треде, нужна помощь анончики. Есть один курсач: программа должна принимать много строчек текста, удалять в нем слова из stopWords и сокращать на -ing , -ed, -ly оставшиеся слова если они не находяться в noStemWords. Потом выводить частоту нахождения слов в тексте в виде: слово : строчка#, строчка#,...> http://pastebin.com/aL341xG9> Я осилил создание словаря, но не могу понять как из этого словаря вытянуть каждый лист и повыкидывать из него stopWords и сократить на noStemWords.Очевидно Pandas
>>880585Тут проблема: Я только могу использовать split() и strip(),и стандартные методы для листов и словарей.
>>880579Бля, ну ты ебанутый. For использовать религия не позволяет?
>>880619Религию сменил, все равно не пашет (дрисня в последнем вложенном цикле)http://pastebin.com/NtCwsRhK
>>880579http://ideone.com/4HxZsW
Есть список:list1=[['OP', 'huy'], ['Abu', 'ohuel']]Нужно чтобы он записывался в txt файл.При вызове выводилось что-то вроде1. OP - huy2. Abu - ohuelПомогите пожалуйста.
>>880683http://ideone.com/gTOEni
>>880672Эксперт в треде, я спокоен.
Двач, помогай.Короче я тот чел который писал что не могу найти вакансию на жуниор питона. Сам написал в пару контор, что мол такой сякой, такое сякое умею, блог вот запилил, апишку на прошлой работе на питоне, с таким работал, возьмите за еду. Так вот, меня тут пригласили на встречу, а я хз что читать. SQL? Django? Требований как таковых нет, я сам написал, вакансий не было. Подскажите, что почитать для такого вот интервью?
>>880747Джанго: почти наверняка будут спрашивать про generic views, модели, реляции, миддлвари.Питон: magic methods (что делают, как использовать), коллекции, декораторы, генераторы и что-то ещё.SQL: опять реляции, может попросят связать две таблицы many-to-many и т.д.Полгода назад обошёл очень много контор по Python, но по мидловским вакансиям.
>>880747Питухон: ООП, декораторы, лямбды, генераторы, списковые включения, что-то из стандартной либы типа итертулс, функтулс и т.п.Джанго: База: что такое МВЦ, что такое модель, что такое кверисет, через что джанго пропускает запрос. Сигналы, мидлварь, класс-бейсд вьюхи, менеджеры. Что с Джанго-декораторами. Шаришь ли в рест-апи. Как дела с работой с голыми sql запросами. Q, F функции. Каким образом проводишь валидацию форм. Фабрики форм.SQL: реляции, в чем разница между реляционными и нереляционными базами данных, мб попросят запилить что-нибудь простое.
>>880759А, еще наверняка поебут мозг с Json и Ajax
>>880759>>880747еще почитай про мени-ту-мени, каким образом происходит сохранение объекта с такой привязкой, и как избежать ошибок при сохранении.
>>880758>>880759спс, почитаю.
Сап Питонч, есть два крайне похожих блока сравнения.http://pastebin.com/C2prDXz3Подскажи пожалуйста как сделать вместо них одну функцию/декорацию. Я только вкатываюсь в питон, и не совсем понимаю как сделать чтобы он брал разные аргументы и подставлял их в эту функцию.
>>880759>через что джанго пропускает запроса кстати и правда, через что? Вот есть кверисет у нас, как работает?
>>880747в довесок к вышесказанным советам. Я надеюсь, что ты не оподливишься, если тебя спросят, что такое стек, куча, и про сортировку пузырьком? База есть по алгоритмам и структурам данных?
Очень нубский вопрос.Пытаюсь использовать генератор кортежа в python 2.7 и ни как не могу понять, почему он не хочет работать. В документации написано, что можно делать кортежи из других последовательностей, но получается херня какая-то.К сути.Есть список кортежей из которых мне надо вытащить каждое первое значение каждого кортежа в списке.Делаю вот так:[code lang="python"]>>> s = [(1, 2, 3, 4), (1, 2, 3, 4), (1, 2, 3, 4)]>>> t = (i[0] for i in s)>>> tuple(s)>>> ((1, 2, 3, 4), (1, 2, 3, 4), (1, 2, 3, 4))[/code]Как так? Я же просил, только первое значение.Причём для генератора списков всё ок:[code lang="python"]>>> s = [(1, 2, 3, 4), (1, 2, 3, 4), (1, 2, 3, 4)]>>> l = [i[0] for i in s]>>> l>>> [1, 1, 1][/code]Что я делаю не так? Почему со списками всё получается, а с кортежами нет? В принципе-то можно и списки использовать конечно, но хотелось бы разобраться.
>>880779стек куча скажу, ну есть мало мальская.
>>880786Обосрался с разметкой.Простите.
>>880769Всё, спасибо, разобрался.
>>880786Ужас. Мне стыдно.Только отправив увидел свою ошибку. Всё работает же, но я (криворукое создание) не ту переменную дёргаю.
>>880786>tuple(s)
>>880774Думаю, анон миддлвари встроенные имеет в виду.
Аноны, поясните за инкапсуляцию в питоне? Читаю одно - принято что приватные методы и поля называются с двумя нижними подчеркиваниями и все, читаю другое - пишут что инкапсуляция как то может быть реализована через getattr но я так и не понял как. Спасибо.
>>880821Пожалуйста.
>>880830пожалуйста
>>874631 (OP)Использую PyCharm. Сделал два файла, функцию из одного импортирую в другой. После того, как редактирую первый, с функцией, у меня во втором запускается старая функция. Помогает перезапуск PyCharm. Что можно сделать, чтобы изменения сразу вступали в силу ?
контекст процессоры вместо кастом тимплейт тагов - это слишком говнокод? Мне нужны постоянные формочки логина и пароля. Контекст процессор их грузит постоянно, а кастом тэги только при подгрузке в хтмл. Но я вообще не ебу, как это сделать в тэгах, а сделать нужно быстро. Слишком ли говнокод будет, ась?
>>881008Оставь так, если срочно. Потом перепишешь.>Но я вообще не ебу, как это сделать в тэгахInclusion tags же, там все просто https://docs.djangoproject.com/en/1.10/howto/custom-template-tags/#inclusion-tags
Есть способ работать с Gunicorn из под винды? ImportError: No module named 'fcntl' пытаюсь работать с heroku
>>881140Как обычно сам себе отвечаю. В прокфайле делаем строкуweb: python manage.py runserver 0.0.0.0:5000И все работает. и не надо обмазываться линуксами
>>881144
>>878808Что за СИСП?p.s. Нет, не нагуглил.
>>881153sicp
>>881145Да ты охуел.
>>880683А правда, что Столлман - коммунист?
Куча чуваков учат джангов 2016Фреймворк, который без костылей не может в асинхронность.
>>881252Асинхронщина это конечно хорошо, но для кучи хуйни можно обойтись и без неё.Джанга это способ клепать каштомные обычные сайтики в первую очередь, а уже потом мега-гипер-порталы с 100К посетителей в секунду
>>881257Щас бы в наше время не писать асинхронные сайты. Если в 2.0 не завезут нормальную поддержку этого дела - фреймворк сдохнет, фиксируйте.
>>881259да сдохнет и хуй с ним, появится что-то другое, я хз на кой чёрт ты вообще об универсальном инструменте на все случаи жизни мечтаешь
>>881261зачем нужен джанго, когда есть нода, которая может во все?
>>881263потому что нода не меньшее заблуждение чем отсутствие встроенной асинхронщины в джанго, например.вон брекетс крутится внутри на ноде - и чё блядь, по-твоему это нормально, так пихать херовенько производительный жс во все дыры? тогда ебашь конечно
а разве джанго не может в асинхронщину через сторониие батарейки?
>>881272Может конечно, просто к нам забижал на огонёк восторженный любитель нодыЭто только вопрос времени когда он забежит ещё куда-нибудь, в с++ тред спрашивать зачем плюсы если есть божественная ниспосланная самим совершенством нода
>>881162Спасибо, нашёл.
Анон, на чём ещё пишешь на работе из статически типизированных языков? Есть свободное время, хочется потратить с пользой.
>>880892UP!Использую PyCharm. Сделал два файла, функцию из одного импортирую в другой. После того, как редактирую первый, с функцией, у меня во втором запускается старая функция. Помогает перезапуск PyCharm. Что можно сделать, чтобы изменения сразу вступали в силу ?
>>881370На прошлой писал на си. На этой только питончик, к счастью.
Сука. Как по человечьи написать это говно. http://pastebin.com/kxgC2a6mЧто должно происходить: Есть словарь со значениями, по значениям считается магическое число. Далее вычисляется оптимизированное значение и заменяется в словаре. Если магическое число на предыдущем шаге совпадает с числом на данной итерации - усё приплыли, данное значение не имеет дальнейшей оптимизации и нужно переходить к следующему. То есть делать сдвиг в словаре. Я бы сделал всё через очевидный For, но вся эта хуйня зациклена в While как и должна быть. Идей сука пока ноль.
>>881428>Что можно сделать, чтобы изменения сразу вступали в силу ?Перестать быть ебланом.
>>881437>gradientDescent>магическое число>Fr_g[0]>в словаре
>>881437Я вряд ли понял правильно, но попробуй скопировать ключи в кортеж или список и вытаскивать на каждой итерации с помощью pop(), или делай проход по индексу это списка/кортежа.
>>881439Ну чего ты, братишь, ты чего так подорвался ?
>>881448Fr_g[0] не словарь, а лист. И лист со значениями градиента.Словарём является очевидный Elems. В Elem_list находятся названия ключей.Очевидно до ахуения.
>>881471Я не подорвался. Я просто пошел в PyCharm сделал два файла. В одном функцию написал, во-втором импортировал её. Запустил файл с импортом - Всё заебись. Заменил функцию во-втором не нажимая ctrl+s и запустил первый файл - новый результат. Очевидно дело не в PyCharm.
>>881452Elems = {'Yv':0.00033, 'Y1':0.001, 'C1':3e-6, 'C2':6e-6, 'C3':8e-6, 'L1':5000}temp_grad = 0Шаг 1. Строим матрицу используя эту залупу.Шаг 2. Находим градиент.Шаг 3. Если grad = temp_grad, значит нужно переключится на следующий элемент в словаре(изначально Yv) и начать Шаг 4 с новым элементом, Иначе Шаг 4 со старым элементом.Шаг 4. temp_grad = grad.Шаг 5. Оптимизируем 1 элемент в словаре - Yv.Шаг 6. Повторяем всю поебень заново.Очевидно что нужно пройти все этапы от 1 элемента словаря до последнего. Очевидно что каждый раз матрица будет меняться, поэтому всё это в цикле While. Очевидно, что если матрица меняется, то и градиент меняется.
>>881477Как всегда вы нихуя не помогли, но спасибо.http://pastebin.com/DvnF5Uzr
А это норм, что когда я пишу код, я иногда кончаю от того, как мне это нравится? Прям в труханы спускаю, потом отмывать приходится.
>>881484Если так сильно нравится какое-либо дело - то тебя ждет в нем успех
>>881430Почему к счастью? Шагом назад не считаешь?
>>879207Благодарою.
>>881490Нет.
>>881496Так почему же? Сложно?Я просто мечтаю отойти от веба в любую сторону.
>>881498Так я не вебом занимаюсь.
>>881370ардуинками играйся, это весело
>>881505говно без задач
>>881509ты барашкаhttp://www.instructables.com/tag/type-id/category-technology/channel-arduino/
>>881510Хоть одна из этих штук позволит что-то реальное сделать, что будет дешевле/лучше, чем покупное на нормальном оборудовании?
>>881515Как тебя вообще чёрт дёрнул в программинг влазить с таким настроем? ардуинка это копеечная затычка на тысячу дырок, а уж какие дырки ты себе придумаешь и определишь это дело твоё
>>881517Ну, ващет если взять распбери, то это гуд. А вот этот весь ардуино-хлам просто для другой аудитории.
>>881499А чем?
>>881520В данный момент микросервисы на asyncio.
>>881519ну да, генильная идея делать включалки кофеварок и выключалки света по хлопку ладоней на рапсберри которое ещё и стоти в разы дороже тех трёх баксов за которые продаются ардуины
>>881521что такое микросервисы?
>>881521Дык это и есть веб.
>>881525Не тот веб, который интернет магазины на джанго, но в широком смысле тоже веб.
>>881522Кто сказал, что эту хуйню? Распбери, в отличие от этого говна может делать реальные задачи, потому что линукс есть.
>>881525>>881523Веб, в моём понимании — сайтики/круды/js/ie6 и тому подобное. Микросервисы не имеют интерфейса (визуального). Это просто относительно разнесённые функциональные узлы, которые обмениваются данными по сети. Если ты и от этого устал, то не знаю.
>>881534ок, кодь малинку
Здарова петоны, помогите ньюфажине.Делаю одно из первых упражнений из книги Саммерфилда, задача — написать программу, которая будет генерировать компьютерные четверостишия с помощью списков. Вот код (слова в списках заменил на буквы, чтобы не занимать место):from random import choicefirst=['a', 'b', 'c']second=['a', 'b', 'c']third=['a', 'b', 'c']fourth=['a', 'b', 'c']while True: for i in range(4): print (choice(first), choice(second), choice(third), choice(fourth)) choice=input('Enter for another poem, any key to quit: ') if not choice: pass else: breakПервый стих выводится на ура, но когда я нажимаю Enter, программа ломается вот так:Traceback (most recent call last): File "poem.py", line 25, in <module> print (choice(first), choice(second), choice(third), choice(fourth))TypeError: 'str' object is not callableСовершенно не понимаю, что происходит. Добавил после while True строки, которые показывают содержимое и тип first, second, third, fourth, программа нормально показывает содержимое списков и определяет их как class 'list'. Что это за ошибка?
>>881576> from random import choice> choice=
>>881577Какой же я, блять, тупорылый. Спасибо.
>>881144>Под виндой не работает gunicorn>Зато работает python manage.py runserverПроиграл
>>881521Напиши примеры задач, будь добр. Просто не могу понять, что же это за в-каждой-бочке-микросервис-затычки
>>881590Ну, например: локатор, который говорит какой сервис где, менеджер базы данных с управлением блобами данных, воркеры с cpu работой, клиенты/операторы, источники данных да кучу всего ещё можно придумать.
>>881592мне дико стыдно но я за год изучения питона с твоего поста и четверти не понялчё почитать по теме?
>>881594Так это вроде не к питону относится вообще. Это просто описание узлов, какой что примерно делает. Просто у питона есть asyncio, который позволяет кайфово общаться по сети, а также куча библиотек для всего.Клиенты, кстати, либо будут веб-мордами, либо десктоп аппами на каких-нибудь шарпах/крестах.
>>881596>Просто у питона есть asyncio, который позволяет кайфово общаться по сетиЧто ты имеешь в виду? Полагаю, что для связи всех этих микросервисов в макросервис все равно используют всякие queues и rpc.
Прочитал "Укус Питона", прошел весь курс на Codecademy, справляюсь с задачками на check.io. Что дальше?
>>881602Всё. Ты прошёл жизнь, поздравляю.
>>881602Работу ищи, хватит уже саморазвиваться.
>>881602синк пайтон наверни и дальше смотри чё есть
>>881601И как это отрицает, что> Просто у питона есть asyncio, который позволяет кайфово общаться по сетиВместо потоков используются короутины вот и всё отличие. Ну, ещё отсутсвие части проблем с мутабельностью.
>>881604Мне мамка так же говорит...>>881605Шпасибо.
>>881607Не нервничай, просто не вполне понятно, что ты имеешь в виду под >кайфово общаться по сетиприменительно к asyncio
>>881619Я имею ввиду, что я делаю await и не блокирую всё остальное.
Пилите перекат или это сделаю я.
>>881620Ок, понял.
>>881622пошел нахуй. Опять говна навалишь в шапку.
Питонщик, а какую иде используешь ты? Просто хочу уйти в веб, но не хочу платить за пайчарм :^)
>>881646Не плати, есть бесплатная версия.
>>881647Так с неё же в веб нельзя
>>881648Что значит "в веб нельзя"?
>>881649Вот, написано же, что с покупкой про версии открывается доступ к веб девелопменту
>>881652Это как донат в ммо-дрочильнях. Труъ-задроты качаются прокачиватся до вебдевелопмента сами.
>>881652Все упирается всего-то в предустановленных IDEA плагинах. Пикрелейтед моя профессиональная версия.В принципе, можно напердолить из комьюнити. Поддержка джанго - всего лишь плагин для автокомплита в шаблонизаторе, быстрый переход от вьюхи к шаблону и к маршруту. Поддержка manage.py команд - суть просто надстройка над рантаймом, но только с автокомплитом команд (удобно кстати). Делается самостоятельно в настройках. Поддержка css фреймворков/базовый JS тоже плагинами делается. Хотя, конечно, удобнее прошка.Если так уж хочешь пиратку- активируется в один(!) клик.
>>881664О, кстати у них сегодня как раз биг апдейт прилетел.
https://www.jetbrains.com/pycharm/whatsnew/>Terminal with Virtualenv pre-activated>Database Improvement: Edit many cells at onceВот это куль.
Седня решил изучать питон, ничего до этого не изучал, и статьи в интернете почти не нахожу/не понимаю, может что читать надо? Я же вообще полный ноль
>>881683Зачем тебе изучать питон? Зачем?
>>881683кодекадеми наверни
Господа, для питона есть модули для 3d, чтобы заебца было?
>>881693blender
>>881697Про blender слышал. К нему можно прикрепить уже готовую программу на питоне без сильного мозгоебства?
>>881700типа того, погляди блендер питон апи
https://pymotw.com/3/index.html какой же ахуенный чувак. Я просто обмазываюсь его сайтом, 10 из 10
>>881725Если не смотрел еще, глянь Python Cookbook by David Beazley
>>881521на чем общение? aiorabbitmq?
>>881672А как в пичарме бд править?
Ребят задам платиновый вопрос только не гоните ссаными, я как бы могу в кодинг, давно писал на питоне всякие мелкие штучки, ну нормальные, сложнее чем лаба1.py, иногда и до 3к строк доходило, но все это мелкие системные скрипты были. И вот сейчас я подумал что если попытаться вкатиться на работу? Есть ли перспективы у человека без образования в этом смысле? Где исаиь работу для опыта ибо на хх ни одной вакансии не видел где не было бы "опыт от года"?
>>881811И да, чтобы чуть чуть добавить вопросу информативности замечу что сфера не очень важна, любая, главное чтобы не нужны были html css js.
>>881813Пиши микросервисы на asyncio, это позволит тебе кайфово общаться по сети.
>>881763Открываешь databases, добавляешь источник и в бой. Без задней мысли.
Питонач, если мне нужно в Джанге заполнить данными таблицу для тестирования БД и функций вьюхи, можно как нибудь это автоматизировать? Я сейчас захожу в админку, тыкаю на таблицу и ввожу ручками ((((((((
>>881855Ну создавай скрипт, который будет пихать рандом через Django ORM. В чем проблема? В Tango with django есть целая глава (populating).
>>881855Попробуй fixtures https://docs.djangoproject.com/en/1.10/howto/initial-data/Можешь сделать дамп существующей базы командой 'manage.py dumpdata' https://docs.djangoproject.com/en/1.10/ref/django-admin/#django-admin-dumpdata - создаст JSON файл с твоими даннымиКогда надо загрузить их базу, делаешь 'manage.py loaddata dump.json'В тестах должно работать такое:from django.test import TestCaseclass MyTestCase(TestCase):....fixtures = ['/myapp/fixtures/dump.json',]То есть, когда во время тестов будет создаваться тестовая база эти данные загрузятся.
>>881762pyzmq
Господа, что навернуть после кодакэдеми? Как перейти от задачек уровня лаб в институте до каких-то полезных вещей? Например, меня интересует изобретение велосипеда в виде Telnet/SSH клиента с нужными мне свистоперделками. Но как его захуячить, имея знания на уровне кодакэдеми, я понятия не имею. Что мне навернуть промежуточного?
>>881905Очевидную стандартную библиотеку навернуть. Ссх пока что не потянешь написать, но ничего сверхсложного там нету. Научись сначала взаимодействовать с средствами ос, (tcp/ip), фс, процессы-треды, пайпы. Потом прочитай rfc ssh и пиши. Только несмотря на все готовые криптографические функции кое-что все равно надо будет понимать чтоб твой ссх решетом не был, хотя ссх на некомпилируемом языке со сборкой мусора уже слегка решето, если в идеале.
>>881905Синк пайтон потом стандарт лайбрери бай экзампл
> Научись сначала взаимодействовать с средствами ос, (tcp/ip), фс, процессы-треды, пайпы.Вот, у меня даже нет идей, как этому научиться на практике. Равно как и даже сам интерфейс сделать. Пойду повешусь
>>881930Чтож ты за аутист блять, ясен хуй что у тебя нет идей если ты не знаешь че это такое. Стивенс - tcp/ip и не благодари. Это если хочешь как батя разобраться. Чтоб простенько воткнуться в протоколы и сокеты можно и какой-нить кратенький гайд на 20 страничек почитать.
>>881938эмм, прости, но за сетевые протоколы, маршрутизацию, коммутацию, туннели и прочее говно я сам тебе могу пояснить. Вопрос стоит не "что это такое?", а "как с ними взаимодействовать путем написания говнокода (а другого у меня не получится) на питоне"
У меня было 4 миллиона файлов распиханных по 1 миллиону папок. Надо было сделать индекс в памяти. Тупо дерево, повторяющее структуру ФС. Имена папок и файлов не длиннее 20 символов.Задача простая, и я решил дать питону шанс.В первый раз я охуел когда сделал sys.getsizeof({}). На моей системе пустой дикт занимает 288 байтов. Дикт с 6 элементами уже 480.Затем я потестил пустую строку - sys.getsizeof(u''). 49 байтов.В результате я минимизировал использование диктов в пользу листов, заюзал слоты в объекте, представляющем ноду дерева, и всё равно имею оверхед по памяти в 5-10 раз по сравнению с тем, что имел бы на С.Нахуй так жить, котаны?
>>882034ну и в пизду иди. зато на питоне сайтики делать приятно
>>882034Крестьяне набежали.
>>881884каким образом ты используешь синхронную либу в асинхронном коде? каждый чих в concurrent.future что ли оборачиваешь?
>>882222 (OP)Переползаем, дарлинги.
>>882226ты комбо говна на оп-пиках собрать решил?
>>882134pyzmq.asyncio дибил
>>882034тебе не жалко жесткий диск? В один файл нельзя запихнуть? У тебя не питон, а файловая система помрет быстрее.
>>882739Нет не жалко. ФС это та же БД, пусть трудится.Запихивать зеркало сайта с кучей контента в один файл противоестественно, потому что иногда хочется докачать новый контент или даже поднять веб-сервер.
>>882034Добро пожаловать в интерстелларпретируемый мир. Интересно, а нашу вселенную скомпилировали или мы скрипт?
>>882034import sysfrom collections import namedtupled = namedtuple('Dicty', ['name', 'size', 'meta'])a = d(name='Name', size=123, meta='Doodle:True')sys.getsizeof(a) #72b = {'name': 'Name', 'size':123, 'meta': 'Doodle:True'}sys.getsizeof(b) #288Словари, блядь...Слоты, нахуй. "Маааам, ну оверхееед, ну мааам это язык говно, а я молодец"
Питонач, поясни пожалуйста тупому, а то гугл меня совсем запутал.Установил я последний питон. Дальше нихуя не понимаю. Одни пишут что надо ставить DE, другие пишут что IDE, другие пишут что перед IDE надо ставить еще что-то (при том каждый своё предлагает установить).Просвятите пожалуйста.
Как собрать архив, в котором будут все питоновские либы, что бы в итоге можно было запустить все это дело на другом компе, как это сделано в sublime или taskcoach? Сирусли, как они это делают, я б мать продал
>>885841Вот что не так, ананасики?
Ну будьте же вы людьми, поясните.>>885629
>>891060что нравится тебе, то и ставь, не понимаю в чем вопрос. Поставь какой-нибудь pycharm/sublime text - и делов-то. Я вообще обычно копирую из консоли ipython в блокнотик, как дебил.
>>885863virtualenv гугли
>>891436>нравится тебе, то и ставьСпасибо за ответ, но мне пока еще ничего не может нравится так как я нихуя не понимаю в этих IDE и зачем они нужны. Вопрос про это был - какие компоненты и зачем нужны для нормального функционирования питона?
Перекатываемся:https://2ch.hk/pr/res/892989.htmlhttps://2ch.hk/pr/res/892989.htmlhttps://2ch.hk/pr/res/892989.html