Шапка: https://github.com/TheKnightsWhoSayNi/info/wiki/HatКод вбрасывать в тред через https://ideone.com/Прошлый: >>790365 (OP)
В чем заключается автоматизация тестирования в питоне?
>>795043чтобы тестирование проходило в автоматическом режиме.
>>795069Еба, ты умный.Это что - чтобы тесты сами под новые функции писались? Или имеется в виду запустить nosetests и все?
>>795005 (OP)Короче, переписал свой http-сервер на asyncio. Как теперь проверить сколько он продержится под нагрузкой? Какие подводные камни следует выследить?
>>795083Ну теперь пиши асинхронный долбитель асинхронных http-серверов.
>>795074Да позвони и спроси, долбоеб. Скорей всего такой же полоумный долбак писал так что норм, найдете с ним общий язык.
>>795091Вот блядь. Пошел писать.
>>795097Ты что такой агрессивный? Таким не место в питонотредах. Тут царит любовь, терпение и взаимопонимание. Я же думал, что в силу своей юности я не знал некоторых аспектов вокруг питона и под фразой "автоматизация тестирования" подразумевалось что-то конкретное.
>>795005 (OP)Перекатился к вам из строгой типизации. Как вы вообще программируете без автоподставления в ide? Мне вот чет сложно. Всегда документация открыта чтоли?
>>795104Да хз, как-то проблем особых нет.
>>795104> Перекатился к вам из строгой типизации.А у нас тогда какая? заебали уже статическую и строгую путать
>>795103> Таким не место в питонотредах. Тут царит любовьПошёл нахуй отсюда!
>>795116int/floatжёлтый колобок.png
Как блядь правильно организовывать директории и поддиректории и импортировать оттуда это всё?Есть папка site, в папке site есть папка src. В каждой папке есть пустой __init__.py. В папке src один из файлов импортирует в себя другие, если его запускать как мейн - то всё заебись. Когда же я делаю другой мейн в папке site и, импортируя нужно барахло как import src.barahlo, то интерпретатор начинает материться на импорты в мейн файле из src. Что за хуета и как все сделать пиздато?
Питоначеры, недавно спрашивал в подобном треде, как свараганить многопоточность, чтоб легко, быстро и без смс. Знающие господа открыли для меня модуль multiprocessing и pool -ы в частности. Теперь захотелось результаты работы этих потоков передавать в другую функцию, причем чтоб обрабатывались они строго в порядке очереди короче нужен мастеркласс по queue. Сенкс заранее.
Сейчас изучаю Джанго, наткнулся на микрофреймворк флакс. Собственно вопрос стоит ли его изучать или лучше забить?
>>795204g: async pipeline python
>>795223фласк > джанго
Ебаный виндовс, блять. И линукс дома не поставишь - все мультимедиа по пизде, блять.
Вообщем немного разобрался, но не знаю как пофиксить такой трабл.В джанге есть джве модели. Родительская (не абстрактная) и дочерняя от нее. Есть ссылка по ForeignKey один ко многим с родительской на дочернюю. При сохранении родительской модели из формы внезапно сохраняется и экземпляр дочерней модели с тем же id. Параметр ForeignKey почему-то передается как новый инстанс дочерней модели, хотя последняя не указана в форме. Это должна быть просто ссылка на id. ). Через админку все нормально, создается отдельно родительская. Как пофиксить?
>>795204> мастеркласс по queueput — положить, get — взять. неблогодори
>>795246Битчез донт ноу абаут май виртуалбох
>>795104> Как вы вообще программируете без автоподставления в ide?Пиздос, а вот и современное поколение. По памяти, Маня.
>>795249Да еще это поле с ForeignKey я не добавляю в форму через шаблон, а передаю его значение через kwargs из url. Если вставляю поле в шаблон, то при ручном выборе все работает.
>>794865Не знаю кто отвечал на мой пост в предыдущем треде, но в любом случае спасибо, стало лучше. Сегодня перепишу своё говно.
скажите, по возможностям для web'а питон похож на пхп? Какие у него плюшки, что стоит из этих двух выбрать именно питон? И второй вопрос (вообще нубский): с установской на сервер питона никаких сложностей нет? Просто поставил и запускай свой *.py?
>>795289И не говори, бро. Я-то в советские времена ооо... на перфокартах кодил, какие времена были...>>795246Поставь OpenBSD, раз линукс нельзя.>>795104Ты о чем? vim + jedi, дополняет, документацию показывает, только что хуй не сосет.>>795116>А у нас тогда какая?Да походу никакой, если сравнение инта с булем может вернуть положительный результат, а строки являются массивами из строк (лолшто?).
>>795116>Да походу никакойНе никакой, а динамическая. Я кстати тоже поначалу после С++ и C# жутко плевался, а потом ничего, приработался. Просто как-то сидишь и кодишь без задней мысли. Правда проекты все у меня очень простые.Гораздо тяжелей я воспринимал невозможность передачи в функцию указателя или ссылки на переменную чтобы в последствии ее изменить, а не копировать.
>>795338Хотя добавлю, что мне больше нравится статическая типизация, просто потому что я вкатывался в кодинг начиная с С++ и это уже не исправить.Следует отметить, что в питоне перегруженные операции для сравнения разных типов работают чётко и все документированно, это тебе не обезьяний пхп где:Слабая типизация(всмысле, тихая автоматическая конверсия между строками/числами/всем остальным) настолько сложная, что она не стоит того, сколько бы усилий начинающего программиста она не сохраняла.Ну и плюс инфернальный пиздец с пикрелейтед конечно.
>>795327Оставайся на похапе.
>>795338>Не никакой, а динамическая.Ну да. Есть всего один тип (объект). Безтиповый лямбда-калькулус короч.>ссылки на переменную чтобы в последствии ее изменить, а не копировать.Но это костыль из C/C++, в питоне можно хотя бы кортежи возвращать же и деструктуринг есть.
>>795345>мне больше нравится статическая типизацияБудто бывает другая.Кстати, гайз, поясните за тайп-хинты в питоне. Оно типа в рантайме чекает? Или выводит (насколько это возможно)? Расставил их в коде, но при передаче значений с неверным типом ничего не происходит.
Господа, прошу помощи! Смотрите, у нас есть LDAP. Нам надо удалить пользователя из группы. Это делается вызовом функции ldap.modify с набором определенных параметров как в коде тут: http://pastebin.com/3qhXAySkКак мы видим, первым аргументом мы отправляем distinguishedName группы, а вторым отправляем желаемую операцию в кортеже с массивом DN'ов пользователей или просто со строкой.Только смотрите как интересно получается: если мы случайно, по какой-нибудь причине, похуй по какой, возьмём и вместо user_dn отправим пустой массив, то у нас ебанутся нахуй все члены из группы без возможности восстановления, что приведёт к моему последующему вылету с работы.Посмотрите своим профессиональным взглядом, как от такого поведения лучше всего обезопаситься? Я перед вызовом функции каждый раз делаю if len(dn_array) != 1, но может у вас есть более лучшие идеи?
Нужно сохранить объект перед выходом из программы. Использую shelve. В классе сделал следующее:https://ideone.com/OA3glwИмпортирую модуль со своим классом в интерпретатор. Когда вызываю del(object), все работает нормально. Но когда использую exit() или Ctrl-D, получаю следующее:File "/usr/lib/python3.4/shelve.py", line 239, in openFile "/usr/lib/python3.4/shelve.py", line 222, in __init__File "<frozen importlib._bootstrap>", line 2237, in _find_and_loadFile "<frozen importlib._bootstrap>", line 2222, in _find_and_load_unlockedFile "<frozen importlib._bootstrap>", line 2155, in _find_specTypeError: 'NoneType' object is not iterableПочему такое может происходить?
>>795246Маня не умеет разбивать диски?
>>795204Да, смотри класс Queue.
>>795345Лол, как же я обосрался с 3 4 и 5 строки с конца. Боже, какой пиздец. Хорошо что я съебал из конторы где меня пытались это говно заставить учить, не испортил хотя мозга этим говном. Особенно про оператор индекса к любой переменной понравилось: ЗАЧЕМ, нет вот просто ЗАЧЕМ?
Аноны, есть тут Джанго фрилансеры? Расскажите мне про то, как идут дела, сколько денег, с кем работаете? Какого типа проекты попадаются?
Анон, подскажи ньюфагу в какую сторону копать.Надо кроулер, чтобы по наименованию гуглил, заходил на сайты с товаром и кидал цены и ссылку в табличку.Про парсеры с сайта, хтмл разметку уже прочитал.Как реализовать запрос в гугль и прокликивание всех сайтов, может, готовые решения есть?
>>795483Ты че, дебил? Иди гугл api читай.
Кто какой color scheme пользуется?
>>7954831. Гугл тебя забанит после сотого запроса.2. Для обхода по собираемым ссылкам существует scrapy.
>>795501>1. Гугл тебя забанит после сотого запроса.Это можно как-то обойти?Временные промежутки ставить, к примеру, как в для wget делается?
>>795493Той, с которой удобно.
>>795503Есть, но это слишком сложно.
>>795303Все разобрался, я слепошарый долбаеб.
>>795505Правильно ли я понял, что поисковикивсе? ограничивают доступ именно к поисковому апи?Хотя тут, на второй пикче вон чего написано. И как различить в данном случае, моя программа коммерческая или нет.Поясните по хардкору.>Медленно, но верно Google перекрывает вебмастерам доступ к своим бесплатным API. Около полугода назад Корпорация добра закрыла сторонним специалистам доступ к API автозаполнения форм , мотивировав это тем, что данный инструмент изначально создавался для решения внутренних задач Google и не предназначается для использования на сторонних сайтах.>Теперь настал черед сразу нескольких поисковых API. Уже 15 февраля посторонним будет заблокирован доступ к Google Patent Search API, Google News Search API, Google Blog Search API, Google Video Search API и Google Image Search API.>Иными словами, Google запрещает владельцам сторонних сайтов использовать свои наработки для организации поиска по патентам, фирменному новостному агрегатору, блогам, видео и картинкам, соответственно. В качестве единственной замены этим продуктам предлагается Google Custom Search API .http://pr-cy.ru/news/p/5338
>>795513Просто много макак стало писать парсеры-хуярсеры, кликкеры-хуиккеры.
>>795412Я все понял. shelf.open() вызывает shelf.__init__. В нем вызывается import dbm. И судя по всему, интерпретатор считает, что нехуй вызывать import во время сбоки мусора. Или что-то вроде этого.
>>795468>Особенно про оператор индекса к любой переменной понравилось: ЗАЧЕМ, нет вот просто ЗАЧЕМ?Спроси у Гвидо.
пацаны, в книге этой вашей джанго бай экзампл, антуан пишет, мол, линукс это заебись.Но вот я прочитал чуток и все что он пишет я и на винде сделал без всяких глюков и какой-то жопной боли. Ну на винде же тоже работает бля, линукс все равно учить? Я конечно не против линукса, но ведь и на винде работает.
>>795555Если ты собираешься хеллоуворлды на ванильной джанге у себя на локалхосте гонять, то конечно и винда сойдет.
>>795562А если не хелоуворды? В чем там принципиальное отличие, что использование винды делает невозможным?
Вот слышал там в 10 винду завезли встроенную убунту, неужели это никак не поможет?
>>795564Все просто:Есть Unix, есть питон, и одно и второе придерживается примерно одинаковых принципов типа одна функция выполняет только что-то одно, одна программа делает только что-то одно, но делает это хорошо. В юниксе питон смотрится природно. В винде нет. Ты охуеешь еще pil ставить.Я не против того что тебе лениво вникать в юник, но не вникая ты теряешь больше чем можешь получить. Если в итоге консоль тебя будет тяготить - ну видимо юниксы и питон это не твое, ничего страшного сейчас валом всяких интересных штук. Но попробовать я бы все же рекомендовал , и не в виртуалочках, а накатить какой-нибудь elementary OS ( что бы не слепнуть от убожества убунты но так же быстро искать ответы) в дуалбут и похуярить там.
>>795544https://docs.python.org/2.5/whatsnew/pep-357.htmlПокормил дауна.
>>795575Так если в 10 винду завезли убунту, значит там питон будет уютно смотреться.
>>795563Ниебически простая установка/настройка управление сервисами бд и прочим, много батареек/серверного софта либо linux-only, либо со статусом "ну мы на винде запустили, вродь работает но хуй знает... в продакшен лучше не совать".Ну и тебя же никто не заставляет ОС менять, есть куча вариантов с виртуализацией.> что использование винды делает невозможнымОчень сложным, не невозможным.
>>795575Двачую этого, поставил арч и уже на 2 года забыл о всех сперма проблемах.
>>795580> арч
>>795513Ты даже и проксями не обойдешь, т.к. 90% вероятность, что они забанены. Добро пожаловать в реальный мир, где за услуги надо платить.
>>795083юзай какой-нибудь load-benchmark типа ab или вот помоднявей:https://github.com/rakyll/boom
>>795351Типизация опциональна, прямо в языке не проверяется, нужно юзать линтер mypy: http://mypy-lang.org/Мб там уже подкатились всякие плагины под саблайм/вим, которые умеют в работу с ним, а так можно поставить как step в каком-нибудь Jenkins'е
Анон, подкинь идею пет-проекта на джанге для <b>ПОРТФОЛИО</b> чтоб джуном вкатиться. И книжку по джанге намба ван фор фаст старт, на твое усмотрение. Пожалуйста.
>>795693>книжкудержи >>792464
>>795083>>795005 (OP)У меня еще одна проблема, связанная со чтением пользовательского запроса в asyncio. Хедер оно читает вменяемо, а вот всё что после одиночного \r\n - т.е. POST-запросы - не хочет, зависает. До этого использовал такой код, контент просто не читался:data = b''while True:--try:----line = yield from reader.readline()----data = data + line----if line == b'\r\n':------break--except:----breakТеперь поменял условие на "if not line", оно же просто зависает. Не совсем понимаю, в чем дело.
>>795714aiohttp
И так, ребяткиСейчас я буду писать онлайн-резюме на 1 человека на джанго и заёбывать вас вопросамиЧто мы имеем?Нужно написать выводилку резюме на одного человека с возможностью добавления мест работы (остальное сделаю по аналогии) Что уже есть:models.pyclass Person(models.Model):..name = models.CharField(max_length=30)..lastname = models.CharField(max_length=30)..mail = models.EmailField()class Experience(Person):..ref = models.ForeignKey(Person, related_name='work')..position = models.CharField(max_length=30)..fromtime = models.DateField()..totime = models.DateField()..description = models.TextField()admin.pyfrom .models import *admin.site.register(Person)admin.site.register(Experience)urls.pyurlpatterns = [..url(r'^$', views.index, name='index'),]views.pydef index(request):..template = loader.get_template('cv.html')..context = {....'person': Person.objects.all(),....'expirience': Experience.objects.all().order_by('-fromtime'),..}..return HttpResponse(template.render(context, request))Где я не прав?
>>795717Так не интересно. Мне интересно написание своего велосипеда сервера, чем использование готового.
>>795726При добавлении нового Person через админку получается такая срань:>OperationalError at /admin/cv/person/add/>no such table: cv_personНо я не понимаю где и нахуя оно должно вообще быть
>>795744база данных разумеется создана через python manage.py migrateтак же создан суперюзердругих манипуляций с бд я не совершал
>>795744ДБ синхронизировал?
>>795748>makemigrations>No changes detected>migrate>No migrations to apply.
>>795753Но таблицы-то нет.
>>795753Пробуй manage.py makemigrations cvТы свое приложение в INSTALLED_APPS добавил?
>>795758>manage.py makemigrations cvО, заработало, спасибоНе знаю чего оно так, вроде ж добавляло.
Добавление персоны прошло успешно, осталось конечно поколдовать над полями отображаемыми в админке, но это уже мелочиТеперь, уважаемые знатоки, внимание на экранВот что происходит при попытке создать Experience, то бишь место работы.Зачем оно предлагает вбивать нового человека?Если в rel выбрать уже созданного васяна - не меняется ровным счётом ничего.
>>795768Если указать relation между моделями Person и Experience не как models.ForeingKey? Но как иначе?
Пока знатаки думают над решением этой непростой задачи, обнаружилась ещё одна проблема!При views.pydef index(request):..template = loader.get_template('cv.html')..context = {....'person': Person.objects.all(),....'expirience': Experience.objects.all().order_by('-fromtime'),..}..return HttpResponse(template.render(context, request))и cv.html<html><head><title>{{ person.name }}{{ person.lastname }} - CV</title></head><body><h1>{{ person.name }}{{ person.lastname }} - CV</h1><ul>..<li>{{ person.phone }}</li>..<li>{{ person.skype }}</li>..<li>{{ person.mail }}</li>..<li>{{ person.website }}</li></ul>....не выводится ничего касаемо объекта.даже 'person': Person.objects.all().filter(id=1) (id 1 как я понимаю так величает его джанго) не помогает
>>795791Отмена, ребят, решил с помощью 'person': Person.objects.first(),очень чудно что он предусмотрен
>>795768Модель Person точно такая же как и раньше?class Person(models.Model):..name = models.CharField(max_length=30)..lastname = models.CharField(max_length=30)..mail = models.EmailField()Больше ничего не добавлял?
Ну я старался в тред чуть упрощённую модель кидать, и кажется сам себя наебал в итогеВот как они выглядят в оригиналеclass Person(models.Model):..name = models.CharField(max_length=30)..lastname = models.CharField(max_length=30)..mail = models.EmailField()..phone = models.CharField(max_length=10)..skype = models.CharField(max_length=30)..website = models.URLField()class Experience(Person):..ref = models.ForeignKey(Person, related_name='work')..position = models.CharField(max_length=30)..company = models.CharField(max_length=30)..fromtime = models.DateField()..totime = models.DateField()..description = models.TextField()
>>795805попробуй что-то типа:admin.pyfrom .models import *from django.contrib import adminclass PersonAdmin(admin.ModelAdmin): passadmin.site.register(Person, PersonAdmin)class ExperienceAdmin(admin.ModelAdmin): passadmin.site.register(Experience, ExperienceAdmin)
>>795812отступы перед pass нужны
>>795812>>795814Сделал, по прежнему вбивать предлагает и юзера вместе с экспириенсом
>>795820Я что-то понять не могу, что конкретно у тебя не работает?
>>795823У него две модели отображаются на одной странице в админке. Ему нужно, чтобы отображалась только Experience.
>>795823На данный момент оно предлагает заполнять Experience вместе с Person
>>795827На гитхабе есть?
>>795831Нету, только оффлайн.Вбросить и на гитхаб?
>>795834Давай, на сосаче не удобно, пока есть время поковырять.
>>795836https://github.com/ohlookmommy/djnago-cv
>>795849Через пару минут займусь.
>>795850Хах) Вот твоя ошибкаclass Experience(Person):Вместоclass Experience(models.Model):Зачем ты указал родительский класс?
>>795862Вот блин. Действительно.Спасибо большое!
>>795866Еще мб с чем есть вопросы? Я тоже python/django в свободное время тыкаю.
>>795867Ну смотри что я ещё хочу в эту фигню запихнуть:Что бы объекты класса Person нельзя было создавать больше одного, дабы никого не смущать раз уж тут многопользовательность не нужна. Как выводить поля в админку у меня вроде бы есть где-то, думаю там разберусь.Далее буду маяться интернационализацией, экспортом в pdf и в итоге прикручу ещё и сраный бложик / форму обратной связи - пока не знаю какие у меня вопросы с этим возникнут.Было бы здорово у тебя попросить почту что бы иногда спрашивать какие-нибудь вопросы, но хз. Если есть желание - отпишись на mos@openmailbox.org
>>795871Отписался
Почему в Пайтоне такой красивый синтаксис, такая хорошая стандартная библиотека и такая уёбищная реализация?
>>795896А где лучше?
Ребята, мамкин ксакеп снова в треде, взгляните пожалуста на скелет проги, о которой говорил в этом >>795204 посте.Если совсем на пальцах, запускается демон, ждущий сообщений в очереди -> запускается пул процессов сканирующих список подсетей и пуляющих результат в очередь -> в очередь пуляется флаг завершения сканирования -> хэппи-энд.Правильно ли я понял логику работы queue и pool, в верном ли направлении иду? inb4 Не в верном, тебе нахуй.https://ideone.com/lJoXjn
>>795896>>795897Сосачую вопрос.
>>795897
>>795924Теплое с мягким не сравнивай.
Если у меня есть программа-демон, которая собирает и пишет данные в базу данных, как мне из другой программы организовать с ней общение?
>>795930Просто суть в том, что база данных - это кеш, и у запрашивающей программы есть критерий, по которому можно определить, что данные в кеше устарели и их надо обновить.
>>795931Хотя можно просто программой забирать данные из кеша, и если они старые - скачать новые. Но вопрос - что делать, если вдруг и программа, и демон будут одновременно писать в базу данных? sqlite3 если что.
>>795932>одновременно писать в базу данных>sqlite3ИМПОСИБРУ!
трендж из шапки умер, внесу сюда.Сап, Питонач.Работал долго аналитиком, а сейчас занимаюсь какой-то айтишной ерундой в одной большой компании. Устал себя превозмогать и хочу заново вкатиться в аналитика. Посерфил вакансии, в основном хотят знание героя этого треда и R. Не подскажешь, анон, где можно найти кучу больших данных для анализа? И было бы очень здорово узнать, есть ли тут те, кто занимается тем же и может подсказать неплохую либу для питона или какой-нибудь фрейворк для более детального и оптимизированного анализа.
Что надо учить проме Питона и Джанги? Хорошая ли идея: отложить Питон и изучить html+css, чтобы фриланчить?
>>796098Ты определись чем заниматься собрался фронтэндом или бэкэндом.
>>796112Мне нравится Питон, но я еще хотел бы красивости, кнопочки, и т.д. Думаю, сесть на два стула. Говорят, HTML и CSS не долго учить
>>796098Если больше склоняешься к бэкенду, то делай упор на питон и джангу. Но начальные знания hml, css, javascript, jquery, git будут очень полезны.Зайди на апворк, например, и посмотри какие скиллы нужны вдобавок к джанге. Часто попадаются проекты, где надо уметь что-то из вышеперечисленного + еще ссаный ангуляр жс.Ну и уметь разворачивать проект - AWS, heroku и всякое такое
>>795897Хаскель?
>>796123А что вообще за дроч пошел на JS фраемворки? Там зоопарк уже целый. jquery скоро все?
>>796150А я вот не знаю. Похоже, жаваскриптеры каждый день какой-то новый фреймворк выпускают.jquery наверное никуда не денется - не будешь ведь целый фреймворк юзать, если тебе надо всего-лишь DOM'ом поманипулировать или, например, аякс запросы попосылать.
>>795043Вот смотри, есть большой сайт. В нем куча функций. Внедряют новую фичу. На сайте может что-то поехать и поползти. У тебя есть вариант сесть и самому все проверить. На 60-ой кнопке ты уйдешь на двач и начнешь аутировать. Либо пишешь программу, она сама лезет на сайт и делает все тесты. Сама проходит регистрацию, заполняет формы, заливает картинки. То есть проверяет все функции сайта. После каждого теста она пишет отчет. Причем прогу нельзя делать на try except, как раз когда она крешнится - это будет показателем проблемы на сайте.
>>795478.фрилансить не удается, сразу на зарплату забирают работать в офисе.
Для тех кто сомневается насчет питона, почитайте комменты о новом С++ В питоне мы не знаем таких проблем https://habrahabr.ru/company/yandex/blog/304510/
>>796147Объявлена неделя хаскель или я что-то пропустил?
>>796243Она тут всегда. >>795896Двачую, вот в Brainfuck отличная реализация
>>796243Количество монад увеличилось в вашем коде увеличилось в двое.
Аноны, у меня скрипт и файл лежит в одной директорииВ коде написано:>fid = open(iris_proc.data,"r")>oid = open(iris_proc.data,"w")И еще>iris = np.loadtxt('iris_proc.data',delimiter=',')Ругается на последнюю строку, ошибка FileNotFoundError: [Errno 2] No such file or directory: "iris_proc.data"
На что питон тут ругается?Написано >np.random.shuffle(order)Но это со второго питона, чем в третьем заменить?
>>796335нампи разве уже на третьем есть?
>>796340Да хуй знает, почему Numpy не должно быть?
>>796341>>796335>>796317А все нормально, кстати, посоны, что у питона за хуйня, когда он начинает на рандомную правильную хуйню ругаться? То ему не нравится, как переменная инициализируется, то еще что-нибудь
>>796356Вот смотрите, что ему не нравится, блядь?>iris = iris[order,:]>SyntaxError: invalid syntaxЕму что, название переменной не нравится? Раньше он не ругался
>>796361Ему запятая не нравится, а выше у тебя iris_proc.data было без кавычек. Перестань в глаза ебаться и будет все ок. Добра тебе.
>>796364Нет, магия в том, что если поставить order как list>order = (list(range(np.shape(iris)[0])))То все норма, ебанутый питон
Пиздец, что делать, если у меня при написании кода на питоне получается все та же лапша и однострочники длиной в жизнь, как на цепепе или фортране?
Где найти хорошего человека, который будет со мной за идею делать один интересный проект?
>>796374Ну пиши одна функция на одно действие, и делов.Упорись литературой что бы подпривыкнуть, валом же годных книг по питону.Однострочники не нужны.>>796379Найдёшь - и мне им поделись. Я даже бабла отсыпать буду, правда в пределах 10-13 тыс руб в месяц.
>>796383Нужен какой-нибудь школьник без опыта, типа меня же.
>>796387Я бы мог, но согласился за 10-13к в месяц
>>796388Денег нет, но ты держись.
>>796388На еду хватит.
>>796392>>796390Не, поцоны, я на джанге кое-как пытаюсь выкручиваться на 20к, заказов нихуя нету, уже 3 месяц пытаюсь.
>>796379>>796387Если НУБЯРА подходит, то я мог бы попробовать помочь, на пистоне я уже года 3-4 пишу разные шкриптики, но не хватает мотивации заняться изучением в плотную. Проект в какой области?
>>796395Мне и Джанго надо. Ты можешь со мной бесплатно поработать. Потом правда твой модуль будет в реальном коммерческом проекте, а ты будешь ни с чем с опытом. А если серьезно, то где взять такого? Не будь у меня кучи дел, сам бы был рад такой возможности.
>>796397Оставь телеграм. Какой лвл?
>>796399Да я и в Numpy могу.Но за идею работать - извини, я на апворке заебался, у всех нормальных ребят по косарю долларов зарплаты, а у меня 300-350
>>796402Ты работаешь, тебе все это не интересно.
>>796403Да только 3 месяц же, может в течении года увеличится еще, а может и уменьшится.Деньги в любом случае нужны, мне интересны другие технологии в программировании, но там работы не найдешь, а если и найдешь, то даже до 300 баксов не дотянешь.Или требуют совсем гиков.
>>796400MrRakЯ так понял тебе по джанге нужно? ну я нихуя не делал на ней, опять же мотивации нет(, смотрел видосы, в принципе, наверно на день могу говноблог слепить. Но только если тебе нужен челик для СОВМЕСТНОЙ работы, а не делать самому для тебя.
>>796408лвл >25
>>796406А мне что посоветуешь? Самому пердолиться, наверно так и получится.
>>796411Да найми какого-нибудь дебила, вроде меня на фрилансе.Тебе что конкретно сделать то надо? Может это шаблонная хуета.
Я и забыл про фриланс.
30 мб для базы данных на sqlite - это нормально? Она не будет тупить-тормозить?
>>796374А если хочешь работать, то соблюдай PEP-8, никаких однострочников.
>>795741>>795714Разобрался, короче. Сначала я читаю хедер, потом вычленяю из него Content-Length, и если он больше нуля (или вообще есть) - то читаю соответственное количество байтов еще и поверх.
>>795897Да везде. JS работает быстрее в разы за счет V8, ванильная Lua тоже быстрее, а если LuaJIT - то вообще на порядки. Мне вообще сложно назвать современный язык программирования, который работал медленнее Пайтона в стандартной реализации.>>796250Вембрелейтед.
>>796444хули его соблюдать то блятьпучарм это говно из коробки делает
>>795990Поддвачну реквест
>>795990Kaggle же
>>795990>>796478> работал аналитиком> не знает, где взять данных
Вопрос по джанго:class User(models.Model):..name=models.CharField(...)class Result(models.Model):..user = models.ForeingKey(User, default=....)как мне ставить в Result default значение первого юзера?
>>796578DEFAULT_USER = 1class Result(models.Model):..user = models.ForeingKey(User, default=DEFAULT_USER)
>>796582А через что-нибудь типа User.objects.first ?Что бы не так костыльно
>>796465> JS работает быстрее в разы за счет V8, ванильная Lua тоже быстрее, а если LuaJIT - то вообще на порядки. Гугли pypy, pyston, cython.Вопрос только, нах тебе скорость в питоне?Я иногда специально делаю способом который работает чуть медленнее, но легче читается/воспринимается, и мне срать на проигрыш в доли секунд.
>>796587Ну так попробуй:def get_first():....return User.objects.first()class Result(models.Model):..user = models.ForeingKey(User, default=get_first)
>>796591Спасибо
>>795043Обмазывать тестами все, что есть и в какой-нибудь ci системе запускать при деплое автоматически. Для веба selenium, для бекэнда какой-нибудь unittest
Хлопчики, а посоветуйте как сделать так, что бы в БД мог быть только один экземпляр класаНу вот class Userи надо что бы user был только один, что бы никто не впиздячил второгосоздать что-то типа: class OnlyOne(model.Model):..passclass User(model.Model):..onlyone = model.OneToOneField(OnlyOne) ?может чего есть более аккуратное?
Какой самый простой способ добавить многоязычность в джанго?
>>796629Просто запрети добавлять новых юзеров в админке.
>>796634Ну мне не юзеры нужны, а свой класс. Как для своего класса запретить?
>>796633Стандартные возможности: https://docs.djangoproject.com/ja/1.9/topics/i18n/translation/Помечаешь в коде и шаблонах все строки, которые нужно перевести. Генерируешь для этих строк файлы перевода на нужные языки. Переводишь. Готово!Для того, чтобы рулить переводами есть удобное приложение http://django-rosetta.readthedocs.io/en/latest/Если нужна возможность добавлять контент в админке на нескольких языках, то для этого есть годное приложение http://django-modeltranslation.readthedocs.io/en/latest/
>>796629можно попытаться делать так, как этот чувак советует: http://stackoverflow.com/questions/2106823/limit-a-single-record-in-model-for-django-app/8094563#8094563
>>796651An easy way is to use the setting's name as the primary key in the settings table. There can't be more of one record with the same primary key, so that will allow both Django and the database to guarantee integrity.честно тебе скажу - прочитал уже раз 10 и так и не понял что он имеет ввиду
>>796643Большое спасибо тебе
>>796701я не про тот ответ, который отмечен правильным, а про тот, что ниже. добавить has_add_permission, в которой проверять кол-во обектов в таблице. Если больше 0, то запрещать добавление. Должно сработатьclass MyModel(models.Model):....onefield = models.CharField('The field', max_length=100)class MyModelAdmin(admin.ModelAdmin):....def has_add_permission(self, request):....# if there's already an entry, do not allow adding........count = MyModel.objects.all().count()........if count == 0:............return True........return False
>>796705>has_add_permissionоно джанговский метод встроенный какой-то, или его и в админку как-то нужно будет пихать хитро?
>>796706джанговский https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#django.contrib.admin.ModelAdmin.has_add_permission
>>796709ага, вот теперь понялСпасибо огромное!
>>796710И да, вместо MyModel.objects.all().count() наверное можно MyModel.objects.count() - all() тут не нужен.
Как сократить этот код http://pastebin.com/QrDYSy3Z в пистон вее? Это два метода класса, различие по сути в одной строчке. Я мог бы распихать все что до и все что после в две разные функции, но я что-то слышал про декораторы, хотя и не понимаю, как их сюда прихуячить.
>>796757Пока переделал так:http://pastebin.com/AuQZmbAi
Аноны, помогите разобраться с этим ебучим цикломЧто он делает?>for i in range(lastPoint): > inputs[i,:] = PNoz[i:i+tk:t,2]> targets = PNoz[i+t(k+1),2]Я понимаю, что он повторяет все столько раз, сколько у нас значение lastPoint, я знаю, что обозначает и t и kНо чему конкретно будет равно inputs и targets?
>>796777И да, PNoz - это массив с 4 столбцами и 2855 рядами, он был объявлен до этого
>>796777>inputs[i,:]А это было объявлено, как >inputs = np.zeros((lastPoint,k))>targets = np.zeros((lastPoint,1))Перед циклом
>>796757Через контект менеджер удобнее всего. Можно любой блок кода обернуть. Можно через декоратор, но тогда ты только функции так оборачивать сможешь.http://pastebin.com/sf1Pryds
>>796789Как же заебись, спасибо!
Может кому пригодиться
>>796796в чем наебалово?
>>796796>пригодитьсяПошёл нахуй отсюда.
>>796796эх, жалко у меня резюме нет
>>796802Не вижу наебалова.>>796804Извини>>796807Просто напиши им, сказали же нубов берут. Собеседование пройдешь где тебя спросят что такое with и что означает http 403 по скайпу.
Питон теперь лисп!
>>796823> по скайпуоу. у меня, на самом деле, еще и разговорный английский никакой.а вообще, вакансия конечно интересная. может и напишу им. спасибо.
>>796784>>796777Аноны, так что значит эта хуйня?> inputs[i,:] = PNoz[i:i+tk:t,2]Никак не могу вникнуть, мы в i строк массива добавляем значение PNoz?Но в PNoz 2855 элементов, а в i максимальное значение будет 2847
>>796837я в numpy не секу, но предположу, что:Мы пишем в i-ую строку массива index. i:i+tk:t - это вроде бы indexing. i - начальный индекс i+tk - конечныйt - шаг. Вот с офсайта пример:>>> x = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])>>> x[1:7:2]array([1, 3, 5])То есть, мы берем второй столбец массива PNoz и добавляем из него элементы (не все) в массив inputsinputs = np.zeros((lastPoint,k)) и targets = np.zeros((lastPoint,1)) - массивы с нулями. в первом lastPoint строк и k столбцов, во втором - 1 столбец.А ты запускал этот код вообще? Напихай туда принтов и посмотри, что происходит. Только возьми массив PNoz поменьше.
>>796860>Мы пишем в i-ую строку массива index.Массива inputs, конечно же. опечатался
>>796860Да это ебучая наркомания, запускал>print (PNoz[0:0+tk:t,2])>print (PNoz[2846:2846+tk:t,2]) Равны первому и последнему элементу inputsЭто на самом деле прогнозирование, где t - насколько далеки точки друг от друга Равно 2 и сколько точек нам надо k = 3
Кто там говорил, что на петоне лучше всего программировать, сидя на линуксе? Это же полный пиздец. У Убунты из коробки идет 3.4, а красноглазики в один голос вопят, что обновлять очень нежелательно, ведь распидорасит какие-то системные функции.Но тогда вопрос - как, блядь, не просто установить 3.5, но и прикрутить pip к консоли? Всяческие выкрутасы типа pip3 упорно ссылаются на 3.4.После удобств винды все это выглядит жесточайшим пердолингом. python3.5 -m pip install modulename - слишком длинно. Не говоря уже о дополнительных сношениях, чтобы запускать скрипты именно через 3.5
>>796897>слишком длинноалиасы
>>796897есть гента, ты можешь установить сколь твоей душе угодно версий питона, удачи.
>>796901А как там решается проблема, какая версия дефолтная? В винде достаточно поставить цифру в PY_PYTHON.
>>796897> как, блядь, не просто установить 3.5pyenv> python3.5 -m pip install modulename - слишком длинноОй, иди нахуй.
Как на винде установить PyLab? Numpy установлен
>>796904>Ой, иди нахуй.Только посмотрите, адепту python way НЕПРИЯТНА, что кто-то предпочитает писать вполовину меньше букв, если это возможно.
>>796897Используй virtualenv. Мжно создать окружение с той версией интерпретатора питона, какой захочешь. Плюс, не засираешь систему своими пакетами голобально. Можешь насоздавать окружений для разных проектов с разными версиями питона и разными версиями одного и тех же пакетов, например и все у тебя будет заебись.
>>796638Просто сделай расширению модель юзера.
Сосач, выручай. Пишу скрипт, скачивающий музыку из вк, если ее нет в заданной директории. Все работает, но только с английскими треками. Как заставить python сохранить русское название? file = open('кирилица','wb') - выбивает ошибку
Сосач, выручай. Пишу скрипт, скачивающий музыку из вк, если ее нет в заданной директории. Все работает, но только с английскими треками. Как заставить python сохранить русское название?file = open('кирилица','wb') - выбивает ошибку
>>796967>>796968>>796969Сука, извиняюсь.
>>796967Ты дурак или куда? Как ты добрался до взаимодействия с api, но про ебаный encoding = utf-8 не знаешь?text_file = open("analize.txt", "w",encoding='utf-8')
>>796969Кодировку в начале скрипта прописывал? Используешь API или скрапаешь?
>>796976А, я твой вопрос не так понял. С кириллицей питон вообще не дружит, у меня была учетка на кириллице, из-за этого у меня ни одна команда через коншоль не работала, в PATH мое имя отображалась, как сломавшаяся кодировка.
>>796897В 16.04 питон 3.5 из коробки.
>>796976Это бинарный файл, с ним такое не прокатывает.ValueError: binary mode doesn't take an encoding argument>>796977API, не прописывал, потом поставил utf-8 и не помогло
Анон, а в чем ты работаешь с Питоном/Джангой?Если есть юзеры vim'а, то скиньте мастхэв аддонов.начинающийвимоблядок
>>797128кстати удвою реквестот себя порекомендовать могу разве что в http://vimgolf.com/ погонять и a byte of vim
>>797128sublime text 3Стоит юзать только его, не гонись за крутостью мужиков, работающих в пердольке. Они так с 90-х привыкли.
>>796967Версия пейсона?
>>796911Пердёжь в лужьу
>>796911Ну всё просто - пиши как тебе нравится, конечно, раз живём. Но будь готов нести ответственность за свой выбор, например когда вакансию отдадут другому более понятному кандидату.
>>797174Угу, прям посмотрят на мой комп и как я там удобно все под себя настраиваю - и сразу отдадут. Иди нахуй, пердолик.
>>796825почему ? одна анониманая функция в другой и все.
>>797232Он про (лямбда..)
>>797225Ты дибил? Это специально зделали чтобы не зависеть от системных алиасов, это благо, нахуй.
>>797256То есть, я не должен избавить себя от повышенной вероятности опечаток и 100500 ввода одного и того же текста, потому что это жестко вшитый костыль, изменение которого пидорасит все, ты хотел сказать?Нахуя мне 3.4, если мне нужен только 3.5? Какого хуя я вообще должен зависеть от ненужного 3.4?
>>797266Это уже не говоря о том, что я должен помнить, какая именно версия 3 питона мне нужна, ибо если напишу по привычке и таториалам или просто забуду - все улетит в нахуй не нужный 3.4.
>>797266Да сделай себе блядский алиас и перестань ныть.
>>797266Просто ты макака и не можешь автоматизировать установку нужной версии пифона и нужных библиотек.3.4 нужен системным утилитам, дибил, они на них завязаны. 3.4 нужен если гвида решит 3.5 зделать обратно несовместимым.>>797269Конечно должен, блядь. Ты же когда в си пишешь указываешь стандарт компилятору.
>>797270>перестань нытьЧСВшному говну не нравится, что его маняфантазии оспаривают.
>>797277Еще раз говорю, мне похуй, что там нужно системе. Мне - не нужен. Я им пользоваться не собираюсь.
>>797282Ну, ясно, соси тогда. Всё просто.
>>7971623.4
>>797135двачую, тоже перекатываюсь на vim. Правда хз, как им можно нормально пользоваться на обычный de, вот в тайловых - да, я могу понять.
Ссылочка по настройке Vim для Django https://code.djangoproject.com/wiki/UsingVimWithDjangoСсылочка на всеми любимое исчерпывающе подробное https://www.fullstackpython.com/vim.htmlдрисня на хабре непроверенной полезности:https://habrahabr.ru/post/224979/https://habrahabr.ru/post/196550/Просто о vim книжечка на 70 страницhttp://rus-linux.net/MyLDP/BOOKS/Vim/prosto-o-vim.pdf>>797372так же как и в тайловых. смысл то мышь реже тягать.
Судари, такая вот хуйня:Нахожусь в командировке, есть ноутбук Lenovo E31-70 новый, но дерьмовыйЛюбимое Ubuntu я на него накатил конечно, но Chromium 10-15 вкладок + Pycharm дают практически всегда гарантированне слайд-шоу.Вариантов собственно два: 1. накатить ещё ram / ssd но это платно2. или заменить чем-то pycharm или cromium менее прожорливым. Вот пока меня не окончательно доебало всё до варианта 1, хочу попробовать 2.И так, чем заменить хромиум менее прожорливым? Может и вместо pycharm'а чего появилось с удобным автокомплитом/подсказочками и без java-машины? inb4 emacs
>>797385Лол, собери себе арч+i3wm, которой будет кушать 100 метров на старте и не имей проблем.
>>797388Собрать-то не проблема, но этим же ещё пользоваться потом надо
>>797388Я сам не то что бы гуру линуксов, или питона, или ещё чего-угодно. Убунту я люблю за то что вбиваю возникший вопрос в гугл и 100% получу нужный ответ. С арчем дебианом и тд всё сложнее
>>797391Можешь хотя бы ради интереса попробовать, мне лично намного удобнее. Смысл в том, чтобы слезть с unity, он жрет очень много. Хотя бы на xubuntu перекатись.
>>797394а, так я и так на xfce сижу
>>797391На самом деле у арча очень хорошая вики.Использую арч+i3wm. Кушает на старте немного, но хром реально прожорливый - 4 Гб ОЗУ не хватает. Но альтернатив не вижу.В качестве редактора - Sublime text 3 жрет уж точно поменьше, чем pycharm
>>797396А чем Сублайм обмазать для автокомплитов удобных и может быть поиску по встроенной/вписанной в py-файлы документации?
>>797395Ну все, дальше только тайл и минимальный сборки. На самом деле арч не сложный, обожаю pacman - лучшее пакетный менеджер.Pycharm обязательный атрибут? Sumbile или vim будут намного выгоднее в плане прожорливости.
>>797397я автокомплитом не пользуюсь, но вроде есть пакеты. вот тут глянь https://realpython.com/blog/python/setting-up-sublime-text-3-for-full-stack-python-development/#customizing-sublime-text-3
Двачую. Установил арч и забыл про него. Работает хорошо, пакеты всегда свежие.
http://www.openvim.com/потешное хоть и слишком быстрое для меня-аутиста
>>797396>>797398Ну может попробую как-нибудь.Я чуть ссу какие-то манипуляции с компом делать сейчас - комп то один, а ежели флешка загрузочная запишется с ошибкой я понятия не имею где мне её переписывать.Да я давно хотел угореть по vim и i3, задротства во мне должно хватить - в конце-концов мои любимые игры это DF и Cataclysm DDA, так что как мне кажется и к таким вещам как полностью ручное управление я предрасположен.>>797403Стесняюсь спросить ты помнишь все приблуды джанго наизусть? Просто мне без предложений после точечки класса / объекта и тд и подсветки сверху что писать в скобочках будет как-то очень грустно и гуглить заебусь.Но спасибо большое, ребята
>>797438>помнишь все приблуды джанго наизусть?Ну, помню то, что чаще всего иcпользую. А если что-то забыл, то лезу в документацию. Помнить всё наизусть - это же пиздануться можно! Да и не нужно.
ищу работу джуном. готов много работать. vk/cayley
>>797459В чем вообще смысл брать на работу джуна? Так ли велика от него выгода?
>>797467Можно слепить из него нормального работника.
>>797470Но что мешает найти нормального работника из коробки?К тому же, как это относится к удаленке?
>>796464>>795714>>795005 (OP)Короче, я дописал роутинг и выложил свой фреймворк с типа асинхронным веб-сервером на гитхаб. Обосрите меня немного, что ли, или подскажите чего годного:https://github.com/SweetPalma/Perver
>>797472любой работе обучают на работе. они не берутся из ниоткуда.
Сап зеканы! Есть ли какое-нибудь нормальное dependency management в питоне? Я имею ввиду per-project, как в rust'e есть карго, в джаве мавен, в похапэ композер. А в питоне только pip который устанавливает все глобально, зашквар же.
>>797486virtualenv + pip
>>7974761. Перепиши ридми. Много лишнего говна. Сделай как у всех Features/Reasons/Installation/Usage/etc. А не как сейчас — набор охуительных историй.2. > from hashlib import sha1 as hashНахуя это as hash? hash — это зарезервированное имя в builtins https://docs.python.org/3/library/functions.html?highlight=hash#hashТакже как и map3. pep8. 4 пробела, нахуя 8?! Нахуя две строки между методами класса?4. Нахуя столько бесполезных комментариев?5. Делать новый фреймворк и использовать @asyncio.coroutine и yield from полное говноедство. Делай сразу async/await/async with/async for, покажи что ты модный.6. > path = path.endswith('/') and path[:-1] or path> error_text = number in error and error[number] or 'Unknown Error'Избегай подобного говна как бы соблазн не был велик.7. Вместо except: break делай with contextlib.suppress(Exception).8. > log.error(format_exc())log.exception("text")9. > def route(self, path):> def callback(func):Да ты охуел?! Кичишься асинхронным сервером и не даёшь пользователю асинхронности. Какие, нахуй, коллбеки, используй async def и чтобы у пользователя была асинхронная функция.10. В декоратора должно быть functools.wraps(f) чтобы метаданные не проебались.11. > os.system('pause')$ pausepause: command not found12. > del handlerНахуя? Пусть сборщик ебётся.13. https://github.com/SweetPalma/Perver/blob/master/perver.py#L551Нахуя return?Короче, говно полное.
>>797476Бля, да ты ещё сам себе звезду поставил.
Хлопчики, конечно офтоп ещё какой но блин мне больше не с кем поделиться радостью.На сраном lenovo e31-70 втулил i3wm и пичарм с хромом залетали простоМне конечно неудобно пок а, но блин ни озу ни покупать, ни ссд ставить - ничего не надо. Я так понимаю косячность основная была в дровах видеокарты от интел, для которой собственно дров и не было как-то
>>797433Бля, ну и говнище.
>>797585Хорошо, сейчас гляну.
>>797594Красава. К i3wm привыкнешь, я думаю. Я теперь когда пытаюсь вернуться на какое-нибудь DE, просто охуеваю от того, как все медленно и/или неудобно.
>>797594Я все никак не могу привыкнуть к пичарму. Несмотря на х64, 8 гиг оперативы и i5 - эта штука просто нереально тормозит на старте, открывается несколько минут, что очень бесит. Быстрее отрыть стандартный Idle и поправить что надо.
>>797591И? Если хочешь, можешь исправить это недоразумение - и влепить свою звёздочку вместо моей.>>797585> Да ты охуел?! Кичишься асинхронным сервером и не даёшь пользователю асинхронности. Какие, нахуй, коллбеки, используй async def и чтобы у пользователя была асинхронная функция.Самое обидное - есть там асинхронность, только что проверил через asyncio.sleep, просто в корутину оно заворачивается только в respond_script. Впрочем, переписал для наглядности.> Делать новый фреймворк и использовать @asyncio.coroutine и yield from полное говноедство. Делай сразу async/await/async with/async for, покажи что ты модный.Опять же таки - нахуя? Кому показывать-то, ёпта? Пусть лучше будет обратная совместимость с 3.4, чем ГРОБ ГРОБ КОВОРКИНГ СМУЗИ с новыми ненужными операторами.> Перепиши ридми. Много лишнего говна. Сделай как у всех Features/Reasons/Installation/Usage/etc.Ты о чем вообще? У меня в ридми только это и есть. А если ты о референсе, то примеры из него я убирать не буду, может, их лучше в отдельный файл вынести?> pep8. 4 пробела, нахуя 8У меня там вообще табуляция, я не ебу как средство просмотра гитхаба их отображает.Остальное исправил, спасибо.
Поясните за обработку ошибок при работе с интернетом.Вот допустим у меня есть скрипт, который отправляет разные запросы к разным ресурсам в интернете. Но интернет такая штука, что что-то может пойти не так и ресурс окажется недоступен, значит всегда нужно планировать обработку ошибок. Я не хочу размазывать конструкции try exception по всему коду и пишу функцию, через которую проходят все запросы и в которой есть обработчит ошибок. И вот тут начинается засада, поскольку в зависимости от запрашиваемого ресурса ошибка может быть как критической для работы скрипта, так и несущественной. Получается решение обрабатывать все ошибки в одной функции было неверным? Для примера, скрипт заходит на страницу с ссылками на закачку, собирает ссылки, переходит по каждой из ссылок, собирает информацию о файле, качает файл. Если какой-то файл будет недоступен, то его можно пропустить. Если страница с ссылками недоступна, то нужно остановить скрипт. Если вместо страницы с инфой о файле появилась заглушка, то нужно перейти к следующему файлу, а не пытаться собирать инфу и качать файл. Как-то так.
>>797675> и влепить свою звёздочку вместо моейУволь.> совместимость с 3.4> с новыми ненужными операторамиКому нужна совместимость с 3.4? Это же не 2.7. 3.4 прошла и её забыли.> Ты о чем вообще?Я об этом например>Download this into your working directory. Dont forget, you need Python 3.4 or newer. Done, you're ready to go.> P.S. If your browser doesn't download it, simply displaying a text file - press on that link with right mouse button and choose "Save As".> У меня там вообще табуляцияНу, тогда вообще пиздец. Сжечь нахуй.
>>797686И операторы ненужные, вооще охуеть. Это, блядь, грааль по сравнению с yield from.
>>797686> Уволь.Как хочешь.> Ну, тогда вообще пиздец. Сжечь нахуй. Пэпом не запрещено, проект изначально задумывался с табуляцией.> Кому нужна совместимость с 3.4? Это же не 2.7. 3.4 прошла и её забыли.> И операторы ненужные, вооще охуеть. Это, блядь, грааль по сравнению с yield from. Может ты и прав касательно этого. Подумаю на досуге.> Я об этом например>>Download this into your working directory. Dont forget, you need Python 3.4 or newer. Done, you're ready to go.>> P.S. If your browser doesn't download it, simply displaying a text file - press on that link with right mouse button and choose "Save As".Придирка ради придирки. Если в reStructuredText можно было бы дать ссылку с атрибутом "download" - я бы так и сделал, а так - извиняй, что потревожил твои эстетические чувства.
>>797702> Придирка ради придиркиВовсе нет. Напиши просто Grab yoba.py и всё.
>>797702> Пэпом не запрещеноОн вообще не запрещает ничего. Это рекомендации. https://www.python.org/dev/peps/pep-0008/#indentation
>>797709> Напиши просто Grab yoba.py и всё.Не совсем понял, что ты имеешь в виду.>>797714Конечно же, это рекомендации, но там так и сказано - лучше используйте четыре пробела вместо табов. Но если хотите табы и так изначально задумано - то пишите табами, только не смешивайте их с пробелами. Я так и делаю.
>>797717> Не совсем понял, что ты имеешь в виду.Вместо ссылок и инструкций как качать с гитхаба просто напиши. Grab yoba.py (где yoba.py файл с твоим фреймворком).
>>797717> Конечно же, это рекомендации, но там так и сказано - лучше используйте четыре пробела вместо табов. Но если хотите табы и так изначально задумано - то пишите табами, только не смешивайте их с пробелами. Я так и делаю.Где ты там такое прочитал?
>>797722https://www.python.org/dev/peps/pep-0008/#tabs-or-spaces
>>797722https://www.python.org/dev/peps/pep-0008/#tabs-or-spaces> Spaces are the preferred indentation method. > Tabs should be used solely to remain consistent with code that is already indented with tabs.Я вообще не понимаю любителей пробелов. Ширину отступов в табах можно настроить, в пробелах - нет.
>>797734Там же написано, что табы должны использоваться только в случаях, если уже есть код, который написан с табами. Если ты пишешь с нуля, то используй пробелы.
>>797745А мог бы код писать вместо устраивания вечного срача "Tabs VS Spaces".
Нужна красивая IDE. Что посоветуете?
>>797755А ты мог бы английский учить, чтобы понимать, что пишут.
>>797773Блять. Лучше pycharm ничего для питона не существует.
>>797796Она платная
Хелп! Как в PyCharm отключить всплывающие окна с подзкасками при написании кода?
Ну и как обновить этот pip
Вы тут спрашивали про хороший игровой 3D движок под питон. Оказывается давно есть это https://www.youtube.com/watch?v=CG4C7PZAqDQ
>>797773https://atom.io/
>>797684Может кто-нибудь все же ответит?
>>797684Стратегия.http://second-ext.inttrust.ru/Site/itforum.nsf/0/8f5cfcbd13982149c32571fd00322142/$FILE/DesignPatterns-01(V.Panov).pdf
>>797838На Sublime похож. Можно в нём скрывать рамку окна? типо с Названием файла и _х
>>797848да, можно
>>797847Что это за дерьмо? Утки какие-то, бжад! Чем это должно мне помочь?
>>797824Внизу же и написано
>>797878Не помогло. Та же фигня происходит
>>797797Есть community edition. И бесплатно на торрентах.
>>797883От администратора запускай, написано же.
Блин, ребята, я всё понимаю что и программёром быть лучше чем сварщиком, и питон выучить не семь пядей во лбу иметь надо, но блин начните тупо с английского языка. Базарю, обучение ускорит в десятки раз. Всего один сраный спикинг-клаб в неделю и какой-нибудь хендбук коих миллионы каждый день по пол часа.
>>797891Спасибо
>>797892Не завидую тем, кто хочет в кодинг без знания английского. У самого Intermediate с нятяжкой
>>797836Вот тут как скомпилировать игру в exe. Невероятно просто! https://www.youtube.com/watch?v=fkZclKubSfk
>>797892> пол часаТебе стоит начать с русского.
>>797933How about NI!?https://www.youtube.com/watch?v=lITBGjNEp08
>>797773sublime text 3 + плагины, все остальное конская хуйня
>>797957Это не иде.
>>797950А стоило бы.
>>798030Что тебе нужно от IDE, что невозможно в саблайме?
>>798038Я не >>797773, просто сделал замечание. В ide есть рефакторинг, мощные проверки кода, типа как в рантайме, интроспекция (или как там оно, когда пишешь yoba. и тебе вылезает подсказки с методами и свойствами).
>>797841тебе просто нужна функция get().держи! async def get(self, url, post_data, method='GET', connector=None): with (await self.semaphore): with aiohttp.Timeout(self.http_timeout): if connector: session = aiohttp.ClientSession(headers=self.headers, connector=connector) else: session = aiohttp.ClientSession(headers=self.headers) with session: try: data = None if method.lower() == 'get': response = await session.request('get', url) else: response = await session.request('post', url, data=post_data) if response: if response.status == 200: data = await response.read() await response.release() else: await response.release() raise RequestException(response.reason, response.status, '') return data except Exception as e: raise RequestException(repr(str(e)), None, traceback.format_exc())
>>797775Посыпаю голову пеплом. Прочитал indented как inteded, ты был прав, только сейчас заметил. Хотя табы на пробелы менять не буду всё равно.
>>798040Ради бога. Мощные проверки кода в питоне невозможны в принципе, рефакторинг есть, автодополнения и подсказки есть. Трассировка и профилировка возможны внутренними средствами питоне, приблуды к гиту тоже есть.
>>798044Спасибо, конечно. Но как-то малость монструозно, тем более что я использую либу requests, которя по идее занимается всей этой хуитой с сессиями и таймаутами под капотом. И питон у меня 2.7Моя проблема в том, что мой код у меня работает, но я сомневаюсь, что он будет работать всегда и везде, и я нихуя не зняю как повысить его надежнотсь и стоит ли этим заморачиваться.
>>798055все и везде будет работать, не ссы) функция get дает либо результат, либо исключение, исходя из этого ты реализуешь бизнес логику своего приложения. больше функция гет нихуя делать не должна.
>>798063зочем троллишь бр0
>>798064да я не троллю! просто проще надо делать, стремиться к атомарности архитектуры.
>>798068вот хороший образчик, достойный подражания:https://ru.wikipedia.org/wiki/%D0%A4%D0%B8%D0%BB%D0%BE%D1%81%D0%BE%D1%84%D0%B8%D1%8F_UNIX«Философия UNIX гласит:Пишите программы, которые делают что-то одно и делают это хорошо.
Есть кто шарит в asyncio? Нужен кеш который чистится по таймауту без тредиков. Что-то типа редиса с его expire.
>>798090https://github.com/aio-libs/aioredis??
>>798090ну, или сам можешь наподобие такого... http://pastebin.com/AGYBeLiE
Что за новое модное async и всякие with с ним, нахуя это нужно?
Что труЪ? сигналы или переопределение метода save?
Ребята, а вот делаю я в admin.py класс свойтуда пишу что-то типа:list_display = ['title', 'text']Ну оно мне разумеется весь текст и выдаёт прямо в админке на странице данной моделиКак бы мне сделать что бы выдавало например 500 символов? Можно конечно сделать метод типа def short_text(self):..return self.text[:500]или как-то так, и пихать в админку это тегомНо мне кажется может есть чего встроенное для этого?
>>798242Ну вот для шаблонов есть что-то типа{{ model.text|truncatewords:3 }}А для админики ничего такого нету?
>>798243Пиши метод в модель и пихай в list_display, все нормально.
>>798213https://docs.python.org/3/whatsnew/3.5.html
>>798244Спасибо!
Как добавить в админку свой фильтр?Фильтр уровня def not_published(self):..if not self.published_date:....return what?
Есть фласк и я хочу сделать сайт-одностраничку, где в формочку что-то вводишь, после сабмита под формочкой строятся какие-то таблицы с данными и введенные в поля формочки данные сохраняются. Как это реализуется? Пока у меня есть это: http://pastebin.com/gXg14QPh , где layout - это главная страничка и там внизу есть блок для контента. Сейчас у меня страничка перезагружается и все поля формочки сбрасываются. Было бы круто, если бы не только введеные данные оставались, но и страница не перезагружалась.
>>798261*а content расширяет layout
>>798251https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#django.contrib.admin.ModelAdmin.list_filterздесь есть пример, чуть ниже пролистни
>>798261без js не обойтись, создай новую вьюху с роутом например /ajax/, на странице по клику на сабмит собери данные формы и отправь аяксом на /ajax/, но не отправляй форму обычным способом.
>>798049Ну ты просто бунтарь. съебался нахуй отсюда
>>798050Ты не понял. Если я напишу свой Yoba класс, сделаю инстанс a = Yoba(a, b, c), а потом напишу в каком-то месте a., то в ide вылезет подсказка с методами класса и т.д. не думаю, что сублим так умеет.
>>798265Грустно, я пока с джаваскриптом не имел дело. Спасибо!
>>798275Anaconda может.
>>798276но иначе внатури никак, это следствие stateless природы интернет.
>>798280Анаконда? Это же пакетный менеджер. Я про редакторы/ide.
>>798283он наверное имел в виду плагин для саблайма http://damnwidget.github.io/anaconda/IDE/
>>798285Хм, наверное. Попробую https://atom.io/packages/autocomplete-python
Как в атоме убрать тайтл-бар? Типо эту штуку
>>798273> съебался нахуй отсюдаТы чё, охуел?
Как лучше записывать в логи и обрабатывать эксепшены, так http://pastebin.com/zEp3vNvQ или так http://pastebin.com/HLsrUnjG или есть какой-то более лучший вариант?
Как питон считывает данные с файла .txt? Можно сделать чтобы он счытвал и формировал например список?И можно ли сделать, чтобы считывал по ключу? То есть сделать из файлика .txt микро базу данных? Я вот придумал только перебор по строкам - мол если строка начинается с ключа, то дальше определенные данные идут.
Накатил плагин для запуска скриптов в Atom. Кириллица заменяется на знаки вопроса. Кодировка utf8. Хелп
>>798440https://ru.wikipedia.org/wiki/CSV
>>798440>Можно сделать чтобы он счытвал и формировал например список?>И можно ли сделать, чтобы считывал по ключу? То есть сделать из файлика .txt микро базу данных?Да запросто, язык же полный по тьюрингу, что хочешь то и делай. >Я вот придумал только перебор по строкам - мол если строка начинается с ключа, то дальше Ну так и надо, только я регэкспы использовал. Регэкспом разбираешь строку, находишь в каждой ключ и значение. Ну или если регэксп ничего не нашел, то выводишь ошибку.
>>798450спермопробелмы
>>798465На линухе не пробовал. Я пока не хочу осваивать пердолинг
>>798374так http://pastebin.com/CUGJnJ30
>>798480уебите ему!
>>798112Заебусь сериализовывать/десериализовывать. >>798131хуета какаето...сорри=(Нужно что-то типа этого http://pastebin.com/ub1pyhT0Тут редис юзается как внешний таймер что челик уже закончил свою сессию и пора подчищать память. Мне бы чтоб этот таймер был внутрях и не заебывать редис, и так сука нагружен.
>>798480Я хуй знаю, купи Rapsberry Pi и гоняй по ssh тогдаПитон без линукса и есть пердолинг
>>798486ну и в чем проблема то? сделай таймер.
name = open('ai_names.txt','r')name_list =[name.split(",")]Почему не работает?
>>798506про чтение забыл.Но вот при формировании листа сплитом, у меня еще в конце выскакивает "/n" от перехода на новую строку, ее как-то убрать можно?
А почему так нельзя сделать?name_list =(f.read).split(",")
>>798525Может потому что метод read не является строкой?
>>798440Может shelve?
>>798372Ебало своё закрыл, чтобы тебя не видно было.
>>798512file.read().splitlines()
>>798372>>798535Узпокойтесь
>>798530Но я же не к методу применяю сплит, а к тому что он возвращает.Вот так работает.name = f.read()name_list =name.split(",")
>>798569 >>798530Точно, скобочки забыл после read
>>798571А я уже хотел что-нибудь плохое про тебя написать.
Через консоль всё норм, а тут такая фигня
Парни, выручайте. Чайник, учу питон по книге Саммерфилда. На куске тестировании куска текста с релейтед1 наткнулся на релейтед2. ЧЯДНТ? Система - win10.
>>798596
Вопрос по ImagField Django:project/settings.py....MEDIA_URL = '/media/'MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')app/models.pyclass OmgImage(model.Model):..image = model.ImageField(upload_to='image/')app/templates/image.html<img src="media/{{ app.image }}" />Возвращает url картинки типа http://127.0.0.1:8000/media/image/file.jpg - т.е. совершенно правильную, file.jpg и лежит в /media/image/Но картинку не выводит, при попытке открыть изображение в новой вкладке выдаёт Page not found (404)Чего так? где я обосрался?
>>798622Блин, нинад. У меня коулрофобия =(
>>798612Поговаривают, что у ван на винде терминал говно. http://stackoverflow.com/a/14284404/5201699
>>798629у вас
напомните, как сделать так , чтобы в строке были заменяемые символы? "string string %d stirng" чтобы % заменялся на другое значение?
>>798627в урл паттернах вот так сделай: https://docs.djangoproject.com/en/1.9/howto/static-files/#serving-files-uploaded-by-a-user-during-developmentвозмжно, в этом проблема.
>>798631не уверен, что правильно тебя понял, но возможно так?'some {0} string'.format(s)
>>798629Свечку за тебя поставлю. Спасибо.
Может кто встречал, гайд по созданию бложика или другого говна на джанге, только не как обычно, две странички без нехуя, дальше сами гуглите, а полноценный сайт с всем что нужно, по сути готовый проект.
>>798635Да, оно!
>>798638django by exampleно ты охуеешь его читать если до этого опыта с джангой не имел особо
final_ai = final_ai + " " + "и" + " "Что можно использовать вместо уродливых " " пробелов ?
>>798658Зачем ты складываешь константные стринги?
>>798658final_ai = final_ai + " и "?
>>798659Почему константные, если переменные.>>798660Без пробелов следующие имена сольются просто.
>>798633спасибо большое, друг.сделал и ещё ебался, а всё почему? потому что блядь нахуй я проебался с MEDIA_URL = '/media/'MEDIA_ROOT = os.path.join(BASE_DIR, '/media/')сука главное ж в вопросе правильно написал а в проекте этот ебучий слеш.
>>798658>>798668Ты что-то делаешь неправильно. Что ты вообще сделать хочешь? Если у тебя есть список слов, то на нём можно сделать " и ".join(список), например.
>>798676и я не обратил внимание. по идее ведь слеши вообще не нужны. должно быть:MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
>>798686Да наверноеалсоу написал лисопедик что бы проще было деплоитьapp/urls.pyif settings.DEBUG:..urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
>>798688>if settings.DEBUG:Думаю, можешь убрать это, потому что эта функция и так работает только при DEBUG=True
Всё равно ебала какая-то с картинками этимипоказываются только если писать <img src="media/"{{ app.img }} />как при таком раскладе их скармливать в sorl-thumbnail типа:{% load thumbnail %}{% thumbnail app.img "350" as im %}..<img src="{{ im.url }}" />{% endthumbnail %}я не понимаю решительно
Есть одна функция класса, которая очень долго выполняется. Есть прога с фласком, один из роутов запускает функцию.Как из браузера запрашивать состояние работы функции (например атрибуты класса) во время её работы? Как запустить в фоне и дальше слушать клиента?Думал использовать для этого celery. Добавлять таск с функцией, но я всё так же не знаю как клиент может запросить что-то кроме ready().
>>798948Скорее всего тебе нужен AJAX.
помогите с задачей http://pastebin.com/cjMXDvFq
>>798964спасибо решил
Где можно посмотреть архивачи тредов?
Не могу допереть до того что от меня хотят в одном задании из книги ThinkPython, задача на пикретейлед. Вот код функции circlehttps://ideone.com/zRKxJhНа втором пикретейлед результат ее выполнения.Не могу догнать что за стековая диаграмма.
>>798839<img src="{{ app.img.url }}" /> так работает?>как при таком раскладе их скармливатьВроде бы у тебя все правильно там написано.Если {{ app.img }} передан в шаблон, то должно работать.Можешь еще попробовать сделать вот так:{% thumbnail app.img.url "350" as im %}
>>799025В том и беда что чего-то не хочет os.system.join'иться "media/" к app.imgapp.img дает путь image/file.jpg и без вот этой приставки медиа/ не показывает ничего понятное дело.
>>799014Стековая диаграмма - это когда ты сам вбиваешь себе значения и на каждом этапе выполнения скрипта замеряешь результатfor x in range(0,4):..x *= xСтековая диаграмма тут будет типа 1 - 12 - 43 - 94 - 16Можешь прямо графиком вместо черепашки рисовать, смысл всего этого что бы ты точно понял что программа делает в ту или иную единицу времени в том или ином куске кода
Ньюфаг вкатился. Есть задача - спарсить страницу. Страница представляет собой js-скрипт, в котором сначала задаются пустые массивы, а потом через .push заполняются словарями ключ-значение. Как раз данные из этих словарей и принадлежность их конкретному массиву мне и нужны, чтобы объеденить их (Слить нулевыые элементы каждого массива в один словарь и запихнуть в итоговый массив нулевым элементом, первые элементы слить и запихнуть в итоговый первым etc) С одной стороны можно конечно поебаться час с регулярками и выдрать нужные данные, но хотелось бы знать, есть ли более простые и надежные способы?
На убунте, запускаю скрипт через консольpython: can't open file 'test.py': [Errno 2] No such file or directoryКак пофиксить? PATH на винде, а тут как?
>>799032Ну я хз тогда. Проверь еще раз все пути, которые в настройках прописал.Еще {{ MEDIA_URL }} в шаблоне попробуй как-то использовать. Не забудь добавить строчку в context_processors в настройках, как сказано в документации: https://docs.djangoproject.com/en/1.9/ref/settings/#std:setting-MEDIA_URLЕсли ничего не получится, то выложи на гихаб или просто сюда архивом кинь я попытаюсь помочь.
>>799047Ты не в той папке. Проверь внимательнее.
Просто Кольт Питон passing by, неначто смотреть
>>799042Ладно, нашел про eval. Буду копать.
Аноны я мамкин неосилятор.Читаю щас марка лутца изучаем питон.Но пока что то я не очень усваиваю откуда узнать слова которые можно писать в коде.Если я пробую что то написать то все время сраный invalid syntax.Это нормально?Или просто стоит дойти до программирования? Я так понял что у меня вся хуйня в синтаксисе но я вроде его вкурил и понял.
>>799088Приведи конкретные примеры.
>>799091Ну допустим я хотел сделать этоrun hello.py пробовал также вот так run <hello.py>
>>799051А куда сохранять чтоб работало
>>799096Попробуй так:python hello.py
>>799062Будешь eval-ом js выполнять?
>>799133Вот это лол.
>>799101Пробовал это.Но я понял в чем трабл.У меня на андроиде интерпритатор для 2.0 питошки.Щас скачал для 3.0 заработало
>>799160Ты не мог бы писать в тредик о своих успехах? Меня заинтересовал твой подход.
>>799160>2.0Это уже пушка.
>>799160Ловите наркомана!
Как в командной строке убунту не указывать путь к скритку, а только писать имя? Типо python script.py
>>799192Попробуй добавить директорию, в которой находится скрипт, в переменную окружения PYTHONPATH.
>>799198Через PATH=$PATH: ?
Вопросы от нубаса по вебу.Вот я прикрутил к какой-то логике фласк, нарисовал страничку с wtforms, все вроде как работает (формочка принимает данные, страница перезагружается и рисуются таблички). Есть два НО - 1) мне таки хочется AJAX, чтобы страница не перезагружалась, а таблички достраивались снизу 2) мне нужна возможность обрабатывать больше одного запроса от разных клиентов параллельно, у фласка с этим беда, как я понял. Собственно, что делать? Я ведь правильно понимаю, что нужно послать нахуй все эти втформсы и фласки, установить какой-нибудь апач, сделать так, чтобы на запросы извне он показывал страничку с жаваскриптом, жаваскрипт передавал сообщения от клиента к логике через апач, потом логика передает сообщения через апач к жаваскрипту и он всё рисует? Или я что-то усложняю и можно как-то проще?
>>799223>мне таки хочется AJAXСделай AJAX>мне нужна возможность обрабатывать больше одного запроса от разных клиентов параллельноПросто используй вместо встроенного во Flask сервера нормальный WSGI сервер, который умеет в параллельные запросы. http://flask.pocoo.org/docs/0.11/deploying/
>>799234> Сделай AJAXПока не очень понимаю, как его дружить с фласком.
Напомните, аноны, какая версия питона используется в Kali Linux 2016.1?
>>799236Блядь, мне уже не нужен AJAX, всего-то нужно было почитать документацию втформс.
>>799040Спасибо за развернутый ответ, но ты был не прав. Гугление на русском ничего не давало, но за-то когда попробовал инглишь нашел кучу объяснений того что от меня хотели.http://www.openbookproject.net/thinkcs/python/english2e/ch03.html#stack-diagrams
>>799267Ну и что самое главное, под словом нарисовать - автор походу имел - нарисовать в графическом редакторе или рукой на листе. А не накодить нечто выводящее диаграмму(на данный момент в книге не давали знаний достаточных для такой задачи). Вот уж где искажение восприятия. Спустя сутки только допер что просьба нарисовать, не обязательно должна относится к программированию.
>>799273В самом задании же написано, что можно использовать функцию print.
>>799283И как с помощью функции принт вывести такую >>799267 диаграмму программы?
>>799289print('chant1 ---> {}'.format(chant1))И так все необходимые переменные.
>>799289Там дальше такое будет. Правда без цвета и красивостей а-------------| типо так |-------------
Как с питона на двач постить?
>>799324Смешное?
>>799325Просто текст. Теперь пытаюсь с помощью requests, но застрял на вытаскивание id капчи из json.
>>799325Хм, а это неплохая идея. Можно заделать нейросеть с базой шуток (1000 мемасов и 100 паст) и настроить автоматическую генерацию нового и сразу постить на двощ.
>>799329срать прямо на двач, wait oh shi~
>>799329Поздравляю, ты изобрел вайпалку.
>>799335Поясните мне почему str.join() некорректно работает?https://ideone.com/lUjVFzПри этом отличие проявляется только для строк из одного символа.https://ideone.com/UmiSL5Вот тут уже нормально всё
Запускаю прогу с помощью os.system она пишет в stdout строку. Как её сохранить?
>>799345Например переопределить stdout.
>>799348>.gaну уж нет, сладенький
>>799347как? покажи пример. К примера я делаю os.system('echo test'). Он выведет test в stdout. Как его теперь прочитать?
>>799353блин да python foo.py > python bar.py
>>799356и вот держи в догонку традиционный способhttp://www.saltycrane.com/blog/2009/10/how-capture-stdout-in-real-time-python/
>>799356Я в программу надо это вписать.
> https://2ch.hk/makaba/makaba.fcgi?board=pr&thread=795005&json=1&2chapthca_id=159ef9c614cdbd254a3c88db56a04eec95ed53c4db25ef088cb291873e577ee5&captcha_type=2chapthca&2chapthca_value=245041&task=post&comment=testДелаю вот так. Капчу каждый раз новую вожу. Но он всегда пишет {"message":"Нет прав доступа или вам нужно перелогинится","message_title":"Ошибка"} Что за хуйня? Как починить?
>>799375Порядок параетров имеет значение? Просто в программе я писал их не так.
>>799380> p = {'json':'1','task':'post','board':'pr','thread':'795005','comment':'test','captcha_type':'2chapthca','2chapthca_id':cap,'2chapthca_value':sol}> r = requests.post('https://2ch.hk/makaba/makaba.fcgi',params=p)Вот так пишу. А он не работает. Помогите.
>>799388Блять. Слово капча не так нписал. Теперь исправил, но он всё равно не равботает
>>799336str.join работает корректно.
>>799362> Я в программу надо это вписать
>>799440Мне. Но уже не надо. Разобрался без этого. Теперь у меня requests.post сломался.
>>799436То есть односимвольную строку оно не соединяет с разделителем никак и никогда?
>>799448> Return a string which is the concatenation of the strings in the iterable
test
>>799472аааблять получилось. ненавижу макаку меняет апи как только начинаются месячные. надо было posting.fcgi писать а не makaba.fcgi
>>799480А картинку как прикрепить?
Кек, таки смог высрать apk после сношений с pyqtdeploy. И какое счастье - это говно радостно крашнулось при запуске, толком даже не заработав. Огромный минус, я даже хз, в чем причина - logcat выдает какие-то коды ошибок и места, но они вообще не имеют отношения к моему коду. У меня есть целый 1 недопиленный таториал, который (какое совпадение!) тоже оканчивается до появление работоспособного приложения.И вряд ли вообще когда-то это будет пригодится для сборки apk - автор совершенно не заинтересован в Андроиде, это даже видно по тому, сколько лишней, ломающей компиляцию статических библиотек херни включается через pyqtdeplycli. Это не альтернатива buildozerу совершенно. Проблемы отладки совершенно не стоят результата. Документация раскрывает отношения с ведром чуть менее, чем никак, а спросить негде - никто ничего не знает, даже сам Phil.
>>799502А я тебе говорил.
И так, где хранить состояние воркера в фласке? То есть, есть два воркера, второй должен иметь доступ в любое время к состоянию первого. Как сделоть?
>>799481Бамп. Как в двач апи отравляьб картинки?
>>799542А впихнуть её впараметр image как? Это же картинку надо в строку превратить. Как?
Чо питон такой сложный? По-моему С++ намного проще. А тут они заклинания какие-то - тут пиши, там не пишит, тут скобка, там хуебка.
Как список с числами преобразовать в список со строками?
>>799561Попробуй map(str, [1,2,3])
>>799559Ахуеть. Получилось. Спасибо. Я думал в специальный параметр у двачапи нужно что-то вписать.
>>799557> С++ намного проще
>>799567list(map(str, [1,2,3])) если Python3>>799561или так:num_list = [1, 2, 3][str(x) for x in num_list]
Привет, программач.Нужно написать скрипт на втором пайтоне.Словарь почему-то сортируется по алфавиту.create_json = { "id": json_id, "number": json_number, "committer_name": json_committer_name, "committer_email": json_committer_email }print create_jsonПолучаем:{"committer_email": "grand.xavier@gmail.com", "committer_name": "Xavier Grand", "id": 17369213, "number": "9.3"}Как этого избежать?
>>799572>>796241
>>799621Элементы словаря не имеют порядка. Тебе нужно сортировать по ключам или их значениям?Делай create_json.keys() или create_json.values(). А к ним уже применяй .sort()
>>799621Или так. create_json.items().sort()
>>799704>create_json.items().sort()Хуйню спорол, к dictitems нельзя применить.
>>799708Но во втором петона .items() возвращает обычный словарь, к нему можно. В третьем нельзя.
>>799708import collectionsd = {2:3, 1:89, 4:5, 3:0}od = collections.OrderedDict(sorted(d.items()))
https://www.youtube.com/watch?v=Mme4SNh2BjM
>>799329А есть идея ещё гениальнее. Можно сделать свою борду, и для каждого раздела создать собственный скрипт с нейросетью, для каждой из которых подобрать подходящий разделу набор шаблонов. В итоге можно будет создать свой личный двач и аутировать в полном одиночестве.
>>799723Я серьезно подумываю над этим. Уже почти запилил себе скайп бота, с которым разговариваю. Лучше 99% собеседников. Лучше просто стены.
>>799324from 2ch import postfrom memes import ded_s_sobakoipost(ded_s_sobakoi())
>>799723А я вот думаю про нейросеть которая превращает любую пасту в пасту про срущего батю.
>>799696мне вообще никак сортировать не нужно. как раз в том и проблема, что оно автоматически отсортировало по алфавиту, хотя я этого нигде не указывал.
>>799835Зачем тебе словарь тогда? Храни список пар(tuple), например.
>>799836Немного жопой читал. Но тогда зачем тебе json с сохранением порядка?
>>799838Удобства ради. Если читать самому файл, то так намного удобнее и, при розростании словаря, логичнее.А вообще задание у меня по учёбе такое.А json в пайтоне всегда автоматически сортируется?
>>799840Да ничего там не сортируется. Словари не сохраняют порядок элементов.
>>799840>>799841Используй collections.OrderedDict, если прям печет.
>>799835Тебе просто повезло. Запусти еще раз - и порядок скорее всего будет иным. Да и не похуй ли - кто это увидит? Для вывода в нужном тебе порядке вставляй значения в шаблон строки. Или слеивай строку из кусков, между которыми значения из словаря.
>>799448Что ты там хочешь в односимвольной строке соединять? Разделитель ставится между элементами итерабла.
сап. у меня есть много байт-строк в базе со спец символами типа '\xe1'. я пытаюсь записать всё это в csv файл.получаю 'ascii' codec can't encode character u'\xe1', когда пытаюсь достать нужную строку из обьекта.проблема, похоже в том, что я не могу понять енкодинг/декодинг и что вообще происходит.https://ideone.com/jVbL04спец символы только в report.name
>>799937report.name.decode('utf8') что показывает?
>>799940>.decode('utf8')та же ошибка.
k = map(lambda x:str(x),n)Хули не работает?k получается не список, а ссылка на map объект по такому-то адресу
>>799954l = list(map...)
>>799954k = [str(x) for x in n]
ААААА ... помагите!unexpected EOF while parsingОшибка появилась после удаления нескольких последних строк кода. А если я в последней строки пишу print ("xx") то уже пишет, что инвалид синтаксист и показывает на этот принт.
>>799976Убрал функцию из print , ошибка исчезла.
>>799937дописал sys.setdefaultencoding('UTF8')и всё норм теперь
В питоне есть решение для встраиваемых sql баз (sqlite). Есть решение для встраиваемых hash-value хранилищ (shelve). А есть ли для документных/json баз? С поиском по значениям полей, ну вы понели.
>>800016Поищи по слову embeddedМожешь заодно тут глянуть http://nosql-database.org/
>>800016Если ты няшный, то pyejdb. А так pylucene.
Змеены, у меня вопрос не по питону, а по алгоритмам.Я тут понял, что нужно почитать что-то по алгоритмам. Какую книгу лучше всего прочитать (выбирал, чтобы без матана):1.Лафоре (объясняется на примерах с Явой)2.Кормен.Введение в алгоритмыУ лафоре вроде бы понятнее (я так глянул по страничкам, нормально разжевано), но там яваговно. У Кормена все на примерах псевдокода и нельзя потыкать палочкой аплеты, которые показывают сортировки и т.д. На какой стул садиться?
>>800148по твоему пистону можешь это глянутьhttp://interactivepython.org/runestone/static/pythonds/index.html
хлопчики, а как мне форму вставить в хтмл? я что-то всё забылapp/models.pyclass Feedback(models.Model):..name = models.CharField(max_length=250)..email = models.EmailField(max_length=250)..message = models.TextField(blank=True)..added = models.DateTimeField(auto_now_add=True)app/views.pydef index(request):..template = loader.get_template('index.html')..form = FeedbackForm()..context = {....'person': Person.objects.first(),....'feedback': ???? ..}..return HttpResponse(template.render(context, request))templates/index.html<div><form method="post">..{{ form.as_p }}..{% csrf_token %}.. <button type="submit">Save</button></form></div>
>>800153на русском наhttp://aliev.me/runestone
>>799557карина.СЛОЖНА.txt
>>799728from 2ch import postfrom universal_answers import lolpost(lol)
>>800163>>800153Кайф имею, спасибо большое.
Ононы, реально ли мне сделать совсем приватную пееменную в классе, или для таких целей придется писать модуль на c++?
>>800229Как будто в C++ что-то по другом, лол.
Ребят я начинающий программист, начал вашего обуздывать вашего ужа. Только я до сих пор не понимаю что в конечным итоге я должен с ним делать? Какие задачи выполнять? Куда я иду?
>>800280А нахуй ты тогда ужа мучаешь, если не знаешь?
>>800312мне нравится складывать циферки
>>800229Зачем тебе совсем приватная, если сорцы все доступны?честным людям нечего скрывать
Пишу оболочку для скрипта, которым пользуются из командной строки. как его корректно запустить с аргументами из своего модуля?
Посоны, а правда, что этот тред читают даже в НАСА?
>>800395правда
>>800386Даже уточню. Нужно запускать этот скрипт в параллельном от гуи процессе\треде и получать его вывод.
>>800386>>800416При этом в итоге должна быть собранная через cx_freeze программа. Если я буду запускать этот скрипт через subprocess и ловить вывод - как заставить его запускаться от фризнутого питона?
>>800477Уточню - этот скрипт тоже на питоне.Привычка так и тянет сделать через treading и не ебать себе мозг, но может есть лучшая альтернатива?
>>800484хуй знает че ты хочешь, но гугли click - делать слишные проги самое оноhttps://www.youtube.com/watch?v=kNke39OZ2k0
Итак аноны помогите аутисту-дцпешнику: Где можно найти обучающие уроки/статьи где всё рассказано для аутистов и показано на примере, желательно для 3.х.х версии. Сейчас штудирую http://aliev.me/runestone/ , но чёт сложно про функции рассказано.Опыт в погромирование только школьный курс паскаля за 9 класс и курс в технаре с qbasik.
>>800715Ну охуеть вообще, я где-то написал, что хочу сделать command line apзlication?Наоборот, GUI к ней.
>>800744я тебе как дцпэ дэцэпэ расскажу, вопервых: если ты на винде, у тебя 2 хода: 1) ставить луникс на вирт машину. 2) сносить венду и ставить лунус. давай быть последовательными? сначала выполни сий весьма важный шаг, как только ты решишься, я расскажу как быть дальше. давай, жду.
>>800765Продолжай, пока усё качается
>>800765>1) ставить луникс на вирт машину. 2) сносить венду и ставить лунус.>давай быть последовательными? сначала выполни сий весьма важный шаг, как только ты решишься, я расскажу как быть дальше. давай, жду.Ему это нигде не пригодится, кроме специфических штук, до которых как до луны пешком. Что это даст?
>>800773как только ты окажешься в миру *nix, тебе придется уяснить что: 1) все есть файл, 2) любая программа пишется так, что бы могла быть пересипользована, 3) у программ должен быть простой интерфейс взаимодействия - текстовый.и так, интерпретатор python - программа и она удовлетворяет всем трем, вышеозначенным принципам.
>>800775это ему пригодится прямо сейчас, хотя бы для того, что бы не задавать подобных - 95% вопросов этого треда.
>>800786Но учитывая что я пользовался только виндой ( даже лопаты на андройде нет), то будет гомоебля с вопросами как этим всем пользоватся
>>800786Вот за что я люблю все эти видеоуроки, курсы на кодакадемиях и тд - их объяснения еще хуже, чем "любая программа пишется так, что бы могла быть пересипользована". Он даже про функции не понял еще.
>>800792Забей хуй на системные вопросы, возьми лучше хорошую книжку типа "Изучаем питон" М. Лутца. Все, что надо - тебе покажут там с примерами, и не один раз. Особенно, если ты никуда не торопишься. Фундаментальные вопросы уровня "что происходит, когда я импортирую модуль" и всякие хитрые штуки типа генераторов тебе не расскажут в видеоуроках или на бордах. А проходя краткие курсы - ты про них рискуешь вообще никогда не узнать, изобретая велосипеды.
>>800792там не все так сложно, ос - программа, по любой массово - используемой программе есть куча документации. сейчас главное запустить терминал посредством ssh на установленной убунте. прозреваю что ты будешь использовать virtualbox, поэтому пиши в гугл "ubuntu on virtualbox"
>>800793Ну я print, типы памяти и операторы ( всякие + - == !==) понял пока.Так чё делать ёбана, как начинать?>>800799Спасибо, почитаю
>>800792Куча документации еще не значит, что он будет понимать, как это все склеивать в нечто работоспособное. Нужно, чтобы в голове была куча вариантов, как это применить. Взвесить все за и против того или иного варианта. Да даже найти ебанутое, велосипедное, но рабочее решение для проблемы, где гугол ничего не дал.
Ну ахуеть теперь
>>800805теперь из кожи вон лези, но установи ssh сессию из винды до убунты, для этого тебе нужен putty - виндовый ssh клиент
>>800808это похуй, забей вообще на виртуалбкс. коннекться по ссх
>>800811Так эту бубонную чуму устанавливать?
>>800805Чем отличается print от return знаешь? Нет, не знаешь. Поэтому начни с книжки. Там даже описывается, куда и что применять можно и как устанавливать показывают. И нет, линукс для этого не нужен. Все прекрасно делается на винде.Единственное. что может тебе до конца обучения помешать на виндоусе - если у тебя учетка кириллицей.
>>800805+ В "Изучаем Питон" со всех сторон раскрываются проблемы отношений 2.7 версий и 3. Рассказывается, почему так и что изменилось.Куча всего до сих пор на 2.7 пишется и адаптироваться не собирается. Так что нужно изучать 3й питон. как фундамент, но поглядывая на 2.7.
>>800813установи putty, создай в нем сессию с выделенным тобой ip
>>800815>print от returnЯ вот когда на кодакадемии курс питона проходил полным нуфагом - я до конца курса так и не понял разницы. А все потому что мой код проверялся 100500 проверками и еще автоматически этой оберткой выводился. разницу было не понять. А когда я прошел этот курс - я понял, что я нихуя не знаю и ничего не могу сделать.
>>800815Типо print тупо выводит на экран, а return сам процесс сохроняет?>>800820А дальше?
Хуйня какая та.
>>800830
>>800828дальше логинишься, пишешь python, видишь Python 2.7.11+ жмешь ctrl+d, пишешь python3, видишь Python 3.5.1+ жмешь ctrl+d. все нормально, у тебя две свежих версии змеи.
>>800828Ну да, принт выводит (необязательно на экран, а туда, куда ведет stdout). А return - "возвращает" результат. Мне вот было не просто понять по всем этим копроурокам, что значит "возвращает". Представь себе действие 2 + 2 = 4. return 2 + 2 "вернет" 4. То есть, если у тебя функция делает какую-то работу (пофиг какую) - return подводит итог этой работы, который подставится в переменную или другое выражение типа 2 + 2.
>>800833print - функция, следовательно она возвращает результат в stdout. stdout, в свою очередь, является файлом, таким образом функция принт возвращает результат в файл стдаут.
>>800831>21 гигНу все, готовь ебать мозг вопросами уровня "не устанавливается и не работает хреньнейм, что делать?" вместо приятного обучения и начальной разработки. Место закончится очень быстро.
>>800835но ты отвлекаешься, сначал залогинься в убунту по ссх
>>800832> у тебя две свежих версии змеиОдна.
>>800841ну да, я наверное не уследил где то за модой)
>>800836>Место закончится очень быстро Эт как так, питон почти со всем весит 200 метров? 50 гигов норм?
>>800847Питон нет, но потом ты установишь какой-нибудь QT или другую полезную и нужную штуку, и гигабайт 5-10 просто испарятся. Впрочем, виртуальный диск можно расширить, не сильно посношавшись. Пока не забивай голову.
>>800847норм, ставь, сейчас это не важно. главное - наладить итерфейс человек - линукс, посредством твоей анальной винды.
>>800847Как по мне, меньше 100-200 не стоит ставить. Не исключено, что тебе вообще придется дублировать инструменты разработки и в винде, и в линуксе. Особенно, если планируешь пользоваться виндой, как основной и дальше.
>>800853Например, вдруг тебе захочется написать скрипт, который автоматически рассортировывает твои папочки с детской порнухой по одним углам, а ярлыки - по другим.
>>800851Я уже 5 раз машину перезапускаю, никак установить не могу >>800853Печально что могу поставить на системный диск, так что и основа бедет тормозить и машина (как сейчас)
>>800858ищи how to install ubintu on virtualbox in windowsи да, впредь все запросы к гугл старайся писать на английском
>>800861она уже почти установилась
Да хули вы кормите этого долбоёба?!
Хоспаде, что за шизики наполнили тред, одни обсуждают в чем разница между return и print, второму дауну мало 20ГБ для поиграться в коляске которую третий даун не осиливает, что за пиздец тут сейчас творится? может компуктер вообще не ваше, если такой хуйней срете?
>>800864Дам тебе уберполезный совет для винды. Сделай себе папку на рабочем столе или где тебе удобнее хранить свои творения. И сделай переменную окружения PYTHONPATH, пропиши путь к папке там. Это очень сильно облегчит жизнь. Можно и путь к рабочему столу туда внести заодно, если ты любитель срать на видном месте, как я.Что это даст? Ты сможешь запускать свой код, просто введя название файла. Не пописывая каждый раз cd "нужная директория с файлом".
>>800866Че сказать-то хотел, вниманиеблядок?
>>800871Что написал, то и хотел сказать, даун.
>>800872Но ведь это еще худший контент для треда, чем то что ты описал, нытик.
>>800874Это не контент, а описания говна которое происходит в треде, гной.
>>800876Но то говно хоть как-то относится к петону, в отличии от твоего нытья. Или, может, ты на какой-то вопрос тут ответил, и ответ утонул в мусоре? Или задал? Нет, ты просто ноющий пиздабол.
>>800876>эти шизопосты>как-то относится к петонуПросто иди нахуй.>Нет, ты просто ноющий пиздабол. Шизик, ты уже три поста наныл от того, что наверняка попал в список даунов в моем посте, уймись.перестаю кормить говно
>>800877>>800884
>>800864не отчаивайся если что то не получается, это нормально, иногда нужно вдумчивое чтение. я еще несколько дней буду заходить, пиши, спрашивай, но я жду вопросов в контексте запущенного python под *nix. мы же последовательны, правда?и не обращай внимание на снобов, снобы имеют психологическую особенность забывать когда они пешком под столом срали.
>>800884МАМ ПАЧИМУ ОНИ ПИШЮТ ИМ В ЭТАМ ТРЕДИ? ПРИКРАТИТЕ Я СКОЗАЛ!!!
Бэ протёк
>>800886Чем отличается питон в винде от линукса?
>>800894наличием библиотек
>>800895Не понял, их на винде тоже не мало.
Кажется, он начал что-то подозревать.
>>800894>>800895>дурак отвечает дураку
>>800896некоторые ставятся бинарником не самой последней свежести, а некоторые прямо в доках пишут: normal used on nix*, sorry, but wondows is send citizen system. например pyzmq, кстати, рекомендую.
>>800902fix *second
>>800900да, поэтому первым постом ответом я написал: "я тебе как дэцэпц дэцэпэ расскажу"
>>800902Ну точно всегда свежее, чем на репозиториях убунты. Вот уже точно где протухшая помойка.
>>800906pip install -U pip
Чёт хуйня при выборе сеть nat название устройства нет
Правильно ли я понимаю, что нет никакого смысла делать multiprocessing.Process.join(), если код там ничего не должен вернуть? Например, просто бесконечный loop?Какие негативные стороны в этом случае? Если я сделаю join процесса с loop - основной бесконечно зависнет?
>>800911nat - network adress translation, при такой организации сети, серая сеть (твоя 192.168.0.0.24) гостевая машина не увидит хост машину - винду. что бы ты из винды увидел гостя, тебе нужно настроить порт форвардинг до гостевой машины. вот: http://torwald.ru/135/ssh-%D0%B8-http-%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF-%D0%BA-%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B9-%D0%BC%D0%B0%D1%88%D0%B8%D0%BD%D0%B5-%D0%BF%D1%80%D0%B8-%D0%BF%D1%80/
>>800914фикс 192.168.1.0/24
>>800911Ты ещё держишься?
>>800913насколько я понимаю, join нужен не для того что бы что то вернуло результат, а для того что бы удостовериться что задача "форкнутая" в процесс должна выполниться до исполнения следующей после multiprocessing.Process.join() инструкции.
>>800914Почему VBoxManage.exe сразу открывается и закрывается?
>>800918хз, я лет 7 винды не касался, просто возьми туториал, любой. это проще всего. я уже писал: how to ubuntu on virtualbox in windows
>>800919а заодно скачай образ ubuntu server - эта та, которая без графического интерфейса, он тебе никчему пока что.
>>800919Не проще скачать сразу на бубунту питон, или через общею папку? А то я честно говоря пока нихуяшиньки не понимаю нахуя это
>>800922на что ты скачаешь? ты же не установил еще нихуя. можешь с виндой пердолиться, но это не ко мне, потому что когда пойдут вопросы: а чо это у меня юникод декод еррор, или системпаф какой то корявый, или как мне поставить эту либу но ее почему то хуй найдешь под винду, я сразу сратьебал.ты чо дохуя мистерроботом себя возомнил? бери самый тупой для самых даунов туториал и делай по нему.
>>800917Можно и так сказать. Возвращать что-то действительно необязательно. Но если задача бесконечная - эта самая "следующая" инструкция никогда не выполнится. И даже не будет возможности ее прервать из основного процесса.
>>800923>юникод декод еррорА как по мне это очень полезно, добавит знаний о кодировках, и как с ними работать. А в третьем питоне это еще меньшая проблема, ибо теперь все строки юникод. Наверное, только на винде можно сполна навернуть ненависти к строкам 2 питона, если этим питоном там пользоваться.
>>800933А еще это приучит любые строки в 2м питоне делать юникодными.
Как проще всего нарезать шаблоны в джанго? Копипастить кусками из breakets? может ещё проще способы есть?
>>795005 (OP)Аноны, у меня есть код:>self.hidden = np.dot(inputs,self.weights1);>self.hidden = 1.0/(1.0+np.exp(-self.beta*self.hidden))>self.hidden = np.concatenate((self.hidden,->np.ones((np.shape(inputs)[0],1))),axis=1)>outputs = np.dot(self.hidden,self.weights2);>context = outputsКак мне сделать так, чтобы строка>self.hidden = np.dot(inputs,self.weights1);Помещенная в начало кода заработала?Короче надо добавить переменную, которая в первый раз не имеет значения.
>>801037Ой, не эта строка>>self.hidden = np.dot(inputs,self.weights1);А вот эта вот строка>>self.hidden = np.dot(context,self.weights1);быстрафикс
Переполз >>801082 (OP)
>>800864>Ububtu
Пацаны а какой дистр накатить себе? Сейчас стоит убунту последние года два, до нее просидел пятерочку на фрибсд и слаке.А как-то ебаться в конфиги уже не хочется, а убунту 14 перекинутая на новый ноут поддерживает частично, короче надо чего свежее.Спросил бы в s но боюсь охуеть от анальных кловановДумал на счет манджары, дебиана и арча
>>801646Иди на хуй!рач
>>801646> убунту 14Убунту 16. Не блогодори.
>>800914Не еби головы человеку, все все прекрасно видят, покрайне мере в vmware. В виртуалбоксе помню были траблы, но я вам что скажу - виртуалбокс юзать - говно жрать. Сам его на протяжении нескольких лет работы юзал, привык что ли, мирился с кучей косяков думая что везде так. В итоге как то попробовал vmware когда бота для игры писал(а говно бокс вообще не умеет ничего 3д запускать, да он вообще ничего по сути нормально не умеет). Тут тебе и с сетью никаких траблов, и буфер обмена между хостом и гостем нормально работающий.Короче прекращай жрать говно и удаляй виртуалбокс, как человек на нем 2 года просидевший говорю.
Даун который не могет настроить убунту в виртуалбоксе в треде? Мне влом все читать, объясни нахуй ты ее ставишь и чего хочешь.Питон3 и в винде охуенно работает из командной строки, есть pip что бы прям как в линуксе устанавливать дополнительные библиотеки 1 строкой "pip install blablabla", нахер тебе линкус ставить?Хотя судя по твоему уровню подкованности, тебе и правда не лишним будет разобраться чутка хотя бы в этих вопросах, но питон можно учить и использовать и без этой гомоеблиИ имей блять совесть, весь тред засрал, он твою мать не виртуалкам и линупсам посвящен. Сначала гуглишь, думаешь часик другой, и если ничего не получается то спрашивай, подскажем, а не при каждом затыке сразу в треде срать, ты же уебок даже гуглить не пытался решение своих проблем? Колись блять.
>>795005 (OP)> предложите учебник для рачка в питоне, да и программировании тоже.
>>805623Что дядя Емаксович говорит? Я разобрать не могуI never install slash Linux? И чё?
>>805639И чё?А что он использует тогда? Бсд?