24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
>>795005 (OP) Короче, переписал свой http-сервер на asyncio. Как теперь проверить сколько он продержится под нагрузкой? Какие подводные камни следует выследить?
>>795097 Ты что такой агрессивный? Таким не место в питонотредах. Тут царит любовь, терпение и взаимопонимание. Я же думал, что в силу своей юности я не знал некоторых аспектов вокруг питона и под фразой "автоматизация тестирования" подразумевалось что-то конкретное.
>>795005 (OP) Перекатился к вам из строгой типизации. Как вы вообще программируете без автоподставления в ide? Мне вот чет сложно. Всегда документация открыта чтоли?
Как блядь правильно организовывать директории и поддиректории и импортировать оттуда это всё?
Есть папка site, в папке site есть папка src. В каждой папке есть пустой __init__.py. В папке src один из файлов импортирует в себя другие, если его запускать как мейн - то всё заебись. Когда же я делаю другой мейн в папке site и, импортируя нужно барахло как import src.barahlo, то интерпретатор начинает материться на импорты в мейн файле из src. Что за хуета и как все сделать пиздато?
Питоначеры, недавно спрашивал в подобном треде, как свараганить многопоточность, чтоб легко, быстро и без смс. Знающие господа открыли для меня модуль multiprocessing и pool -ы в частности. Теперь захотелось результаты работы этих потоков передавать в другую функцию, причем чтоб обрабатывались они строго в порядке очереди короче нужен мастеркласс по queue. Сенкс заранее.
Вообщем немного разобрался, но не знаю как пофиксить такой трабл.
В джанге есть джве модели. Родительская (не абстрактная) и дочерняя от нее. Есть ссылка по ForeignKey один ко многим с родительской на дочернюю.
При сохранении родительской модели из формы внезапно сохраняется и экземпляр дочерней модели с тем же id. Параметр ForeignKey почему-то передается как новый инстанс дочерней модели, хотя последняя не указана в форме. Это должна быть просто ссылка на id. ). Через админку все нормально, создается отдельно родительская. Как пофиксить?
Да еще это поле с ForeignKey я не добавляю в форму через шаблон, а передаю его значение через kwargs из url. Если вставляю поле в шаблон, то при ручном выборе все работает.
скажите, по возможностям для web'а питон похож на пхп? Какие у него плюшки, что стоит из этих двух выбрать именно питон? И второй вопрос (вообще нубский): с установской на сервер питона никаких сложностей нет? Просто поставил и запускай свой *.py?
>>795289 И не говори, бро. Я-то в советские времена ооо... на перфокартах кодил, какие времена были... >>795246 Поставь OpenBSD, раз линукс нельзя. >>795104 Ты о чем? vim + jedi, дополняет, документацию показывает, только что хуй не сосет. >>795116 >А у нас тогда какая? Да походу никакой, если сравнение инта с булем может вернуть положительный результат, а строки являются массивами из строк (лолшто?).
>>795116 >Да походу никакой Не никакой, а динамическая. Я кстати тоже поначалу после С++ и C# жутко плевался, а потом ничего, приработался. Просто как-то сидишь и кодишь без задней мысли. Правда проекты все у меня очень простые. Гораздо тяжелей я воспринимал невозможность передачи в функцию указателя или ссылки на переменную чтобы в последствии ее изменить, а не копировать.
>>795338 Хотя добавлю, что мне больше нравится статическая типизация, просто потому что я вкатывался в кодинг начиная с С++ и это уже не исправить. Следует отметить, что в питоне перегруженные операции для сравнения разных типов работают чётко и все документированно, это тебе не обезьяний пхп где: Слабая типизация(всмысле, тихая автоматическая конверсия между строками/числами/всем остальным) настолько сложная, что она не стоит того, сколько бы усилий начинающего программиста она не сохраняла.
Ну и плюс инфернальный пиздец с пикрелейтед конечно.
>>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 open File "/usr/lib/python3.4/shelve.py", line 222, in __init__ File "<frozen importlib._bootstrap>", line 2237, in _find_and_load File "<frozen importlib._bootstrap>", line 2222, in _find_and_load_unlocked File "<frozen importlib._bootstrap>", line 2155, in _find_spec TypeError: 'NoneType' object is not iterable
>>795345 Лол, как же я обосрался с 3 4 и 5 строки с конца. Боже, какой пиздец. Хорошо что я съебал из конторы где меня пытались это говно заставить учить, не испортил хотя мозга этим говном. Особенно про оператор индекса к любой переменной понравилось: ЗАЧЕМ, нет вот просто ЗАЧЕМ?
Анон, подскажи ньюфагу в какую сторону копать. Надо кроулер, чтобы по наименованию гуглил, заходил на сайты с товаром и кидал цены и ссылку в табличку. Про парсеры с сайта, хтмл разметку уже прочитал. Как реализовать запрос в гугль и прокликивание всех сайтов, может, готовые решения есть?
>>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
>>795412 Я все понял. shelf.open() вызывает shelf.__init__. В нем вызывается import dbm. И судя по всему, интерпретатор считает, что нехуй вызывать import во время сбоки мусора. Или что-то вроде этого.
пацаны, в книге этой вашей джанго бай экзампл, антуан пишет, мол, линукс это заебись.
Но вот я прочитал чуток и все что он пишет я и на винде сделал без всяких глюков и какой-то жопной боли. Ну на винде же тоже работает бля, линукс все равно учить? Я конечно не против линукса, но ведь и на винде работает.
>>795564 Все просто: Есть Unix, есть питон, и одно и второе придерживается примерно одинаковых принципов типа одна функция выполняет только что-то одно, одна программа делает только что-то одно, но делает это хорошо. В юниксе питон смотрится природно. В винде нет. Ты охуеешь еще pil ставить. Я не против того что тебе лениво вникать в юник, но не вникая ты теряешь больше чем можешь получить. Если в итоге консоль тебя будет тяготить - ну видимо юниксы и питон это не твое, ничего страшного сейчас валом всяких интересных штук. Но попробовать я бы все же рекомендовал , и не в виртуалочках, а накатить какой-нибудь elementary OS ( что бы не слепнуть от убожества убунты но так же быстро искать ответы) в дуалбут и похуярить там.
>>795563 Ниебически простая установка/настройка управление сервисами бд и прочим, много батареек/серверного софта либо linux-only, либо со статусом "ну мы на винде запустили, вродь работает но хуй знает... в продакшен лучше не совать". Ну и тебя же никто не заставляет ОС менять, есть куча вариантов с виртуализацией.
> что использование винды делает невозможным Очень сложным, не невозможным.
>>795351 Типизация опциональна, прямо в языке не проверяется, нужно юзать линтер mypy: http://mypy-lang.org/ Мб там уже подкатились всякие плагины под саблайм/вим, которые умеют в работу с ним, а так можно поставить как step в каком-нибудь Jenkins'е
Анон, подкинь идею пет-проекта на джанге для <b>ПОРТФОЛИО</b> чтоб джуном вкатиться. И книжку по джанге намба ван фор фаст старт, на твое усмотрение. Пожалуйста.
>>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", оно же просто зависает. Не совсем понимаю, в чем дело.
И так, ребятки Сейчас я буду писать онлайн-резюме на 1 человека на джанго и заёбывать вас вопросами
Что мы имеем? Нужно написать выводилку резюме на одного человека с возможностью добавления мест работы (остальное сделаю по аналогии)
Что уже есть: models.py class Person(models.Model): ..name = models.CharField(max_length=30) ..lastname = models.CharField(max_length=30) ..mail = models.EmailField()
Добавление персоны прошло успешно, осталось конечно поколдовать над полями отображаемыми в админке, но это уже мелочи
Теперь, уважаемые знатоки, внимание на экран Вот что происходит при попытке создать Experience, то бишь место работы. Зачем оно предлагает вбивать нового человека? Если в rel выбрать уже созданного васяна - не меняется ровным счётом ничего.
Ну я старался в тред чуть упрощённую модель кидать, и кажется сам себя наебал в итоге Вот как они выглядят в оригинале 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()
>>795867 Ну смотри что я ещё хочу в эту фигню запихнуть: Что бы объекты класса Person нельзя было создавать больше одного, дабы никого не смущать раз уж тут многопользовательность не нужна.
Как выводить поля в админку у меня вроде бы есть где-то, думаю там разберусь.
Далее буду маяться интернационализацией, экспортом в pdf и в итоге прикручу ещё и сраный бложик / форму обратной связи - пока не знаю какие у меня вопросы с этим возникнут.
Было бы здорово у тебя попросить почту что бы иногда спрашивать какие-нибудь вопросы, но хз. Если есть желание - отпишись на [email protected]
Ребята, мамкин ксакеп снова в треде, взгляните пожалуста на скелет проги, о которой говорил в этом >>795204 посте. Если совсем на пальцах, запускается демон, ждущий сообщений в очереди -> запускается пул процессов сканирующих список подсетей и пуляющих результат в очередь -> в очередь пуляется флаг завершения сканирования -> хэппи-энд. Правильно ли я понял логику работы queue и pool, в верном ли направлении иду? inb4 Не в верном, тебе нахуй. https://ideone.com/lJoXjn
>>795930 Просто суть в том, что база данных - это кеш, и у запрашивающей программы есть критерий, по которому можно определить, что данные в кеше устарели и их надо обновить.
>>795931 Хотя можно просто программой забирать данные из кеша, и если они старые - скачать новые. Но вопрос - что делать, если вдруг и программа, и демон будут одновременно писать в базу данных? sqlite3 если что.
Работал долго аналитиком, а сейчас занимаюсь какой-то айтишной ерундой в одной большой компании. Устал себя превозмогать и хочу заново вкатиться в аналитика. Посерфил вакансии, в основном хотят знание героя этого треда и R. Не подскажешь, анон, где можно найти кучу больших данных для анализа? И было бы очень здорово узнать, есть ли тут те, кто занимается тем же и может подсказать неплохую либу для питона или какой-нибудь фрейворк для более детального и оптимизированного анализа.
>>796098 Если больше склоняешься к бэкенду, то делай упор на питон и джангу. Но начальные знания hml, css, javascript, jquery, git будут очень полезны. Зайди на апворк, например, и посмотри какие скиллы нужны вдобавок к джанге. Часто попадаются проекты, где надо уметь что-то из вышеперечисленного + еще ссаный ангуляр жс.
Ну и уметь разворачивать проект - AWS, heroku и всякое такое
>>796150 А я вот не знаю. Похоже, жаваскриптеры каждый день какой-то новый фреймворк выпускают. jquery наверное никуда не денется - не будешь ведь целый фреймворк юзать, если тебе надо всего-лишь DOM'ом поманипулировать или, например, аякс запросы попосылать.
>>795043 Вот смотри, есть большой сайт. В нем куча функций. Внедряют новую фичу. На сайте может что-то поехать и поползти. У тебя есть вариант сесть и самому все проверить. На 60-ой кнопке ты уйдешь на двач и начнешь аутировать. Либо пишешь программу, она сама лезет на сайт и делает все тесты. Сама проходит регистрацию, заполняет формы, заливает картинки. То есть проверяет все функции сайта. После каждого теста она пишет отчет. Причем прогу нельзя делать на try except, как раз когда она крешнится - это будет показателем проблемы на сайте.
Аноны, у меня скрипт и файл лежит в одной директории В коде написано: >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"
>>796341 >>796335 >>796317 А все нормально, кстати, посоны, что у питона за хуйня, когда он начинает на рандомную правильную хуйню ругаться? То ему не нравится, как переменная инициализируется, то еще что-нибудь
>>796356 Вот смотрите, что ему не нравится, блядь? >iris = iris[order,:] >SyntaxError: invalid syntax Ему что, название переменной не нравится? Раньше он не ругался
>>796374 Ну пиши одна функция на одно действие, и делов. Упорись литературой что бы подпривыкнуть, валом же годных книг по питону. Однострочники не нужны. >>796379 Найдёшь - и мне им поделись. Я даже бабла отсыпать буду, правда в пределах 10-13 тыс руб в месяц.
>>796379 >>796387 Если НУБЯРА подходит, то я мог бы попробовать помочь, на пистоне я уже года 3-4 пишу разные шкриптики, но не хватает мотивации заняться изучением в плотную. Проект в какой области?
>>796395 Мне и Джанго надо. Ты можешь со мной бесплатно поработать. Потом правда твой модуль будет в реальном коммерческом проекте, а ты будешь ни с чем с опытом. А если серьезно, то где взять такого? Не будь у меня кучи дел, сам бы был рад такой возможности.
>>796399 Да я и в Numpy могу. Но за идею работать - извини, я на апворке заебался, у всех нормальных ребят по косарю долларов зарплаты, а у меня 300-350
>>796403 Да только 3 месяц же, может в течении года увеличится еще, а может и уменьшится. Деньги в любом случае нужны, мне интересны другие технологии в программировании, но там работы не найдешь, а если и найдешь, то даже до 300 баксов не дотянешь. Или требуют совсем гиков.
>>796400 MrRak Я так понял тебе по джанге нужно? ну я нихуя не делал на ней, опять же мотивации нет(, смотрел видосы, в принципе, наверно на день могу говноблог слепить. Но только если тебе нужен челик для СОВМЕСТНОЙ работы, а не делать самому для тебя.
>>795741 >>795714 Разобрался, короче. Сначала я читаю хедер, потом вычленяю из него Content-Length, и если он больше нуля (или вообще есть) - то читаю соответственное количество байтов еще и поверх.
>>795897 Да везде. JS работает быстрее в разы за счет V8, ванильная Lua тоже быстрее, а если LuaJIT - то вообще на порядки. Мне вообще сложно назвать современный язык программирования, который работал медленнее Пайтона в стандартной реализации.
>>796465 > JS работает быстрее в разы за счет V8, ванильная Lua тоже быстрее, а если LuaJIT - то вообще на порядки. Гугли pypy, pyston, cython. Вопрос только, нах тебе скорость в питоне? Я иногда специально делаю способом который работает чуть медленнее, но легче читается/воспринимается, и мне срать на проигрыш в доли секунд.
>>795043 Обмазывать тестами все, что есть и в какой-нибудь ci системе запускать при деплое автоматически. Для веба selenium, для бекэнда какой-нибудь unittest
Хлопчики, а посоветуйте как сделать так, что бы в БД мог быть только один экземпляр класа Ну вот class User и надо что бы user был только один, что бы никто не впиздячил второго
создать что-то типа: class OnlyOne(model.Model): ..pass
class User(model.Model): ..onlyone = model.OneToOneField(OnlyOne) ?
>>796651 An 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 и так и не понял что он имеет ввиду
>>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
Как сократить этот код http://pastebin.com/QrDYSy3Z в пистон вее? Это два метода класса, различие по сути в одной строчке. Я мог бы распихать все что до и все что после в две разные функции, но я что-то слышал про декораторы, хотя и не понимаю, как их сюда прихуячить.
Аноны, помогите разобраться с этим ебучим циклом Что он делает? >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?
>>796757 Через контект менеджер удобнее всего. Можно любой блок кода обернуть. Можно через декоратор, но тогда ты только функции так оборачивать сможешь. http://pastebin.com/sf1Pryds
>>796802 Не вижу наебалова. >>796804 Извини >>796807 Просто напиши им, сказали же нубов берут. Собеседование пройдешь где тебя спросят что такое with и что означает http 403 по скайпу.
>>796823 > по скайпу оу. у меня, на самом деле, еще и разговорный английский никакой. а вообще, вакансия конечно интересная. может и напишу им. спасибо.
>>796784 >>796777 Аноны, так что значит эта хуйня? > inputs[i,:] = PNoz[i:i+tk:t,2] Никак не могу вникнуть, мы в i строк массива добавляем значение PNoz? Но в PNoz 2855 элементов, а в i максимальное значение будет 2847
>>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 Используй virtualenv. Мжно создать окружение с той версией интерпретатора питона, какой захочешь. Плюс, не засираешь систему своими пакетами голобально. Можешь насоздавать окружений для разных проектов с разными версиями питона и разными версиями одного и тех же пакетов, например и все у тебя будет заебись.
Сосач, выручай. Пишу скрипт, скачивающий музыку из вк, если ее нет в заданной директории. Все работает, но только с английскими треками. Как заставить python сохранить русское название? file = open('кирилица','wb') - выбивает ошибку
Сосач, выручай. Пишу скрипт, скачивающий музыку из вк, если ее нет в заданной директории. Все работает, но только с английскими треками. Как заставить python сохранить русское название? file = open('кирилица','wb') - выбивает ошибку
Сосач, выручай. Пишу скрипт, скачивающий музыку из вк, если ее нет в заданной директории. Все работает, но только с английскими треками. Как заставить python сохранить русское название? file = open('кирилица','wb') - выбивает ошибку
>>796967 Ты дурак или куда? Как ты добрался до взаимодействия с api, но про ебаный encoding = utf-8 не знаешь? text_file = open("analize.txt", "w",encoding='utf-8')
>>796976 А, я твой вопрос не так понял. С кириллицей питон вообще не дружит, у меня была учетка на кириллице, из-за этого у меня ни одна команда через коншоль не работала, в PATH мое имя отображалась, как сломавшаяся кодировка.
>>796976 Это бинарный файл, с ним такое не прокатывает. ValueError: binary mode doesn't take an encoding argument >>796977 API, не прописывал, потом поставил utf-8 и не помогло
>>796911 Ну всё просто - пиши как тебе нравится, конечно, раз живём. Но будь готов нести ответственность за свой выбор, например когда вакансию отдадут другому более понятному кандидату.
>>797256 То есть, я не должен избавить себя от повышенной вероятности опечаток и 100500 ввода одного и того же текста, потому что это жестко вшитый костыль, изменение которого пидорасит все, ты хотел сказать? Нахуя мне 3.4, если мне нужен только 3.5? Какого хуя я вообще должен зависеть от ненужного 3.4?
>>797266 Это уже не говоря о том, что я должен помнить, какая именно версия 3 питона мне нужна, ибо если напишу по привычке и таториалам или просто забуду - все улетит в нахуй не нужный 3.4.
>>797266 Просто ты макака и не можешь автоматизировать установку нужной версии пифона и нужных библиотек. 3.4 нужен системным утилитам, дибил, они на них завязаны. 3.4 нужен если гвида решит 3.5 зделать обратно несовместимым. >>797269 Конечно должен, блядь. Ты же когда в си пишешь указываешь стандарт компилятору.
Судари, такая вот хуйня: Нахожусь в командировке, есть ноутбук Lenovo E31-70 новый, но дерьмовый Любимое Ubuntu я на него накатил конечно, но Chromium 10-15 вкладок + Pycharm дают практически всегда гарантированне слайд-шоу.
Вариантов собственно два: 1. накатить ещё ram / ssd но это платно 2. или заменить чем-то pycharm или cromium менее прожорливым.
Вот пока меня не окончательно доебало всё до варианта 1, хочу попробовать 2. И так, чем заменить хромиум менее прожорливым? Может и вместо pycharm'а чего появилось с удобным автокомплитом/подсказочками и без java-машины? inb4 emacs
>>797388 Я сам не то что бы гуру линуксов, или питона, или ещё чего-угодно. Убунту я люблю за то что вбиваю возникший вопрос в гугл и 100% получу нужный ответ. С арчем дебианом и тд всё сложнее
>>797391 Можешь хотя бы ради интереса попробовать, мне лично намного удобнее. Смысл в том, чтобы слезть с unity, он жрет очень много. Хотя бы на xubuntu перекатись.
>>797395 Ну все, дальше только тайл и минимальный сборки. На самом деле арч не сложный, обожаю pacman - лучшее пакетный менеджер. Pycharm обязательный атрибут? Sumbile или vim будут намного выгоднее в плане прожорливости.
>>797396 >>797398 Ну может попробую как-нибудь. Я чуть ссу какие-то манипуляции с компом делать сейчас - комп то один, а ежели флешка загрузочная запишется с ошибкой я понятия не имею где мне её переписывать. Да я давно хотел угореть по vim и i3, задротства во мне должно хватить - в конце-концов мои любимые игры это DF и Cataclysm DDA, так что как мне кажется и к таким вещам как полностью ручное управление я предрасположен.
>>797403 Стесняюсь спросить ты помнишь все приблуды джанго наизусть? Просто мне без предложений после точечки класса / объекта и тд и подсветки сверху что писать в скобочках будет как-то очень грустно и гуглить заебусь.
>>797438 >помнишь все приблуды джанго наизусть? Ну, помню то, что чаще всего иcпользую. А если что-то забыл, то лезу в документацию. Помнить всё наизусть - это же пиздануться можно! Да и не нужно.
Сап зеканы! Есть ли какое-нибудь нормальное dependency management в питоне? Я имею ввиду per-project, как в rust'e есть карго, в джаве мавен, в похапэ композер. А в питоне только pip который устанавливает все глобально, зашквар же.
>>797476 1. Перепиши ридми. Много лишнего говна. Сделай как у всех 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 Также как и map 3. 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') $ pause pause: command not found 12. > del handler Нахуя? Пусть сборщик ебётся. 13. https://github.com/SweetPalma/Perver/blob/master/perver.py#L551 Нахуя return?
Хлопчики, конечно офтоп ещё какой но блин мне больше не с кем поделиться радостью. На сраном lenovo e31-70 втулил i3wm и пичарм с хромом залетали просто Мне конечно неудобно пок а, но блин ни озу ни покупать, ни ссд ставить - ничего не надо. Я так понимаю косячность основная была в дровах видеокарты от интел, для которой собственно дров и не было как-то
>>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".
> У меня там вообще табуляция Ну, тогда вообще пиздец. Сжечь нахуй.
> Ну, тогда вообще пиздец. Сжечь нахуй. Пэпом не запрещено, проект изначально задумывался с табуляцией.
> Кому нужна совместимость с 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" - я бы так и сделал, а так - извиняй, что потревожил твои эстетические чувства.
>>797709 > Напиши просто Grab yoba.py и всё. Не совсем понял, что ты имеешь в виду.
>>797714 Конечно же, это рекомендации, но там так и сказано - лучше используйте четыре пробела вместо табов. Но если хотите табы и так изначально задумано - то пишите табами, только не смешивайте их с пробелами. Я так и делаю.
>>797717 > Не совсем понял, что ты имеешь в виду. Вместо ссылок и инструкций как качать с гитхаба просто напиши. Grab yoba.py (где yoba.py файл с твоим фреймворком).
>>797717 > Конечно же, это рекомендации, но там так и сказано - лучше используйте четыре пробела вместо табов. Но если хотите табы и так изначально задумано - то пишите табами, только не смешивайте их с пробелами. Я так и делаю. Где ты там такое прочитал?
>>797722 https://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 Там же написано, что табы должны использоваться только в случаях, если уже есть код, который написан с табами. Если ты пишешь с нуля, то используй пробелы.
Блин, ребята, я всё понимаю что и программёром быть лучше чем сварщиком, и питон выучить не семь пядей во лбу иметь надо, но блин начните тупо с английского языка. Базарю, обучение ускорит в десятки раз. Всего один сраный спикинг-клаб в неделю и какой-нибудь хендбук коих миллионы каждый день по пол часа.
>>798038 Я не >>797773, просто сделал замечание. В ide есть рефакторинг, мощные проверки кода, типа как в рантайме, интроспекция (или как там оно, когда пишешь yoba. и тебе вылезает подсказки с методами и свойствами).
>>798040 Ради бога. Мощные проверки кода в питоне невозможны в принципе, рефакторинг есть, автодополнения и подсказки есть. Трассировка и профилировка возможны внутренними средствами питоне, приблуды к гиту тоже есть.
>>798044 Спасибо, конечно. Но как-то малость монструозно, тем более что я использую либу requests, которя по идее занимается всей этой хуитой с сессиями и таймаутами под капотом. И питон у меня 2.7 Моя проблема в том, что мой код у меня работает, но я сомневаюсь, что он будет работать всегда и везде, и я нихуя не зняю как повысить его надежнотсь и стоит ли этим заморачиваться.
>>798055 все и везде будет работать, не ссы) функция get дает либо результат, либо исключение, исходя из этого ты реализуешь бизнес логику своего приложения. больше функция гет нихуя делать не должна.
Ребята, а вот делаю я в admin.py класс свой туда пишу что-то типа: list_display = ['title', 'text']
Ну оно мне разумеется весь текст и выдаёт прямо в админке на странице данной модели Как бы мне сделать что бы выдавало например 500 символов? Можно конечно сделать метод типа def short_text(self): ..return self.text[:500] или как-то так, и пихать в админку это тегом Но мне кажется может есть чего встроенное для этого?
Есть фласк и я хочу сделать сайт-одностраничку, где в формочку что-то вводишь, после сабмита под формочкой строятся какие-то таблицы с данными и введенные в поля формочки данные сохраняются. Как это реализуется? Пока у меня есть это: http://pastebin.com/gXg14QPh , где layout - это главная страничка и там внизу есть блок для контента. Сейчас у меня страничка перезагружается и все поля формочки сбрасываются. Было бы круто, если бы не только введеные данные оставались, но и страница не перезагружалась.
>>798261 без js не обойтись, создай новую вьюху с роутом например /ajax/, на странице по клику на сабмит собери данные формы и отправь аяксом на /ajax/, но не отправляй форму обычным способом.
>>798050 Ты не понял. Если я напишу свой Yoba класс, сделаю инстанс a = Yoba(a, b, c), а потом напишу в каком-то месте a., то в ide вылезет подсказка с методами класса и т.д. не думаю, что сублим так умеет.
Как питон считывает данные с файла .txt? Можно сделать чтобы он счытвал и формировал например список? И можно ли сделать, чтобы считывал по ключу? То есть сделать из файлика .txt микро базу данных? Я вот придумал только перебор по строкам - мол если строка начинается с ключа, то дальше определенные данные идут.
>>798440 >Можно сделать чтобы он счытвал и формировал например список? >И можно ли сделать, чтобы считывал по ключу? То есть сделать из файлика .txt микро базу данных? Да запросто, язык же полный по тьюрингу, что хочешь то и делай. >Я вот придумал только перебор по строкам - мол если строка начинается с ключа, то дальше Ну так и надо, только я регэкспы использовал. Регэкспом разбираешь строку, находишь в каждой ключ и значение. Ну или если регэксп ничего не нашел, то выводишь ошибку.
Тут редис юзается как внешний таймер что челик уже закончил свою сессию и пора подчищать память. Мне бы чтоб этот таймер был внутрях и не заебывать редис, и так сука нагружен.
>>798506 про чтение забыл. Но вот при формировании листа сплитом, у меня еще в конце выскакивает "/n" от перехода на новую строку, ее как-то убрать можно?
Парни, выручайте. Чайник, учу питон по книге Саммерфилда. На куске тестировании куска текста с релейтед1 наткнулся на релейтед2. ЧЯДНТ? Система - win10.
Возвращает url картинки типа http://127.0.0.1:8000/media/image/file.jpg - т.е. совершенно правильную, file.jpg и лежит в /media/image/ Но картинку не выводит, при попытке открыть изображение в новой вкладке выдаёт Page not found (404)
Может кто встречал, гайд по созданию бложика или другого говна на джанге, только не как обычно, две странички без нехуя, дальше сами гуглите, а полноценный сайт с всем что нужно, по сути готовый проект.
>>798633 спасибо большое, друг. сделал и ещё ебался, а всё почему? потому что блядь нахуй я проебался с MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, '/media/') сука главное ж в вопросе правильно написал а в проекте этот ебучий слеш.
>>798658 >>798668 Ты что-то делаешь неправильно. Что ты вообще сделать хочешь? Если у тебя есть список слов, то на нём можно сделать " и ".join(список), например.
алсоу написал лисопедик что бы проще было деплоить app/urls.py if settings.DEBUG: ..urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Всё равно ебала какая-то с картинками этими показываются только если писать <img src="media/"{{ app.img }} />
как при таком раскладе их скармливать в sorl-thumbnail типа: {% load thumbnail %} {% thumbnail app.img "350" as im %} ..<img src="{{ im.url }}" /> {% endthumbnail %} я не понимаю решительно
Есть одна функция класса, которая очень долго выполняется. Есть прога с фласком, один из роутов запускает функцию. Как из браузера запрашивать состояние работы функции (например атрибуты класса) во время её работы? Как запустить в фоне и дальше слушать клиента? Думал использовать для этого celery. Добавлять таск с функцией, но я всё так же не знаю как клиент может запросить что-то кроме ready().
Не могу допереть до того что от меня хотят в одном задании из книги ThinkPython, задача на пикретейлед. Вот код функции circle https://ideone.com/zRKxJh На втором пикретейлед результат ее выполнения. Не могу догнать что за стековая диаграмма.
>>799014 Стековая диаграмма - это когда ты сам вбиваешь себе значения и на каждом этапе выполнения скрипта замеряешь результат
for x in range(0,4): ..x *= x
Стековая диаграмма тут будет типа 1 - 1 2 - 4 3 - 9 4 - 16 Можешь прямо графиком вместо черепашки рисовать, смысл всего этого что бы ты точно понял что программа делает в ту или иную единицу времени в том или ином куске кода
Ньюфаг вкатился. Есть задача - спарсить страницу. Страница представляет собой js-скрипт, в котором сначала задаются пустые массивы, а потом через .push заполняются словарями ключ-значение. Как раз данные из этих словарей и принадлежность их конкретному массиву мне и нужны, чтобы объеденить их (Слить нулевыые элементы каждого массива в один словарь и запихнуть в итоговый массив нулевым элементом, первые элементы слить и запихнуть в итоговый первым etc) С одной стороны можно конечно поебаться час с регулярками и выдрать нужные данные, но хотелось бы знать, есть ли более простые и надежные способы?
На убунте, запускаю скрипт через консоль python: can't open file 'test.py': [Errno 2] No such file or directory Как пофиксить? PATH на винде, а тут как?
Аноны я мамкин неосилятор.Читаю щас марка лутца изучаем питон.Но пока что то я не очень усваиваю откуда узнать слова которые можно писать в коде.Если я пробую что то написать то все время сраный invalid syntax.Это нормально?Или просто стоит дойти до программирования? Я так понял что у меня вся хуйня в синтаксисе но я вроде его вкурил и понял.
Вот я прикрутил к какой-то логике фласк, нарисовал страничку с wtforms, все вроде как работает (формочка принимает данные, страница перезагружается и рисуются таблички). Есть два НО - 1) мне таки хочется AJAX, чтобы страница не перезагружалась, а таблички достраивались снизу 2) мне нужна возможность обрабатывать больше одного запроса от разных клиентов параллельно, у фласка с этим беда, как я понял.
Собственно, что делать?
Я ведь правильно понимаю, что нужно послать нахуй все эти втформсы и фласки, установить какой-нибудь апач, сделать так, чтобы на запросы извне он показывал страничку с жаваскриптом, жаваскрипт передавал сообщения от клиента к логике через апач, потом логика передает сообщения через апач к жаваскрипту и он всё рисует? Или я что-то усложняю и можно как-то проще?
>>799223 >мне таки хочется AJAX Сделай AJAX >мне нужна возможность обрабатывать больше одного запроса от разных клиентов параллельно Просто используй вместо встроенного во Flask сервера нормальный WSGI сервер, который умеет в параллельные запросы. http://flask.pocoo.org/docs/0.11/deploying/
>>799267 Ну и что самое главное, под словом нарисовать - автор походу имел - нарисовать в графическом редакторе или рукой на листе. А не накодить нечто выводящее диаграмму(на данный момент в книге не давали знаний достаточных для такой задачи). Вот уж где искажение восприятия. Спустя сутки только допер что просьба нарисовать, не обязательно должна относится к программированию.
>>799325 Хм, а это неплохая идея. Можно заделать нейросеть с базой шуток (1000 мемасов и 100 паст) и настроить автоматическую генерацию нового и сразу постить на двощ.
Делаю вот так. Капчу каждый раз новую вожу. Но он всегда пишет {"message":"Нет прав доступа или вам нужно перелогинится","message_title":"Ошибка"} Что за хуйня? Как починить?
>>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) Вот так пишу. А он не работает. Помогите.
Кек, таки смог высрать apk после сношений с pyqtdeploy. И какое счастье - это говно радостно крашнулось при запуске, толком даже не заработав. Огромный минус, я даже хз, в чем причина - logcat выдает какие-то коды ошибок и места, но они вообще не имеют отношения к моему коду. У меня есть целый 1 недопиленный таториал, который (какое совпадение!) тоже оканчивается до появление работоспособного приложения. И вряд ли вообще когда-то это будет пригодится для сборки apk - автор совершенно не заинтересован в Андроиде, это даже видно по тому, сколько лишней, ломающей компиляцию статических библиотек херни включается через pyqtdeplycli. Это не альтернатива buildozerу совершенно. Проблемы отладки совершенно не стоят результата. Документация раскрывает отношения с ведром чуть менее, чем никак, а спросить негде - никто ничего не знает, даже сам Phil.
>>799621 Элементы словаря не имеют порядка. Тебе нужно сортировать по ключам или их значениям? Делай create_json.keys() или create_json.values(). А к ним уже применяй .sort()
>>799329 А есть идея ещё гениальнее. Можно сделать свою борду, и для каждого раздела создать собственный скрипт с нейросетью, для каждой из которых подобрать подходящий разделу набор шаблонов. В итоге можно будет создать свой личный двач и аутировать в полном одиночестве.
>>799696 мне вообще никак сортировать не нужно. как раз в том и проблема, что оно автоматически отсортировало по алфавиту, хотя я этого нигде не указывал.
>>799838 Удобства ради. Если читать самому файл, то так намного удобнее и, при розростании словаря, логичнее. А вообще задание у меня по учёбе такое. А json в пайтоне всегда автоматически сортируется?
>>799835 Тебе просто повезло. Запусти еще раз - и порядок скорее всего будет иным. Да и не похуй ли - кто это увидит? Для вывода в нужном тебе порядке вставляй значения в шаблон строки. Или слеивай строку из кусков, между которыми значения из словаря.
сап. у меня есть много байт-строк в базе со спец символами типа '\xe1'. я пытаюсь записать всё это в csv файл. получаю 'ascii' codec can't encode character u'\xe1', когда пытаюсь достать нужную строку из обьекта. проблема, похоже в том, что я не могу понять енкодинг/декодинг и что вообще происходит.
ААААА ... помагите! unexpected EOF while parsing Ошибка появилась после удаления нескольких последних строк кода. А если я в последней строки пишу print ("xx") то уже пишет, что инвалид синтаксист и показывает на этот принт.
В питоне есть решение для встраиваемых sql баз (sqlite). Есть решение для встраиваемых hash-value хранилищ (shelve). А есть ли для документных/json баз? С поиском по значениям полей, ну вы понели.
Змеены, у меня вопрос не по питону, а по алгоритмам. Я тут понял, что нужно почитать что-то по алгоритмам. Какую книгу лучше всего прочитать (выбирал, чтобы без матана): 1.Лафоре (объясняется на примерах с Явой) 2.Кормен.Введение в алгоритмы
У лафоре вроде бы понятнее (я так глянул по страничкам, нормально разжевано), но там яваговно. У Кормена все на примерах псевдокода и нельзя потыкать палочкой аплеты, которые показывают сортировки и т.д. На какой стул садиться?
Ребят я начинающий программист, начал вашего обуздывать вашего ужа. Только я до сих пор не понимаю что в конечным итоге я должен с ним делать? Какие задачи выполнять? Куда я иду?
>>800386 >>800416 При этом в итоге должна быть собранная через cx_freeze программа. Если я буду запускать этот скрипт через subprocess и ловить вывод - как заставить его запускаться от фризнутого питона?
Итак аноны помогите аутисту-дцпешнику: Где можно найти обучающие уроки/статьи где всё рассказано для аутистов и показано на примере, желательно для 3.х.х версии. Сейчас штудирую http://aliev.me/runestone/ , но чёт сложно про функции рассказано. Опыт в погромирование только школьный курс паскаля за 9 класс и курс в технаре с qbasik.
>>800744 я тебе как дцпэ дэцэпэ расскажу, вопервых: если ты на винде, у тебя 2 хода: 1) ставить луникс на вирт машину. 2) сносить венду и ставить лунус. давай быть последовательными? сначала выполни сий весьма важный шаг, как только ты решишься, я расскажу как быть дальше. давай, жду.
>>800765 >1) ставить луникс на вирт машину. 2) сносить венду и ставить лунус. >давай быть последовательными? сначала выполни сий весьма важный шаг, как только ты решишься, я расскажу как быть дальше. давай, жду. Ему это нигде не пригодится, кроме специфических штук, до которых как до луны пешком. Что это даст?
>>800773 как только ты окажешься в миру *nix, тебе придется уяснить что: 1) все есть файл, 2) любая программа пишется так, что бы могла быть пересипользована, 3) у программ должен быть простой интерфейс взаимодействия - текстовый. и так, интерпретатор python - программа и она удовлетворяет всем трем, вышеозначенным принципам.
>>800786 Вот за что я люблю все эти видеоуроки, курсы на кодакадемиях и тд - их объяснения еще хуже, чем "любая программа пишется так, что бы могла быть пересипользована". Он даже про функции не понял еще.
>>800792 Забей хуй на системные вопросы, возьми лучше хорошую книжку типа "Изучаем питон" М. Лутца. Все, что надо - тебе покажут там с примерами, и не один раз. Особенно, если ты никуда не торопишься. Фундаментальные вопросы уровня "что происходит, когда я импортирую модуль" и всякие хитрые штуки типа генераторов тебе не расскажут в видеоуроках или на бордах. А проходя краткие курсы - ты про них рискуешь вообще никогда не узнать, изобретая велосипеды.
>>800792 там не все так сложно, ос - программа, по любой массово - используемой программе есть куча документации. сейчас главное запустить терминал посредством ssh на установленной убунте. прозреваю что ты будешь использовать virtualbox, поэтому пиши в гугл "ubuntu on virtualbox"
>>800792 Куча документации еще не значит, что он будет понимать, как это все склеивать в нечто работоспособное. Нужно, чтобы в голове была куча вариантов, как это применить. Взвесить все за и против того или иного варианта. Да даже найти ебанутое, велосипедное, но рабочее решение для проблемы, где гугол ничего не дал.
>>800805 Чем отличается print от return знаешь? Нет, не знаешь. Поэтому начни с книжки. Там даже описывается, куда и что применять можно и как устанавливать показывают. И нет, линукс для этого не нужен. Все прекрасно делается на винде. Единственное. что может тебе до конца обучения помешать на виндоусе - если у тебя учетка кириллицей.
>>800805 + В "Изучаем Питон" со всех сторон раскрываются проблемы отношений 2.7 версий и 3. Рассказывается, почему так и что изменилось. Куча всего до сих пор на 2.7 пишется и адаптироваться не собирается. Так что нужно изучать 3й питон. как фундамент, но поглядывая на 2.7.
>>800815 >print от return Я вот когда на кодакадемии курс питона проходил полным нуфагом - я до конца курса так и не понял разницы. А все потому что мой код проверялся 100500 проверками и еще автоматически этой оберткой выводился. разницу было не понять. А когда я прошел этот курс - я понял, что я нихуя не знаю и ничего не могу сделать.
>>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.
>>800833 print - функция, следовательно она возвращает результат в stdout. stdout, в свою очередь, является файлом, таким образом функция принт возвращает результат в файл стдаут.
>>800831 >21 гиг Ну все, готовь ебать мозг вопросами уровня "не устанавливается и не работает хреньнейм, что делать?" вместо приятного обучения и начальной разработки. Место закончится очень быстро.
>>800847 Питон нет, но потом ты установишь какой-нибудь QT или другую полезную и нужную штуку, и гигабайт 5-10 просто испарятся. Впрочем, виртуальный диск можно расширить, не сильно посношавшись. Пока не забивай голову.
>>800847 Как по мне, меньше 100-200 не стоит ставить. Не исключено, что тебе вообще придется дублировать инструменты разработки и в винде, и в линуксе. Особенно, если планируешь пользоваться виндой, как основной и дальше.
>>800853 Например, вдруг тебе захочется написать скрипт, который автоматически рассортировывает твои папочки с детской порнухой по одним углам, а ярлыки - по другим.
>>800851 Я уже 5 раз машину перезапускаю, никак установить не могу >>800853 Печально что могу поставить на системный диск, так что и основа бедет тормозить и машина (как сейчас)
Хоспаде, что за шизики наполнили тред, одни обсуждают в чем разница между return и print, второму дауну мало 20ГБ для поиграться в коляске которую третий даун не осиливает, что за пиздец тут сейчас творится? может компуктер вообще не ваше, если такой хуйней срете?
>>800864 Дам тебе уберполезный совет для винды. Сделай себе папку на рабочем столе или где тебе удобнее хранить свои творения. И сделай переменную окружения PYTHONPATH, пропиши путь к папке там. Это очень сильно облегчит жизнь. Можно и путь к рабочему столу туда внести заодно, если ты любитель срать на видном месте, как я. Что это даст? Ты сможешь запускать свой код, просто введя название файла. Не пописывая каждый раз cd "нужная директория с файлом".
>>800876 Но то говно хоть как-то относится к петону, в отличии от твоего нытья. Или, может, ты на какой-то вопрос тут ответил, и ответ утонул в мусоре? Или задал? Нет, ты просто ноющий пиздабол.
>>800864 не отчаивайся если что то не получается, это нормально, иногда нужно вдумчивое чтение. я еще несколько дней буду заходить, пиши, спрашивай, но я жду вопросов в контексте запущенного python под *nix. мы же последовательны, правда? и не обращай внимание на снобов, снобы имеют психологическую особенность забывать когда они пешком под столом срали.
>>800896 некоторые ставятся бинарником не самой последней свежести, а некоторые прямо в доках пишут: normal used on nix*, sorry, but wondows is send citizen system. например pyzmq, кстати, рекомендую.
Правильно ли я понимаю, что нет никакого смысла делать multiprocessing.Process.join(), если код там ничего не должен вернуть? Например, просто бесконечный loop? Какие негативные стороны в этом случае? Если я сделаю join процесса с loop - основной бесконечно зависнет?
>>800913 насколько я понимаю, join нужен не для того что бы что то вернуло результат, а для того что бы удостовериться что задача "форкнутая" в процесс должна выполниться до исполнения следующей после multiprocessing.Process.join() инструкции.
>>800922 на что ты скачаешь? ты же не установил еще нихуя. можешь с виндой пердолиться, но это не ко мне, потому что когда пойдут вопросы: а чо это у меня юникод декод еррор, или системпаф какой то корявый, или как мне поставить эту либу но ее почему то хуй найдешь под винду, я сразу сратьебал. ты чо дохуя мистерроботом себя возомнил? бери самый тупой для самых даунов туториал и делай по нему.
>>800917 Можно и так сказать. Возвращать что-то действительно необязательно. Но если задача бесконечная - эта самая "следующая" инструкция никогда не выполнится. И даже не будет возможности ее прервать из основного процесса.
>>800923 >юникод декод еррор А как по мне это очень полезно, добавит знаний о кодировках, и как с ними работать. А в третьем питоне это еще меньшая проблема, ибо теперь все строки юникод. Наверное, только на винде можно сполна навернуть ненависти к строкам 2 питона, если этим питоном там пользоваться.
>>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); быстрафикс
Пацаны а какой дистр накатить себе? Сейчас стоит убунту последние года два, до нее просидел пятерочку на фрибсд и слаке. А как-то ебаться в конфиги уже не хочется, а убунту 14 перекинутая на новый ноут поддерживает частично, короче надо чего свежее. Спросил бы в s но боюсь охуеть от анальных клованов
>>800914 Не еби головы человеку, все все прекрасно видят, покрайне мере в vmware. В виртуалбоксе помню были траблы, но я вам что скажу - виртуалбокс юзать - говно жрать. Сам его на протяжении нескольких лет работы юзал, привык что ли, мирился с кучей косяков думая что везде так. В итоге как то попробовал vmware когда бота для игры писал(а говно бокс вообще не умеет ничего 3д запускать, да он вообще ничего по сути нормально не умеет). Тут тебе и с сетью никаких траблов, и буфер обмена между хостом и гостем нормально работающий. Короче прекращай жрать говно и удаляй виртуалбокс, как человек на нем 2 года просидевший говорю.
Даун который не могет настроить убунту в виртуалбоксе в треде? Мне влом все читать, объясни нахуй ты ее ставишь и чего хочешь. Питон3 и в винде охуенно работает из командной строки, есть pip что бы прям как в линуксе устанавливать дополнительные библиотеки 1 строкой "pip install blablabla", нахер тебе линкус ставить? Хотя судя по твоему уровню подкованности, тебе и правда не лишним будет разобраться чутка хотя бы в этих вопросах, но питон можно учить и использовать и без этой гомоебли И имей блять совесть, весь тред засрал, он твою мать не виртуалкам и линупсам посвящен. Сначала гуглишь, думаешь часик другой, и если ничего не получается то спрашивай, подскажем, а не при каждом затыке сразу в треде срать, ты же уебок даже гуглить не пытался решение своих проблем? Колись блять.
Код вбрасывать в тред через https://ideone.com/
Прошлый: