Это копия, сохраненная 15 сентября 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
F.A.Q. https://github.com/TheKnightsWhoSayNi/info/wiki/Hat
Свой код кидайте через https://ideone.com/
Книги: https://yadi.sk/d/tArKKuQu3Kejuq
Прошлый тред: https://2ch.hk/pr/res/1040899.html (М)
SQLAlchemy.
На входе имеем список, например ['nastya', 'lisa', 'vika'].
А в базе хранится в столбце куча таких имен. Нужно выделить все записи, кроме тех, у которых имя из списка.
Что-то я подумал что итерировать по всей таблице и проверять что имя в списке это нихуя не оптимально, и наверняка в SQL есть прикольчики для этого.
Спасибо.
>Парни, как запустить scrapy из под django?
через API https://pypi.python.org/pypi/python-scrapyd-api/
Зачем нужна целая либа если можно просто написать os.system("spider.py")? И потом придется переносить информацию из выходных json-файлов в базу данных. Мне же нужно чтобы spider'ы запускались внутри view через CrawlerRunner и данные сразу бы заносились в БД.
Тебя не смущает что тебе придется ебловать с откртым соединением или процесс оборвется?
Нужно постоянно поддерживать подключение для полной синхронизации. Как только что-то отвалится, будешь сосать хуи.
мимо
Вид живет в рамках реквеста.
"
если строка имеет какой-то символ то вывести True"?
Спасибо Анон!
я не наркоман
Что почитать про алгоритмы абсолютному нубу? Чтобы не обосраться на собеседовании, когда попросят реализовать красно-черное дерево или написать пузырек
Шоб было понятно.
1. Есть разница, как создавать словарь: через "{}" или через "dict()"?
Если да, то как лучше и почему?
(a = {} ; a = dict() )
2. В каких случаях для создания пустой строки лучше использовать ' ', а в каких просто None?
(a = '' ; a = None)
1)Конструктор dict() вызывается чуточку дольше, чем {}, рекомендуется использовать {}, если возможно
2)Лучше None, т.к. это один объект всегда, при создании "", скорее всего ты будешь каждый раз делать новый объект
Спасибо.
А, нет, наебал со вторым, если строки одинаковы, то это один объект в любом случае, но я бы все равно использовал None
Так, подожжи, я в отпуске бухой поэтому путаюсь, вот зачем тебе пустая строка? Если собираешься применять к ней методы какие нибудь, то конечно "", если тебе просто нужна пустота, то None
Стандартное значение в функции.
def abc(a, b, c=""): ...
или
def abc(a, b, c=None):...
К "с" применяется операция присваивания, а затем выполняются различные методы.
Присваивание происходит в цикле for, т.е каждый раз что-то новое. Вот я и спрашиваю, лучше пустоту обозначить "" или None?
Плохая практика пытаться изменить входные данные, если засунешь мутабельный объект может ебнуть, лучше создай в функции отдельную переменную под это
>>> def check(c=[]):
...____c.append('123')
...____print(c)
...
>>> check()
['123']
>>> check()
['123', '123']
>>> check()
['123', '123', '123']
1. Насчет конструктора словаря: в общем случае, дело вкуса.
2. "" создаст пустую строку нулевой длины, у нее можно узнать длину, соединить ее с другой строкой и т.д. None это особое значение означающие отсутствие чего-либо. Насколько мне известно, обычно принято делать так: None используют чтобы обозначить отсутсвующие или невалидные данные только тогда, когда пустая строка является допустимой с точки зрения логики приложения, в противном случае для пустых значений принято использовать пустую строку.
Вот немного синтетический пример: http://ideone.com/tEJEsM
Трудно сказать однозначно, не зная что именно делает твоя функция, но скорее всего тебе нужна пустая строка, а не None. Насчет изменяемости в данном случае не волнуйся, строки в питоне неизменяемы.
В разных тредах?
subprocess.call, если в разных процессах.
Если в одном, то просто пишешь try: while True, под ним ещё раз то же самое, и два except KeyboardInterrupt: pass
ты просто код не можешь сразу написать?
Идешь на хх/апворк и смотришь вакансии питонистов, изучаешь описанный там стек, выкладываешь пару проектов на гитхаб
блюю с гитхаб, я не понимаю, они специально скорость урезают до полного пиздеца или как?
А херли сайт в даунах висит?
Да ну нах такой хостинг, лучше соусфорг тогда.
ау, где все?
Я не знаю Scratch, как думаю и подавляющее большинство здесь, поясни лучше что ты на самом деле пытаешься сделать, многопоточную программу? Просто по вопросу абсолютно непонятно о чем речь.
Да просто несколько бесконечных циклов хочу вставить в одну программу, при условии что они все ОДНОВРЕМЕННО ВЫПОЛНЯЮТСЯ!!!
Стильно, модно, моложежно и большинство фирм работают именно с ним
А Скратч за 20 минут учится при знании Питона.
Правда он НЕ нужен тем, кто знает питон, т.к. подходит только для тех, кто учится программировать вообще, там всё по минимуму и урезанно.
Про бигдату уже все знают, а тут прям инсайд
этот мультипроцессинг как шизофреничная костыльная надстройка выглядит.
Они бля в поадекватнее сделать не могли всё?
Сделай bootstrap хеллоу ворлд на джанге, там будет больше 200 строк
Хорошая идея.
Идём на Апворк с начальным уровнем знаний программирвоания и питона, дальше что?
Тоже думал про веб-девелопинг, но и на питонах зарабатывают, мне бы его освоить до конца, заказы за баблосы помогли бы.
Самому себе можно как бы выполнить заказ и оставить 100% положительный отзыв.
В итоге немного придётся потратиться, но не придётся сосать.
А ты всегда сразу сосать начинаешь?
Хм, а ведь верно, можно и так. Даже лучше, я думаю.
Стесняюсь спросить, а как и зачем ты переменные вне конструктра объявляешь?
Я думал, что так код будет менее громоздким.
И что такое конструктор?
Загуглил таки. Понял, про что ты. Дело в том, что мне не нужно копировать свойства этого объекта, давая их другому объекту.
Я просто пишу простенький скрипт, в этом нет нужды, это просто отдельный объект, который не нуждается в создании подобоных и всё.
['apple', 'box', 'vc']
так вот, как обозначит слова в листе, что бы цикл проходил через каждое слово?
Не, не пишет, юзай первый
А я думал, JS.
Чем тебя простой len(str.split()) не устраивает? Можешь еще через регулярку '\w*' сделать
Если несколько пробелов подряд, тогда превращаем в один пробел.
Считаем количество пробелов, добавляем один:
n+1.
Если нет символов хотя бы с одной из двух сторон, тогда удаляем пробелы из переменной.
Капитан Говнокодер спешит на помощь!
Подозреваю, что можно.
То есть, переходим на signup.google.com.
Отправляем форму со страницы.
А дальше что? Принимаем куки и адрес следующей страницы? И уже там продолжаем регистрироваться?
Рукапча же, "зарабатывал" даже там, такое чувство после этой работы, что меня грубо поимели, но хуже всего то, что мне даже не понравилось :(.
Сам, я подумал, что гораздо лучше записывать переменные одной буквой, что бы на другие буквы не тратилась память
Еще лучше, что я разбил задачу на несколько частей, а не делал все в одну строчку, как и предполагает дзен питона
А для защищенности выражений в условии я добавил там скобки
1. Ну сделаешь всё через Selenium, ок, с реквестс проебано.
2. Капча у них там самая что ни на есть обычная, ну максимум - inviseble.
3. Есть же сервисы для создания номеров и приёма сообщений.
Приветик из 2014. Все номера с американских бесплатных сервисов давно уже палятся везде.
А за один качественный номер ты сможешь и так купить 1к мыл снятых с логов или новорегов.
Я не говорил про бесплатные, там грош цена тем номерам, можно купить пачку и радоваться жизни.
> Где "там"
Я за тебя гуглить буду?
> где можно купить номер дешевле чем пачку почтовых аккаунтов
Изначально вопрос был не в выгоде и прочем, а "можно ли и как".
https://pastebin.com/knmAAtYD
И вообще, у меня сложилось впечатление, что RealPython полная хуета и зря я её читаю
>Я за тебя гуглить буду?
Не думаю, я глубоко изучал эту тему и знаю сам что сервисов с хорошими номерами мало, а тех что в довесок обладают API -- кроме твилио нет толком.
Вопрос всегда о том как максимально выгодно чего-то достичь. Очевидно, что ответ -- купить необходимое количество готовых аккаунтов.
чего палятся не понял, ты о чём?
Мошенники делают они это, чтобы запутать следы.
Как вам такое?
Аналогично со стимовскими акками, там тоже такого полно, и в стиме мошенников полно. Игры на этих акках дерьмовые и достались на халяву, акции, задания, выполняемые ботами, хуё-моё. Хорошие игры если и есть, то тоже достались им на халяву, по акциям итд.
Вряд ли, конечно, к вам придут домой с обыском.
Насчёт стимовских - можно вообще не волноваться, имхо.
Разумеется, не все стимовские от мошенников, некоторые спекулянтов купи-продаев, покупают часто у дригих таких же купи-продаев пачками (десятки и сотни), а дерьмовые акки скидывают на сайты соответствующие, чтобы карму себе поднять, чтобы больше покупателей в итоге было, вот так всё это говно и работает.
В стиме мошенник может сделать несколько дерьмовых покупок, при условии, что эти деньги окупятся.
Жертва посмотрит его акк и ничего подозрительного не увидит. А вот если игр нет, то тут что-то не так.
Вот ещё почему полно халявных стимовских акков с отстойными играми.
Жертвы в большинстве случаев даже жалобы не пишут (их и самих наказать могут за некоторые действия). А если и пишут, не факт, что акк мошенника забанят, доказательств нет, перепеска через почту, всё пц, гуляй, вася, сам лох такой.
Я тот кто вопрос задал.
Селениум не очень хочется, даже хедлесс.
Больше спортивный интерес сделать все через реквестс. Через Селениум уже готово. Но из минусоы - надо извращаться с виртуал дисплей в линуксе. То есть, слабая поддержка всех ОС.
Капча, телефоны - не проблема. Выше писали.
Больше интересует, как писать такой скрипт.
Смотрим httpheaders в мозилле и пытаемся повторять то же самое в коде?
Да.
У тебя даже идей нет? Да и кому нужны тупые нерабочие идеи?
Тебе если по деньгам, тогда совсем не такие сайты нужны.
Без задней мысли, просто берешь и заводишь.
Ты про что вообще?
Бля, какой же ты дибил. Кучу разных лупов не совместить вместе, если они это не поддерживают. Поэтому нельзя запустить asyncio и tk в одном лупе. Поэтому все кто ещё жив добавляют поддержку asyncio в свои поделки (tornado, pyqt (quamash) и прочие).
сам мудак, пусть добавят в питон по дефолту
такое чувство, что язык разработчик либо заброси давно, либо ему платят, чтобы до адекватного вида его не доводил, лол.
Можешь делать мне приложения, а я буду на них заработать, всё равно тебе деньги не нужны, пока с родичами живёшь, а практика - золото, идёт?
Лупы (кроме tk), пишут не разработчики питона, дибил. tk заброшен и не нужен никому нахуй. Оставлен только ради совместимости. Так что давай с таким говном на гитхаб в репо твоего любимого фреймворка.
А теперь попробуй какой-нибудь переменной присвоить ту хуйню, что ты пытаешься присобачить к переменной text. И эту переменную присобачь к переменной text. Пёс ебаный. И документацию к питону почитай.
Поставь PyCharm. Нахуй ты саблаймом пользуешься. Там тебе навигация будет такая, что ты охуеешь.
Ух ты! Licence server http://idea.imsxm.com снова заработал. Не прошло и полгода. А асtivation code есть у кого-нибудь живой? А то этот сервер работает нестабильно.
Если чего-то не хватает в функциональности, то ставьте addons коих там миллион.
Комп отлично работает, не пизди.
https://atom.io
Atom выглядит точно также как саблайм. И все функции в нем такие. Адоны позволяет делать мультикурсор и быструю навигацию, запуск питона прямо из редактора.
>типы данных - check
>операторы - сheck
>управляющие структуры - check
>сборка проекта - check
>ООП - check
>функции и функциональное программирование - check
>работа с файлами - check
>исключения - учил, забыл, сейчас снова повторяю
>регулярки - учил, забыл, пока не пригодилось
Что еще учить?
Удали себе яйца, лучше танцевать будешь, очевидно ж
Сопрограммы, обработчик ошибок, асинхронщину, работа с протоколами tcp\ip, javascript\html\css, django\flask и можешь идти на джуна
хотя, раз ты задал такой тупой вопрос выше, то лучше повтори все по нормальному учебнику
Вот код https://ideone.com/rGODwE
Нужно поставить pynput через pip.
Поставить расширение pyw (чтобы не было видно запуска) и прописать в автозапуск.
Ты можешь объяснить что именно в моих словах тебя раздражает?
>>1048029
>Сопрограммы, обработчик ошибок, асинхронщину, работа с протоколами tcp\ip, javascript\html\css, django\flask и можешь идти на джуна
Постойте, я все лишь пишу сайт-библиотеку just for fun, и на джуна пойду только если появится интерес, и явно не в обозримом будущем.
>Сопрограммы
Что это?
>раз ты задал такой тупой вопрос выше
Почему вопрос тупой? Кода писал мало и в коде часто путаюсь когда его читаю, не понятны высокие абстракции, не вижу общей задачи, которую решает участок кода. Особенно если кода много, особенно если код запутанный для меня.
словарь получил из списка, который в свою очередь получил из файла, где первая колона это имя, а вторая цифры вот так:
l = []
d = {}
for i in file:
i = i.split('\n')
i = i[0]
i = i.split(' ')
l.append(i)
d = dict(l)
Костыли в общем. Задумка в том, что бы выводить максимальное значение найденное а файле вместе именем
Нашел способ, но нужно в данном словаре строки чисел переконвертить непосредственно в числа
Тут только ты один такой инвалид. Уже много народа программирует на atom.io и будет еще больше. Потому что его рекомендуют уже студентам. Собственно авторы как раз из университетской среды. Мне этот редактор рекомендовал Charles Severance (гугли)
>>1048100
Нахера он мне вообще нужен, чего он такого умеет, чего не умеет atom.io ? Ну?
чего он такого умеет, чего не умеет atom.io ?
Не шути так больше, мои соседи любят хороший сон.
>Тут только ты один такой инвалид. Уже много народа программирует на atom.io и будет еще больше. Потому что его рекомендуют уже студентам. Собственно авторы как раз из университетской среды. Мне этот редактор рекомендовал Charles Severance (гугли)
Я прям физически услышал звуки ножниц из барбешопа и почувствовал запах смузи
>Собственно авторы как раз из университетской среды
Лол, кто бы сомневался. Такое говно только студенты за зачет и могли написать. Надо же до такого додуматься, написать среду разработки на веб движке, наверно не один килограмм дури в своем кампусе перед этим скурили.
Давай конкретику. Ты atom.io даже не запускал. Плагины не ставил. И пытаешься делать вид, что разбираешься в теме.
Проверься у ЛОРа тогда
Значится так, хуепутало. Ты меня заебал и я напишу пост. Не жди после этого продолжения банкета, я буду молча смотреть на этот цирк.
Атом - смузихуйня рожденная мочехлебами в попытке сесть на все хуи сразу. Гитхуб решил что полноценные среды под языки не нужны и достаточно выкатить хипсторедактор с кривым js апи, а мухаммед сам напишет поддержку python, html, аллаха и иисуса.
Полноценная поддержка Django автокомплита? Нет, не нужно, есть кирилл, который пишет плагин (обновлялся 5 лет назад). Нужен дебаггинг? Не проблема, есть пять решений от вити. Нужно прямо в ide говноредакторе подключиться к базе данных и выполнять запросы? Нет, уже не нужно. Нужны удаленные интерпретаторы, визуальная поддержка vietualenv и листинг пакетов? Нет, зачем он вам, пользуйтесь соснолью. Нужен Ipython/Pandas/Numpy/Scipy? Нет, нахуя оно вам надо? Профили запуска? Переменные окружения? Coverage? Диаграмма потоков? ...
Ну а чтобы не терять современный курс и делать дешманский продукт на самых дешевых технологиях, все это обернуто в electron и выпущено.
Просвещайся, хуежуй https://www.jetbrains.com/pycharm/features/ чего еще не завезли и не завезут ни в один редактор. Потому что JetBrains изначально делала продукт для Python и продолжает делать это годами, шлифуя для нормальных людей свой продукт.
Даже сказать нечего больше.
долбоёбы
Atom отличный редактор. Работает без глюков. Чем тебя вебдвижок не устроил? Atom.io умеет всё, что умеют другие редакторы. Есть все необходимые фишки. А в профессиональной среде вообще считается, что нужно на VIM работать, а не на pyCharm. Но я его никому не посоветую, потому что высокий порог вхождения.
>А в профессиональной среде вообще считается, что нужно на VIM работать,
Ага, и обязательно на макбуке. Хипстоблядь, уймись уже.
В этом то и дело что цикл прерывается. Я хочу найти вожделенный try/except который сидит в scrapy и нихуя не выводит в консоль. Или же я начинаю писать письмо потными руками в python-dev о том что у них баг.
то что дилда слишком большая и в твой анус не влазит - твои проблемы
Видимо о VIM ты только услышал. А он с 90-х годов, уже 80 версия вышла. Такие фишки, как мультикурсор оттуда пришли.
> А в профессиональной среде вообще считается, что нужно на VIM работать
Харкнул в ебало, уебывай жс\го учить, там таких как ты любят, у тебя есть готовое ide со всеми нужными фишечками, но ты решил показать, что ты ИЛИТА-ОСИЛЯТОР и попердолится, вместо того, что бы код писать
>Видимо о VIM ты только услышал.
Я с 2006 года прыщеблядствую, так что кое что слышал, более того, даже пользуюсь им.
>atom
> спорить о браузерах
Ну так мы этим занимаемся, как браузер он говно, как среда разработки еще хуже. Хипстоблядь - не человек.
>А в профессиональной среде вообще считается, что нужно на VIM работать
В каких конторах работал? Где он считается ПРОФЕССИОНАЛЬНОЙ IDE для работы?
Мы спорим о том, что ты не любишь неорганическую дилду, ты привык к органическим хуям. Все понятно.
Вагина - это не твой случай. Она для правильных пацанов, кто юзает Atom.io
Я не умею goto и find usages пользоваться. А еще не понимаю как среди колбеков-колбеков ориентироваться.
На пике ошибку, которую я нашел, уже кто-то пометил.
>Читать документацию.
Что именно читать?
>На пике ошибку, которую я нашел, уже кто-то пометил.
Ну так бегом на гитхаб и создавай багрепорт. Ебанат, ошибка в мидлваре, причем тут твой говноког в спайдере?
>Что именно читать?
https://doc.scrapy.org/en/latest/topics/practices.html#run-scrapy-from-a-script
Читай, пока не дойдет, почему ты тупой мудак.
>Читай, пока не дойдет
Ну да, ну да. Я этот configure logging выкинул, так как подумал что не нужно. Как ты вообще додумался найти этот пункт?
>говноког в спайдере
Покажешь красивый спайдер?
Я когда документацию первый раз читаю вообще ничего не понимаю, её много и все сразу не запомнишь. Только потом когда код пишу вижу какие места в доке перечитать надо. Интересно все так документацию читают? Или кто-то залпом все читает один раз, а потом пишет по памяти?
Есть нестандартные JSON-подобные файлы.
Как их распарсить:
- есть ли более гибкие JSON-фреймвёки, чем стандартный "import json" (не заморачивающиеся наличием и видом кавычек и т.п.)?
- можно ли фильтровать поток на входе в JSON-парсер (чтобы "на лету" конвертировтаь форматы или исправлять несовместимости форматов)?
Не хочется писать свой парсер-велосипед.
Читаешь tutorial или getting started. ознакамливаешься с общей концепцией, и дальше уже по самой документации ищешь что тебе нужно. Плюс гугл и стековерфлоу никто не отменял.
Пиши на ГТК
Ну а обязательное указание возвращаемого типа перед именем функции это не противоречит твоему заявлению?
>мы пишем просто имя функции
>Потому что это не ключевое слово.
>мы пишем просто имя функции
Условия на ходу придумываешь?
> Напомните мне почему в java/c#/c++ мы пишем просто имя функции в декларации
> с++
> int main()
> void zal_upa()
> float sheeza()
???
Прочитал укус питона. Что дальше делать? Что читать?
Хорошо, я определяю функцию в интерпретаторе, и вместо def my_functoin(x, y) пишу просто my_function(x, y). Что в таком случае должен сделать интерпретатор? Попытаться вызвать функцию или перейти на новую строчку во фрейме чтобы я мог продолжить ее писать?
Прочитай еще что нибудь.
очевидно, что он должен проверить наличие двоеточия после закрывающей скобки
my_func() - вызов
my_func(): - определение
Переход при : или { иначе вызов
В случае ruby действительно не поймешь.
Блядь, да иди кури модули. Реквесты, скрапи, бс4, джанго, фласк, не тупи, пиздец
Прочитай дайв инто питон, классика же.
> Я вкатываюсь только
Вкатывайся сразу в документацию и примеры. Боты в вк/телеге, парсинг, скрипты для сисадминов - начинай с чего угодно.
Какой путь выбрать - искать парсер или как-то фильтровать поток ввода в стандартный модуль?
Какие парсеры JSON есть для Python?
Есть ли всеядные?
Лучше сразу начинать писать код по примерам в инете. А по ходу - с интересом изучать нужные места документации, альтернативные способы и т.д.
Ну а когда входной этап уже пройден - можно почитать осмысленно учебники - сразу и повтор знаний, и заполнение пробелов, но уже осмысленно.
Я читаю туториалы в которых описано 5% возможностей апи или гайды в которых описано 1% апи. А потом тебя оставляют изучать 99-95% самому. Я вообще вникнуть в апи не могу как его соединять.
> А потом тебя оставляют изучать 99-95% самому.
А по-твоему это как должно происходить? Тебе персонального ментора должны были выделить шоле? Или вообще код за тебя писать?
>>1048322
Я не знаю как это должно происходить. Это как теория автоматов и комбинаторика. Тебе дают тысячи деталей от конструктора, которые ты можешь соединить 10^n:{n>10} способами, причем рабочие комбинации - это 0.1% от всех возможных, а годные комбинации (за которые тебя не назовут быдлокодером) - 0.001%. Наверное потому и есть чуваки, которые пишут книги на сотни страниц по технологии x.
https://english.stackexchange.com/questions/48388/differences-between-tutorial-guide-and-how-to
Это ещё ладно если есть тутор/гайд/хау-ту, но бывает что тебе оставляют маленький readme c микроскопическим рабочим куском кода, а то и вовсе с репозиторием без readme.
Так сорцы тебе на что? Даже если разработчик положил болт на документацию (хотя это какой-то исключительный случай в популярных либах) есть исходники, читай их.
Причём тут qt, терпила?
Чтение недокументированного кода занимает столько же времени сколько и его написание. Придется отделять апи от внутренностей, делать диаграмму классов, документировать все, построчно разбирать, дописывать и переписывать код. Или не? Я обычно такие вещи пока сразу закрываю.
Когда тебе оставляют голый апи со скудным описанием - это то же самое как если бы тебе оставили ключевые слова языка программирования без синтаксиса. По смыслу же поймешь как соединять азаза, десу.
Ты в шапке треда не заметил: Python thread? Так вот принеси мне пруф в виде популярной питоновской либы, где отсутствует документация.
>90% гитхаба
Ну если считать васяновские хелловорлды, то да.
>линукс
https://www.kernel.org/doc/
>gcc
https://gcc.gnu.org/onlinedocs/
>>1048354
>>линукс
>>gcc
Тащемта я руководства разработчика имел ввиду, ну да ладно.
>>1048348
Насчет популярных не в курсе, а вот насчет pypi я уже заметил что там много проектов без документации или с очень скудной документацией.
Рандомно взял с главной страницы: https://pypi.python.org/pypi/columnclient/0.0.1
https://github.com/vmware/python-columnclient
Documentation
Coming soon...
>Рандомно взял с главной страницы: https://pypi.python.org/pypi/columnclient/0.0.1
5 классов по 10 строчек + тесты, ты не смог осилить без документации? Серьёзно?
Для тебя легче в документацию смотреть или в сурцы?
Это sessionstore.js из Firefox
Я могу и так рассказать - там были обнаружены следующие несовместимости:
- json-объект (и вложенные в него json-объекты) обрамляются еще и в курглые скобки: "({...})"
- есть свойства, обрамленные в одинарные кавычки вместо двойных
- есть свойства не обрамленные в кавычки
- проблема с парсингом символов \xNN, которые иногда присутствуют в строках (\uNNNN проблем не вызывают)
Это пока то, что я вспомнил
Короче - нестандартная запись JSON данных.
Пока быдешь учить - забудешь то, что учил в начале и то, что не применял.
Поэтому сначала займись мотивирующей практикой а заодно быстрее поймешь нужен ли тебе именно этот язык и вообще программирование, без траты лишнего времени
И в процессе решения интересных проблем ты будешь узнавать новое и самое необходимое в первую очередь, а также узнавать интересные вещи, которых не узнаешь в учебниках - смотри варианты решений одной и той же проблемы на StackOverflow
А уже потому ты будешь осмысленно изучать теорию "вообще", если она тебе понадобится. И это будет более эффективное изучение, чем не зная основ языка и как он работает.
Мне кажется, тебе рано браться за нормальные учебники. Может ты с наскоку попытался взяться за темы, к котороым не был готов. Попробуй пока книги для детей - там потихоньку все объясняют и разжевывают. А потом перейдешь к более сложным.
Или программирование вообще не для тебя.
>как если бы тебе оставили ключевые слова языка программирования без синтаксиса.
Я так когда-то изучал незнакомый комп со своими командами. Тотлько и команд описания небыло - приходилось догадываться. И ставить опыты. Было интересно. Своеобразная игра на смекалку.
1. Как заставить сервер ждать входящий запрос, "слушать" какой то порт?
2. Как отправить .xml обратно, на адрес отправителя?
Да хуйня, все свистелки на питоне одинаково работают. Ты просто еще не вкурил принцип.
Идеально подойдет веб. Одностраничник на фласке с одной формой для отправки файла, одна функция-хэндлер, которая делает действия и возвращает csv респонсом.
Это конечно если файл ты хочешь вручную загружать и учти что тебе придется ждать респонса.
Где в дс есть пиздатые по програмированию? Хочу вкатиться, но все это онлайн обучение, имхо постная хуйня, но если есть действительно что-то годное рассмотрю варианты.
Особенно остро стоит вопрос о практике для закрепления пройденного.
Естественно, интересует в первую очередь питон
Со стороны пользователя есть только кнопка "отправить" и выбор файла. Сервер должен не только принять файл, но и вернуть обратно пользователю другой файл сформированный на основе первого.
Проблема в том что я не понимаю как заставить сервак принимать файлы с любых IP(ну тут наверное можно встроить в запрос логин/пароль). А уж как отправить файл обратно отправителю, учитывая что он может находиться за роутером для меня вообще загадка. Можешь посоветовать какие нибудь библиотеки на эту тему?
Ты пишешь какой-то сумбур. То что ты хочешь реализуется вебсервером. Он будет работать на определенном порту в определенной сети. Как ты будешь пробрасывать этот порт во внешний интернет зависит не от питона. Можешь спросить где-нибудь у сетевиков или админов в треде.
Касаемо принять-вернуть -- это стандартная схема request-response.
Проблему решает любой web-фреймворк, проще всего будет сделать на легких типа flask или bottle. Они же решают проблемы с авторизацией.
Проблемы авторизац
Ты вообще программировать умеешь?
В люббом случае - онлайн или оффлайн курсы - это всё хуйня. Ты должен работать сам, препод может только поправитть тебя где ты запутался. Лучше всего начинай сам с практики, можешь посмотреть быстрый ввод в язык для общего представления, типа Learn Python in One Video или что-то аналогичное на русском типа Питон за один час. Это только чтобы понимать грамматику языка. А дальше - сам, делай утилиты для себя, спрашивай на форумах/в группах, ищи в гугле. И постепенно разберешься, причем быстрее, чем учить по учебнику. Конечно, учебник потом стоит прочитать, чтобы проверить на себя пробелы и закрепить знания.
мой:
aiohttp==2.2.4
aiopg==0.13.0
aiozmq==0.7.1
async-timeout==1.2.1
basicauth==0.4.1
chardet==3.0.4
ecdsa==0.13
future==0.16.0
monotonic==1.3
msgpack-python==0.4.8
multidict==3.1.3
psycopg2==2.7.1
pycrypto==2.6.1
pydantic==0.4
python-jose==1.3.2
pyzmq==16.0.2
six==1.10.0
SQLAlchemy==1.1.11
tenacity==4.4.0
yarl==0.12.0
asn1crypto==0.22.0
attrs==17.2.0
Automat==0.6.0
beautifulsoup4==4.6.0
cffi==1.10.0
constantly==15.1.0
cryptography==2.0.2
cssselect==1.0.1
django==1.11.4
html5lib==0.999999999
hyperlink==17.3.0
idna==2.5
incremental==17.5.0
lxml==3.7.3
parsel==1.2.0
pyasn1==0.3.1
pyasn1-modules==0.0.10
pycparser==2.18
PyDispatcher==2.0.5
pyOpenSSL==17.2.0
pypiwin32==220
pytz==2017.2
queuelib==1.4.2
Scrapy==1.4.0
service-identity==17.0.0
six==1.10.0
Twisted==17.5.0
w3lib==1.17.0
webencodings==0.5.1
zope.interface==4.4.2
asn1crypto==0.22.0
attrs==17.2.0
Automat==0.6.0
beautifulsoup4==4.6.0
cffi==1.10.0
constantly==15.1.0
cryptography==2.0.2
cssselect==1.0.1
django==1.11.4
html5lib==0.999999999
hyperlink==17.3.0
idna==2.5
incremental==17.5.0
lxml==3.7.3
parsel==1.2.0
pyasn1==0.3.1
pyasn1-modules==0.0.10
pycparser==2.18
PyDispatcher==2.0.5
pyOpenSSL==17.2.0
pypiwin32==220
pytz==2017.2
queuelib==1.4.2
Scrapy==1.4.0
service-identity==17.0.0
six==1.10.0
Twisted==17.5.0
w3lib==1.17.0
webencodings==0.5.1
zope.interface==4.4.2
Говно твой atom - портит русские буквы.
нет не в курсе. спасибо что открыл мне глаза.
Я не мешал ничего. Мне пока нужны только жанга и скрапи, остальное само загрузилось.
>на сервис-архтетуру не думал перейти?
И кстати не ко мне вопрос. Я тут свой первый сайт на коленке делаю под надзором анона.
О, и тут открылась страшная истина - в pip реестре много мусора.
Поэтому надо было сказать, чтобы подсвечивали то, что ставили сознательно сами.
У тебя pip-ы по папкам локально разбросаны? Или куча установленных копий питона?
Можно тупой вопрос? Как я из под одного окружения буду управлять проектом в другом окружении?
В обморок не падай. Да, я сижу под виндой. Из всего этого списка я знаю только что такое bs4, django, lxml, pip, scrapy, setuptools, twisted, wheel.
>в каждом проекте свой .venv
venv и virtualenv не одно и то же?
>скрапи сервисом
А как его еще можно запустить? В обморок не падай я вообще сначала хотел спайдер в вид джанги запихать и запускать по реквесту.
>должен получать задания из джанги
Какие задания? Содержимое паука или комманды старт, стоп>>1048516
>rabbitmq? http api?
Первый раз слышу, еще не дошел до этого.
это папка у меня так называется. virtualenv
задания на парсинг
так то оно все будет работать и в рамках одного проекта, но я бы разделил на 2 проекта, каждый со своим вирт окружением, а задания на парсинг передавал бы одним из способов...
Почему странный? Мне надо поменять домен. К примеру, до этого комп был в рабочей группе WORKGROUP, или как то так, а теперь надо переместить его в домен obpte
Тогда остается уточнить как это делается в твоей ОС из терминала/командной строки.
рабочая группа != домен, под виндой, из питона можно выполнить сценарий windows shell script
Предположительно, все действия будут выполняться в Win XP/7/10
Питон же может своими средствами, определить ОС, да? Думаю, с простыми if'ами можно будет запускать разные команды в cmd
> рабочая группа != домен
Ну, да, тут я неправильно выразился
> windows shell script
А можно точнее?
да, только много баще
но надо что бы в твоей xp был 3й сервиспак что бы он повершелл поддерживал или 2й не помню
можно и так наверное
>но я бы разделил на 2 проекта, каждый со своим вирт окружением
А какой профит?
> а задания на парсинг передавал бы одним из способов...
Каким лучше?
>задания на парсинг
Старт/стоп парсинга или передача кода спайдера краулеру,
А где брать задания для тренировок?
Я прочитал несколько книг по програмированию в целоми по питону в частности, но задачи там либо совсем элементарные либо совсем сложные и пути их решения мало пересекались с тем что было в книгах
профит мифический) мне просто нравится когда мухи с котлетами отдельно
способ хз. каой у скрапи есть API? такой что бы на реквест он мог выслать результат парсинга?
старт и стоп уже прописанных заданий в скрапи.
>каой у скрапи есть API?
Он управляется через командную оболочку в консоли. Еще можно запустить его как готовый скрипт через консоль или через os.system("script_name.py") другого скрипта. Еще анон посоветовал scrapyd и есть django-dynamic-scraper, я не разбирался пока, но выглядит более адекватно. На выходе scrapy форматы JSON/CSV/XML и доступ к словарям через scrapy-djangoitem. Пока толком не разобрался что к чему.
InvalidRequestError at /register
Request req_57thWFG2RfltKc: No such token: None
Делал по гайду, вроде всё правильно переписал, на какой None жалуюется понять не могу
В дебаге выделяет этот view:
https://pastebin.com/hQqmESxB
Твиттер наконец-то запилил годный фронтенд. В голове не укладывалось как многомиллиардная корпорация годами не могла запилить себе морду.
aiohttp==2.2.5
aiopg==0.13.0
asn1crypto==0.22.0
async-timeout==1.2.1
certifi==2017.7.27.1
cffi==1.10.0
chardet==3.0.4
cryptography==2.0.3
docker==2.4.2
docker-pycreds==0.2.1
graphene==1.4.1
graphql-core==1.1
graphql-relay==0.4.5
idna==2.5
iso8601==0.1.12
multidict==3.1.3
passlib==1.7.1
phonenumberslite==8.7.1
promise==2.0.2
psycopg2==2.7.3
py==1.4.34
pycparser==2.18
PyJWT==1.5.2
pytest==3.2.0
pytest-asyncio==0.6.0
pytz==2017.2
requests==2.18.3
six==1.10.0
SQLAlchemy==1.1.13
typing==3.6.1
urllib3==1.22
websocket-client==0.44.0
yarl==0.12.0
aiohttp==2.2.5
aiopg==0.13.0
asn1crypto==0.22.0
async-timeout==1.2.1
certifi==2017.7.27.1
cffi==1.10.0
chardet==3.0.4
cryptography==2.0.3
docker==2.4.2
docker-pycreds==0.2.1
graphene==1.4.1
graphql-core==1.1
graphql-relay==0.4.5
idna==2.5
iso8601==0.1.12
multidict==3.1.3
passlib==1.7.1
phonenumberslite==8.7.1
promise==2.0.2
psycopg2==2.7.3
py==1.4.34
pycparser==2.18
PyJWT==1.5.2
pytest==3.2.0
pytest-asyncio==0.6.0
pytz==2017.2
requests==2.18.3
six==1.10.0
SQLAlchemy==1.1.13
typing==3.6.1
urllib3==1.22
websocket-client==0.44.0
yarl==0.12.0
о! коллега!)
>graphene
прикольно, но руки так и не дошли
>PyJWT
python-jose заюзал
>websocket-client
но у тебя же уже есть aiohttp
хм, хорошая идея...
Начинаю учить питон, и чтобы все это дело шло чуть интереснее
хочу по ходу обучения писать и все время допиливать одну прогу.
Прога эта что-то вроде ассистента на рабочем столе, должна выполнять простейшие команды и немного поддерживать разговор. С чего начать? Какие библиотеки смотреть?
Какой ассистент? Как скрепочка в старых вордах? Как сири\кортана с распознаванием команд?
Чтоб такая хуйня в углу экрана была только с консолькой, куда бы я ей команды кидал, а она отвечала по ситуации
Если сделать что-то, чтоб делала
Если поговорить , чтоб говорила
Обновление кейлогера.
Теперь еще делаются скриншоты экрана
https://ideone.com/FaN0IF
Сделал grayscale, чтобы поменьше места занимали. Затем преобразуется в RGB, потому что иначе PIL будет ругаться для записи в JPG. JPG сделано качество 10%. Почему так мало? Чтобы сократить размер файла до 60 кб (в моем случае), экран у меня огромный. Эти 10% достаточно, чтобы визуально понять, где и что вводилось. Название файла для скриншота сделано по текущим часам. Поэтому открыв key_log.txt вы можете по времени ввода сопоставить по названию скриншота. Будет понятно вводился ли пароль или человек что-то просто пытался что-то писать.
Кейлогер надо закидывать по комбинации клавиш win r, далее вводите shell:startup помещаете туда этот скрипт с расширением pyw.
Для работы требуется поставить pynput и pyautogui Поставить можно через pip
Лютый фейл в самом начале, что я делаю не так
Traceback (most recent call last):
File "E:/mypr/hello/eef.py", line 1, in <module>
import stdio
File "C:\Python27\lib\site-packages\stdio.py", line 29, in <module>
sys.stdin = os.fdopen(sys.stdin.fileno(), 'rU', 0)
UnsupportedOperation: fileno
pyautogui библиотека которая управляет клавиатурой и мышью.
Можешь пока сделать через консоль, вводить команды. Например, gmail erase spam
Далее pyautogui открывает:
1. Браузер
2. Вбивает адрес гугл почты
3. Заходит в спам
4. Нажимает на кнопку "стереть весь спам"
pyautogui конечно всё сам не умеет делать, этот сценарий ему надо прописывать.
Насчет голосовых команд, тебе еще рано.
Алсо, все библиотеки установил верно
( http://introcs.cs.princeton.edu/python/windows/)
ос 10-ка
Не третий пайтон потому, что мануал написан на втором, а мануал очень годный(так его подали)
Когда писал про разговор имел в виду, чтобы простого чат бота
Прошу анонимуса подсказать чайнику.
Чужие задания не мотивируют.
Ищи идеи, которые тебя увлекут.
Для начала смотри что у тебя на компе или сайте нужно автоматизировать.
Программирование - это именно процесс программирования, а не теоретезирование.
В этом нет никакого смысла. Если передать жертве, то надо, чтобы всю эту инфу прога куда-то скидывала (например, по ftp). Вдобавок в таком виде антивир её не детектит. Сейчас делается не так. Даешь прогу, которая открывает порт. Через порт залазишь на комп и ставить обрезанный virtual terminal и через него ставишь все необходимые проги.
P.S. сам не делал, знаком с теорией.
Последние версии 2.x могут, имхо, быть уже не очень совместимыми со старыми 2.x. Их пытаются приблизить к ветке 3.x
Может в этом проблема?
Я сделал скрин, распечатал, повесил на стену, где у нас смешные картинки весят. Накуримся, будем ржать.
Чего-чего? Стандартные функции нарушение PEP? Или то, что одна операция должна быть в одну строку, если ее можно описать одним человеческим предложением?
По возможности не используй конкатенацию строк, юзай format или f-string, алсо питон 2 тоже не используй.
На третьем глючат либы pynput, pyautogui, pyinstaller и многие другие.
В догонку: не log_dir, а log_path, так как dir - это объект типа файла, а если ставишь / или \ - это уже путь к чему-то
pep-8 подразумевает, что в одну строку нельзя писать, надо делить.
В моем коде есть нарушение pep-8, но мне просто было лень заморачиваться.
Зачем делить неделимое?
Посмотри руководства по языку, например это
https://www.youtube.com/watch?v=OSGv2VnC0go
Там всячески избавляются от ненужных промежуточных переменных, которые только запутывают и усложняют код.
Ну, ладно, если Raymond Hettinger так говорит, то придется привыкать к % (брррр)
Р. Сэджвик, К. Уэйн, Р. Дондеро
Программирование на языке Python : учебный курс
https://t.memenet.org/xjtkm.pdf
Спасибо за ответ. Вот, держи мануал.
Выбрал их поскольку хочется разобраться более менее серьёзно и без лишней воды, но увы, я кажется прогораю на стадии хеловорлда.
Может винда гадит. Не понимаю. А питон у меня старый.
И тебе спасибо
1) Ставь ту версию, которую упоминает автор.
2) Не забывай об опечатках в тексте учебников, особенно они любят попадаться в текстах примеров.
Ну, вот ты сейчас сам сказал, что это переменная, а не объект. И благодаря _ это именно переменная, а не объект. На первых страницах учебника по питону про это отдельно говориться.
Тройка от тройки тоже отличается уже.
Смысл как я понимаю в том, чтобы гладко запускались все примеры. Хороший учебник важнее последней версии языка. А учить так или иначе все равно придется обе версии.
Не открывал книгу, если там про третий, значит ставьте третий.
Ok, ok. Я о Фоме, ты о Ереме, но все как ни странно правы, хотя друг друга не поняли.
Объект в смысле вещь как реальном мире, а не в смысле класс как в программировании
Это хуйня, а не задачи.
Кстати, я люблю цветной логгинг. Но тут конечно усложнять не нужно.
>>обе версии.
>С чего бы?
Хотя-бы чтобы в чужом коде разбираться или запускать либы, которые не переписаны на 3ю версию.
Большинство живых проектов уже давно переписаны на тройку, и сейчас не 2010, что бы нужные либы были все еще на втором питоне
А библиотеки как numpy и pygame, на третей им есть альтернативы. Извини за тупые вопросы, я совсем ньюфаг.
Двач engine недружественен к программерам
Вот когда тебе дадут работу по поддержанию/переписыванию старого кода будешь объяснять, что ты не учил и не знаешь, потому что сейчас не 2010.
Холмс, это гениально, всё заработало! Но в чём я сделал лажу? В примерах указана именно моя версия кода...
Мануал очень хороший, вот и приходится работать с тем, что имеем.
Вместо pygame сейчас используют Blender.org
В этом редакторе есть скриптинг, в нем пишешь на питоне.
>"The stdio.py file is one that we designed specifically for this book. It defines functions related to reading input and writing output. Having imported the stdio module, you can later call a function that is defined in that module."
То есть нужны еще файлы примеров к книге. Автор понаписал нестандартные либы и учит запускать их, а не стандартные питоновские - не знаю зачем он так сделал. Может чтобы усложнить жизнь, или затруднить копирование книги?
Но поскольку она названием напоминает стандартные либы C++ и Java, то скорее всего - автор хочет писать одинаковые примеры для всех языков, для которых он пишет учебники, с минимальным переписыванием текста и примеров для адаптации.
Вывод: лучше другой какой-то учебник, заточенный только на Python. Хотя может конечно этот учебник и хороший, но такое как-то настораживает. Вначале нужно учить стандартные либы, а не самописные.
Сделано в Блендере с использованием питона.
https://youtu.be/X20rhKQlOMs?list=PLARgVCeF-XW1wAIfkWOZ2XOUhhWWTpQoo
Такое ощущение, что книгу писал какой то сишник, мало того, что вместо print используется stdio (хотя при указании аргумента file в принте можно с этими потоками как хочешь играться), так еще и велосипеды типа бинарного поиска\вставки пишут и ни слова про их наличие в стандартной библиотеке, лучше почитать отдельно книгу по алгоритмам и сишке, на которой ты их писать будешь, что бы быстро было и т.к. автор атомарными данными пользуется, ощущение, что он просто взял книгу по си и переписал на питон, не учитывая его специфики и отдельно по программированию на питоне
>Сделано в Блендере с использованием питона.
Выглядит, как студенческая поделка, когда будет что то типа такого, тогда и показывай
https://www.youtube.com/watch?v=9ByHyYXFmd0
>>1048976
Сейчас только конченный ретард будет писать на двойке, от нее массово отказались и она существуют только в совсем легаси и постепенно переписывается на тройку, что дает двойка, чего нет на тройке?
Поддержка легаси говна тебя делает универсальным специалистом? Охуительные истории.
>что дает двойка, чего нет на тройке?
Более красивый питон-код:
print 'I fuk your mamma, nigga'
>>Выглядит, как студенческая поделка,
Давай ты перестанешь тупить. А? Этот проект показывает как в играх можно делать разрушения.
Если ты хочешь красявости, то вот https://youtu.be/mN0zPOpADL4
Как я догадываюсь, Седжвик пишет учебники по программированию вообще, а не по конкретному языку. Но поскольку он раньше уже написал учебники по C++ и по Java а также по алгоритмам, то в учебнике по Python он решил далеко не ходить и написать всё так же, как и в предыдущих.
В общем, не знаю насколько хорош его учебник ну наверное неплох раз расхваливают, но он прежде всего по программированию, а не по языку (моя догадка).
Любители мегапректов пусть обмазываются Java и С++
И где тут питон? Не приравнивай скриптовый язык и сам редактор, блендер для создания игр (а не моделей и мультфильмов, тут он неплох, не спорю) мягко говоря не очень хорошее решение, учитывая наличие юнити
А, так все-таки я смогу на Блендере забабахать свой порномультфильм? Или нет?
Конечно можно. Можно часами рассаживать деревья по сцене, а можно скриптом https://www.youtube.com/watch?v=unb-gGE_dhg
Во-первых, в эту тему надо влезть, чтобы понимать о чем я толкую. Во-вторых, у юнити скриптинг на JS или C#.
Но я так как мне питон ближе, я делаю в Blender. На скорость в конечном продукте это не влияет, так как Blender написан на C++ и питон используется как указатель.
Просто твоя религия - это Unity, моя Blender. Но все же это в тысячу раз лучше, чем pygame, которой устарел 8 лет назад, а новая замена ему только делается.
Например, вы нарисовали дом в Blender и хотите забить этими домами целый квартал. Ручками делать? Целый день потратите. А используя питон, вы справитесь за пару минут. Вы просто пишите скрипт на питоне, где импортируете random, при помощи случайных чисел дома расставляются с небольшим поворотом, чтобы не выглядело все однородно. Дополнительно в цикле указываете, что у каждого дома крыши будут разного цвета.
>Например, вы нарисовали дом в Blender и хотите забить этими домами целый квартал. Ручками делать? Целый день потратите.
Но ведь в нормальных студиях так и делают! Нужно либо доверять рандому, либо делать сложный очень сложный скрипт, что бы это не выглядело сильно фальшиво
мимопроходил
А, так скриптинг в Unity и Blender используется только лишь для создания сцены, а не для анимированного сценария?
Когда работа дорого оплачивается, то почему бы и нет?
Что в них хоршего?
Можно и анимированный сценарий. Это ж программирование, никаких ограничений, все возможно.
А жесты - что - каждый раз растягивать губы вручную и пальцы складывать в кулак?
add: Как это всё делается в играх - там же все какиемии-то скриптами управляется?
>писать анимацию на скрипте это очень ебануто
Ты один раз это делаешь ручками и запоминаешь скриптом. Потом в скрипте пишешь последовательность: персонаж прошел 2 метра, встал, посмотрел на небо и улыбнулся.
Сап Пруф, я Двач, есть одно задание. Есть пикрил, а есть то, что я написал, вот оно: https://ideone.com/mytlxk
Как оно? Говнокод или заебись?
Правда мэйн функция нихуя не 30 строк, но при этом и вся прога ни разу не 200. Так же не понимаю, что за функция для load list, где и зачем я такую должен сделать.
Ты делаешь это один раз руками и далее заносишь последовательность в память, вызываешь её скриптом. Полностью все ручками делают только дизигниры, у которых мозги не могут программировать.
В саблайме тоже из редактора можно
А что скажешь про Poser - он для мультиков по скрипто-сценарию лучше Blender и Unity или нет?
Я слоупок. Поясни.
бот в телеграме, будешь записывать туда свои долги или кто должен тебе , чтобы не забыть, попробуйте ананасы
Как экранировать переменную?
Странное поведение местных питурдов, все хотят выбрать самый лучший и остановиться на этом.
Надо все изучать, Unity, Blender, Poser и только на собственном опыте делать выводы.
Здесь ни капельки питона, просто чувак рассказывает как тыкая мышкой можно заставить реагировать объект на клавиши. Питон можно использовать попозже, когда для объекта потребуются более сложные действия.
Нахуй тогда борды и форумы, и вообще с кем-то общаться и вопросы задавать?
У нас жизнь не бесконечна, да и если бы была, 1000 дел одновременно делать невозможно.
Чтобы не ошибиться нужно предварительно разведать что по чем, что лучше в каких задачах. Особенно если ты не собираешься становиться в интересуемой области профессионалом, а интересуешься для себя, для небольшого любительского проекта.
Ты очень важный человек для Дурова, ему реально нужно знать кому ты должен знать о твоих долгах за пивас.
По ссылке рассказывается как экспортнуть в exe. Я попробовал, у меня получилось. На скрине куб, который управляется с клавиатуры. Движение стрелками вперед, назад, повороты влево и вправо. Ушел изучать дальше.
Спасибо!
А хули не получается так?
yoba = 17/100
print yoba
По идее должно быть 0,17, но получается 0.
Пишу с холодильника.
Да забей. Уже разобрался.
xidea.online
Охуительные приколы. Я так и не понял, как экранировать переменную после точки 0.{yoba}
import this
Gur Mra bs Clguba, ol Gvz Crgref
Ornhgvshy vf orggre guna htyl.
Rkcyvpvg vf orggre guna vzcyvpvg.
Fvzcyr vf orggre guna pbzcyrk.
Pbzcyrk vf orggre guna pbzcyvpngrq.
Syng vf orggre guna arfgrq.
Fcnefr vf orggre guna qrafr.
Ernqnovyvgl pbhagf.
Fcrpvny pnfrf nera'g fcrpvny rabhtu gb oernx gur ehyrf.
Nygubhtu cenpgvpnyvgl orngf chevgl.
Reebef fubhyq arire cnff fvyragyl.
Hayrff rkcyvpvgyl fvyraprq.
Va gur snpr bs nzovthvgl, ershfr gur grzcgngvba gb thrff.
Gurer fubhyq or bar-- naq cersrenoyl bayl bar --boivbhf jnl gb qb vg.
Nygubhtu gung jnl znl abg or boivbhf ng svefg hayrff lbh'er Qhgpu.
Abj vf orggre guna arire.
Nygubhtu arire vf bsgra orggre guna evtug abj.
Vs gur vzcyrzragngvba vf uneq gb rkcynva, vg'f n onq vqrn.
Vs gur vzcyrzragngvba vf rnfl gb rkcynva, vg znl or n tbbq vqrn.
Anzrfcnprf ner bar ubaxvat terng vqrn -- yrg'f qb zber bs gubfr!
Вот только ты в мозги ебешься, там сквозное шифрование.
def test_returns_exact_html(self):
index = self.client.get('/')
print(index.content)
self.assertEquals(index.content, render_to_request("index.html").content)
Но это почему-то даёт ошибку, плюс в документации пишут не юзать render_to_request, а как тут обычнынй render запилить ?
(a + b) / 12 * c % 4 + b
Как это объяснить словами?
Сумма а и b делится на 12, умножается на с, а потом что?? Процент? От чего процент? Как вообще выглядит этот пример на питоне? Заранее огромное спасибо!
>Процент?
Остаток от деления, гугли mod.
> Как вообще выглядит этот пример на питоне?
Так и выглядит.
Да ошибся немного, в питоне функция называется divmod, а % это просто форма записи.
я конечно не спец
но у тебя вызывается url blog/add_post/add_post
а в url у тебя такого нет только blog/add_post
причем прописано зачем-то 2 раза
и если blog у тебя отдельное приложение почему ты его не заинклюдишь в urls.py корнеговго приложения? нахуя все писать опять и опять
dict_2sh = {'john': '25', 'putin': '999', 'ego': '9881', 'garrett': '12'}
list_new = []
x = [ list_new.append(int(val)) for val in dict_2sh.values()]
print(max(list_new))
Я так и не понял что ты за хуйню упорол и зачем.
list_new = [int(val) for val in dict_2sh.values()]
Методы изменяющие сам объект возвращают None, у тебя бы был лишний список x с кучей одинаковых значений
Нет, генератор должен отдавать значения (и принимать, если это сопрограмма)
Если ты юзаешь функции, которые не отдают что либо, то надо делать через for
а если будет в условии что мне нужно вернуть ключ, максимального значения в словаре
dict_2sh = {'john': '25', 'putin': '999', 'ego': '9881', 'garrett': '12'}
list_new = [(int(values), keys) for keys, values in dict_2sh.items()]
list_new.sort()
print(list_new[-1][1])
Так правильно или есть какой либо встроенный метод?
Можно вызвать метод items (возвращает список кортежей, содержащий пары ключ-значение) и искать через встроенную функцию max, дополнительно указав ключ
dict_2sh = {'john': '25', 'putin': '999', 'ego': '9881', 'garrett': '12'}
print(max(dict_2sh.items(), key=lambda x: int(x[1])))
Вот, самый простой тест, что человек может залогинится. Пишет, что неправильный пароль или емейл, хотя я бля принтом выше вывел и всё есть, всё правильно, что не так-то ?
https://pastebin.com/VcBn7j0m
>user = User(name='jj', email='teiPHst123ANUStest'#%PUNCTUMcOh=om', password='test12345')
Косяк сам найдешь.
По шапке PHP треда сойдет?
>который при старом подходе с потоками и обратными вызовами выглядел бы ощутимо хуёвее, чем с asyncio.
Любой вебсервер на aiohttp, например.
Я нихуя понять не могу, ты говорил про User.objects.create_user ?
У меня User наследует AbstractBaseUser, я добавил в моделс objects = UserManager()
без этого всего писало, что нет такого метода create_user.
Теперь пишет, что TypeError: 'is_staff' is an invalid keyword argument for this function
Это мне получается нужно все его определить в моделс, или что ?
Пиздец, это что за книга такая? Там разве не объясняется, структура модели пользователя в джанге? Хоть документацию или исходники тогда глянь.
RealPyhton говно книга, но хз что читать, а доки без практики как-то тяжело читать, забывается всё.
но может там и обьяснялось почему именно AbstractBaseUser, а я жопой прочитал
>>1049675
Только что нашел, ниче не объяснили чому так, дали ссылку на доки
https://docs.djangoproject.com/en/1.10/topics/auth/customizing/#substituting-a-custom-user-model
Хотя для меня по докам как минимум не очевидно почему AbstractBaseUser а не AbstractUser.
Ну так-то да, дохуя ошибок, плюс 3 книга на джанге 1.5 лол
а так я загодя код не смотрю, он у меня есть скачанный, но по мере того как читаю уже добавляю что они там пишут, их тесты кстати нихуя не работают
>джанге 1.5
Можешь не учить, все равно заново перечитывать придется, слишком много нового и старого уже деперекейтед.
Зачем ее экранировать? Что за странное желание? Ты с какого языка на Python переползаешь, где так переменные экранируют, интересно?
>>1049705
Ну так и получается, что я переделываю код что они там нахуярили,я так-то себе 1.11 поставил, вот и аутирую теперь.
А что почитать-то можно ? джангогерлс прочитал уже
Алсо, ещё вопрос по тестам
Проверяю на полное сходство user.html и то, что получаю клиентом тестовым
def test_returns_exact_html(self):
c = Client()
response = c.get('/')
self.assertEquals(response.content, render_to_response("index.html").content)
И они не одинаковые выходят, сам index наследует base, где есть
{% if user %}
<li><a href="{% url 'sign_out' %}">Logout</a></li>
{% endif %}
При этом в render_to_response его нет, а вот в тестовом клиенте какого-то хуя есть, как так ?
> TypeError: slice indices must be integers or None or have an __index__ method
У меня алфавит в списке, надо выхватить буквы между двумя указанными
бле, похоже я где-то недопонимаю, но вижу просто два стула:
1) сплошные корутины на корутине, await urmom, если нет asyncio-обертки нужного пакета сосу писю; читается в принципе норм, почти как синхронный код, только миксуются обычные методы и корутины;
2) чистый синхронный код с блокирующим вводом-выводом, который надо ручками раскидать по потокам, а GIL сделает по факту то же, что в п.1 (т.е. один, по сути, залупа оживляющая потоки по мере завершения ввода-вывода, ну прям как корутины).
>>> c = list('abcde')
>>> f = c.index('a')
>>> g = c.index('d')
>>> c[f+1:g]
['b', 'c']
Может в списке что то не так?
Мне надо было захватить буквы, которые были введены, и те, которые между ними, оказывается. Я немного исправил.
Но это только начало цирка половина задания.
Боже, пиздец я даун. Под вечер вообще думать отказываюсь. Спасибо!
Я пхпдоун, простите.
>dict_2sh = {'john': '25', 'putin': '999', 'ego': '9881', 'garrett': '12'}
>print(max(dict_2sh.items(), key=lambda x: int(x[1])))
Это работает, пока не понимаю как, но работает. Спасибо аноны.
Аноний, подкинь годных туторов по джанге. Желательно на русском.
Не слушайте этого долбаеба - он не тот домен подставил: 2ch.PM вместо 2ch.HK
Вот правильный перекат:
https://2ch.hk/pr/res/1049766.html (М)
https://2ch.hk/pr/res/1049766.html (М)
https://2ch.hk/pr/res/1049766.html (М)
https://2ch.hk/pr/res/1049766.html (М)
https://2ch.hk/pr/res/1049766.html (М)
Это копия, сохраненная 15 сентября 2017 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.