>>1126441 Попрбовал сделать и выдало None Но если вместо pywin32 написать win32api, то он выдаёт следующие: ModuleSpec(name='win32api', loader=<_frozen_importlib_external.ExtensionFileLoader object at 0x000001BC082D3E48>, origin='C:\\Users\\username\\AppData\\Local\\Programs\\Python\\Python36\\lib\\site-packages\\win32\\win32api.pyd')
Если запущен питон скрипт и я знаю его PID, могу ли я через консоль в него что отправлять в линуксе. И как обработать это в самом скрите? через sys.stdin?
>>1126577 Мне кажется, самым простым вариантом будет создание следующих компонентов: 1. Веб-сайт, позволяющий загружать новые и просматривать имеющиеся фотографии, причём при загрузке новых идёт проверка на дубликаты (т.е. одно и то же фото не разрешается, только если качество лучше и т.д.) Django/Flask + немного JS'а понадобится. 2. Скрипт, который будет грузить на фри-ланс сайты запросы на "нахождение фотографий такой-то актрисы, ещё не имеющихся в базе". asyncio, urllib, requests + paypal/yandexmoney и прочие платёжные модули. 3. Web scraper, который будет лазить по всем повозможным и невозможным сайтам, качая рандомные картинки в надежде, что они окажутся нужной (неверные будут просто отвергнуты валидатором). scrapy может помочь, плюс база данных для хранения адресов и хешей уже проверенных изображений: sqlite, pymongo, postgre, bulbs, миллионы их, выбор типа будет зависеть от того, как данные хранить будешь, можешь в тред баз данных заглянуть. 4. Некий алгоритм прогрессивной шкалы оплаты, берущий во внимание количество и скорость поступления новых фотографий, а так же их качество. Тут книжки по алгоритмам и экономике нужно читать, сам найдёшь. 5. Собственно, скрипт-валидатор фоторафий, самая интересная часть. Это может быть и нейроночка (pybrain, keras, pytorch, theano, миллионы их), могут быть использованые какие-либо стандартные алгоритмы из dsp, типа кросс-корреляции, для выясняния, одинаковые ли фотографии (scikit-image, opencv bindings), а можно воспользоваться уже имеющимися наработками из пункта 2 и нанимать индусов для ручного сравнения. Разумеется, лучше всего будет каскадно использовать все три варианта, если результат не очевиден или близок к некоему порогу. 6. Пункт 5 работает с дубликатами, но что мешает загружать других актрис, а то и вовсе левые картинки? Опять же, либо целиком на индусов положиться, либо сначала на индусах набрать базу, а затем нейроночку обучить, которая будет затем классифицировать новые изображения. Ну и плюс индусы в спорных моментах никуда не деваются. Боже, где б мы без инудсов-то сейчас были!
Ну вот примерно такого плана можешь придерживаться и рано или поздно всё получится.
Единственное только, твоя коллекция будешь лишь стремиться к полной, т.к., во-первых, если он ещё жива, то будут делаться новые фото (хотя хуй знает как там у тебя интересы), а во-вторых, есть вероятность наличия каких-либо фото, которые никто из отозвавшихся так и не скачает.
Блять, что за пиздец, вроде ж не лето и не каникулы, откуда вы такие понабежали? Уже второй тред к ряду куча идиотских вопросов от недалеких овощей. >>1126616 Бери и учи синтаксис + стандартные библиотеки и думай,нахуй,думай, пригодится по жизни. А сюда приноси сложные вопросы, которые не смог нагуглить и вычитать в доках.
>>1126623 Делал нечто подобное. Только я выкачивал с сервера фотосеты по студиям, запоминать предыдущее состояние и потом проверять на новые сеты. Пиши почту, может помогу.
>>1126674 resp.decode() вместо str(resp). str() не декодирует байтовую строку, а просто отображает каждый байт отдельно, как если бы ты просто print(resp) сделал.
своим str ты конвертируешь байты прямо в строку, поэтому надо делать примерно так: request.urlopen("https://2ch.hk/s/res/2238873.html").read().decode('utf-8', 'ignore')
actually, меня в своё время эти bytes доебали тут правильно говорят >>1126675
Карочи, я тот анон, который вчера пытался установить win32api. Если кому то интересно - мне удалось. Проблема была в whl файле, из которого ставился пакет. После установки пакета не запускался какой то пост-установочный скрипт, который должен был ещё несколько dll файлов установить. Решил проблему, скачав вместо whl файла экзешник с гитхаба и установил с него. Всё заработало. Всем спасибо все свобободны
Я осилил установку Qt Designer'a. Сейчас эта тулза называется Qt Creator, входит в комплект всего SDK и обычно инсталлятор выкачивает из инета необходимое. Но можно скачать Qt5 одним файлом по секретной ссылке: http://download.qt.io/archive/qt/5.10/5.10.0/
Поставить расширение для питона набрав в консоли: pip3 install PyQt5
Запустить QtCreator создать New Project c параметрами Application, Qt Widgets Application, когда откроется текстовый редактор с кодом, переключится на дизайнер можно в menu, Tools, Form Editor, Switch Source/Form. Сделать дизайн приложения, сохранить как widget.ui и перейти в директорию с ним и конвертировать его в питон командой в консоли: pyuic5 -x widget.ui -o widget.py
Анон напомни, почему библиотека для вк пробовал vk_api, vk (dimka665) постоянно дает Bad Password? Нет. Очевидно я проверял пароль только что. У меня такие догадки: 1. Вк охуело от 200 запросов в день и исчерпанного лимита постов в группу и забанило авторизацию по приложению. 2. Вк охуело от 4 акков с одного компа и забанило авторизацию по приложению. оффтопом >>1126370 как ты яму читаешь? дропнул, когда услышал про ТОЛЬКО ОДНО НАПРАВЛЕНИЕ и про пидарастию-карьеризм менеджеров
>>1126456 (OP) https://ideone.com/ADVRQX По задумке должно создавать по планете в каждой системе и пихать их в лист системы, а на деле каждая планета лезет в лист другой системы, и получается ситуация, что в каждой системе лежат ссылки на все планеты в галактике. Даже не знаю, где я обосрался, в других языках такое решение емнип должно было работать.
>>1127174 Так ты зачем список planets сделал классовым у StarSys-то? Там хоть len(StarSys.planets) в конце можешь сделать, те же 3 планеты и вылезут. Про классы и атрибуты, а так же __init__ почитай где-нибудь.
Есть текст, допустим, про биполярные транзисторы. Я хочу заменить все упоминания про них - капсом, с большой буквы и с маленькой - на слово "ЗДЕСЬ". Пишу для первого слова:
Т.е. в питоне мы скопировали только код, а для работы продолжений нужен весь стек. Скопировать его, может, и не проблема. Проблема в том, как текущий стек заменить на нашу копию?
>>1127476 Окей,спасибо. Совсем забыл про них. Обясните,пожалуйста. Вот проверка условий if\else. В моем данном случае, с этой конкретной простой задачей: как обозначить, что при одном условии будет значение Y, а при другом условии Y*1.5?
Кто нибудь пользовался pyqtdeploy? А то я создал проект, указал все нужные мне зависимости, указал путь к моему скрипту, а вкладка Build у меня просто отсутствует! Что за нах? На этой вкладки должна быть кнопка, которая запустит построение приложения, но у меня нет этой вкладки!
>>1127473 Тебе не кажется подозрительным, что hrs=rte стоит перед тем, как ты объявил rte?
>как обозначить, что при одном условии будет значение Y, а при другом условии Y*1.5? Ну, э, if для того и сделан. В теле одной ветки присваиваешь одно значение, другой — другое.
>>1127572 Хули ты двочиюешь, гнида? Я прочёл всю документацию по androidhelper'у, но нихуя нужного не нашёл. Единственное, метод notify выглядел немного похоже на то, что мне нужно, я его попробовал, но он нихуя не вывел на экран.
Сап, укротители змей. Недавно вкатился в питон, а руки так и чешутся что-нибудь сделать. Для себя решил, что первой моей задачей будет - создание маленького блога. На какой фреймворк сесть?
>>1127152 Ну так "Яма" и не про это. Она про эти ваши биопроблемы тащемта, а я сейчас в них по уши. Да и читаю я не быстро, смакую. Классика всегда трудновато шла, я себя иногда заставляю. Вдобавок я почти полтора года ничего сложнее методичек из универа не читал. Технические тексты идут лихо и без лишних мучений. Алсо есть вопрос по поводу этой хрени, что на пике. Запустил и там всё с самых азов начинается. Только вот интерпретатор не пашет. Не могу понять в чем дело.
>>1127634 Саша-саша. Тебе мама не говорила, что не следует использовать пидораший язык в работе со сложной техникой? Заводи пользователя латинскими буквами, или переставь все в нормальную директорию.
>>1127636 >не следует использовать пидораший язык в работе со сложной техникой? Заводи пользователя латинскими буквами, или переставь все в нормальную директорию. Говорили, но я забыл, спасибо за помощь.
>>1127641 TL;DR: Тебе меньше всего придется реализовывать вручную. Встроенные в либу/стандартную библиотеку/етц. фичи, методы и прочее. В крестах ты, например, не распарсишь ХТМЛ, в отличие от бидона.
В Джанго, например, есть работа с БД как с моделями данных, в отличие от того же Tornado.
>>1127491 >В моем данном случае, с этой конкретной простой задачей: как обозначить, что при одном условии будет значение Y, а при другом условии Y1.5? if hours > threshold: ____rate=1.5Y else: ____rate=Y pay = hours*rate
>>1127805 http://faster-cpython.readthedocs.io/notes_2017.html В какие интересные страницы ты меня завёл. Очевидно что в пыхе переработали основную объектную структуру, zval, я даж доклад смотрел, меньше хопов, меньше промахов в кэше, быстрее пыха. В питонах то ли нарочно этим не занимаются, то ли некому. Там вроде бы Армин когда-то слоты критиковал.
Вкатываюсь в пайтон (2.7). Нихуя пока не знаю, но хочу сразу начать писать красиво и элегантно. Нашел старые задачки. Так вот, вопрос, как дописать пикрел для рассчета порядкового номера введенного дня в году (365 дней, високосный не считается), чтобы это не было похоже на говнокод? Мб создать массив с количеством дней на каждый месяц?
>>1127813 >начинающий программист >фото экрана Вам тут не рады.
>Мб создать массив с количеством дней на каждый месяц? Да. Или можешь, например, вычитать из текущей даты 00:00 1-ого января этого года, а затем делить на 86400 (секунд в сутках).
>>1127813 Тебе принтскрин клавишу придумали, а ты что творишь? А если надо пктивное окно сфотать, так это нажимай альт+принтскрин. В дрисяточке клавиша вин-шифт-эс как доллар делает принтскрин области. На харкач удобно сразу постить кинув из буфера.
Я долблюсь в глаза и не нашёл вопрос-ответ треда, нужна помощь: есть ssh доступ к удаленному серваку, на котором лежит питоновский скрипт. Естесно доступ только при помощи терминала. А мне сказали возьми этот скрипт да измени. Вопрос: это что, нужно этот скрипт обязательно закачивать на свою ПеКу и работать с ним у себя, или можно как-нибудь редактировать исходники через терминал на удалёнке?
>>1127904 чем это поможет? все равно возвращает значение,которое я ввел первым. а насчет лен стр хуй - мне нужно проверить длину числа,а не его значение
Смотрите какая хуйня. Эта строчка создаёт одинаковые кнопки в tkinter, которые отличаются только текстом на них. Через map применяется функция определения экземпляра класса Button для каждого элемента списка, но с разными атрибутами text. Теперь такой вопрос, как сделать то же самое, только для метода? Вот есть список экземпляров как на пикче и к ним надо применить метод, у которого также ряд параметров одинаков, но отличается только один атрибут. Можно это записать аналогично? Как в одну строчку применить метод к каждому элементу списка я знаю, надо что атрибуты были разные для каждого элемента.
>>1127982 Это не класс. В питоне переменные объявляются там где они впервые появляются. a = 1 а = 0.1 а = 'a' Здесь а - это адрес к объекту, причём тип может меняться динамически, в отличие от джавы, где тип переменной надо указывать изначально. Вот это 1 тоже объект, но без адреса к нему ты обратиться не сможешь.
Так ебнана, а ну быстро объяснили мне как правильно байтоебить на питоне. Допустим есть файл, я его открываю побайтово и провожу операции с этим байтом, ворочаю битиками взад-вперед, потом вывожу измененные байты в другой файл. Как это выглядит на питончике?
Няши, как всегда тред не читал и задаю вопрос (который уже по-любому задавали). Где можно купить книги М. Лутца Изучаем и Программируем на Python в печатном виде? Букс.сру давно сдохли и только наебывают, а книг никаких не высылают. Сайт издательства в РФ поздравлял последний раз всех с Новым 2013..., т.е. тоже давно РИП. На озоне только электронный вариант. Я в панике, памахите
>>1128009 ХАХАХА, ну ты выдал. Я понимаю, наяшная идеальна для байтоебства, но питухон ведь тоже язык якобы, а значит позволяет это безобразие вытворять гораздо проще, судя по идеологии.
>>1128038 Ну с бумаги лучше запоминается прочитанное, имхо. А на русском, потому что читать техническую литературу на английском для меня тяжелее, чем на родном.
>>1128060 Не, код я сам хочу писать, для этого и нужны эти книжечки. Я так понял вариантов у меня нет и Лутца на русском в печати просто нет. Увы и ах.
Нюфажина итт. Подскажите насчет рыночка, есть ли место питонисту самоучке что бы не сосать хуй с гречкой? И еще интересует какие основные области разработки. То что сценарии и новеллы на ренпае это понятно, но куда еще можно пойти в 2018 году и в последующие годы? Спасибо.
>>1128080 > есть ли место питонисту самоучке что бы не сосать хуй с гречкой? Только если ты из ДС, ну или Питера на крайняк. В остальных случаях сосешь хуй из-за отсутствия вакансий, тем более для джуна.
>>1128090 Я сам хохел, но сосать хуй за гроши не хочу. Вообще мне бы просто вкатится как обычный разработчик за обычные нормальные деньги и просто себе работать плюнув на все рыночки и прочее. Чтобы ШТАБИЛЬНО было все. Такое вообще реально еще или лучшие годы для питонистов кончились и надо переобуваться?
Аноны, пользовался кто связкой Django + Ajax? Не могу никак обновить результаты на страницы. Реквест на сервер приходит, джанго рендерит в строку шаблон таблицы с обновлёнными данными, HttpResponse отправляю назад всё это дело ...и нихуя. Ах да, сто ит сказать, что во вкладке network ничего нет, хотя в джанге явно вижу пришедший ГЕТ запрос с параметрами.
Реквестую самоучитель по притону в картинках. Никак не могу усвоить его массивы. Анон, доставь картинку где все разновидности массивов питона разьяснены.
С недавних пор в пифон треде наблюдается три лагеря: 1. Дауны-неосиляторы, которые пытаются вкатиться, но хотят чтобы телегу толкал кто угодно, но не они. 2. Дауны-перебежчики с других языков, которые закостенели в своём статик тайпинге и как и первые не могут научиться ничему. 3. Нормальные пацаны, которые зачем-то отвечают первым двум, тем самым увеличивая их надежду на то, что телега таки сама вкатится в гору. Что это за хуйня?!
>>1128172 Для мартышек, которым нужна палка, которая будет бить по рукам конечно. Нормальный разработчик не будет уверен в том, что его код правильный если он просто скомпилировался. Статико-мартышки же считают это за аксиому и их основная тактика разработки это устранять ошибки, которые выдаёт компилятор.
>>1127885 >оно же в процессе проверки изменяется. Не изменяется. Внутри твоей функции есть всего одно присваивание значения переменной хуй, которую ты в конце и возвращаешь из фукнции. Да, ты вызываешь проверка1() ещё раз, но новое значение находится только в ней, после выполнения всё пропадает.
>>1128099 Руби отвратительная экосистема, там очень долгое время приветствовался манки патчинг. Работа есть только на рельсах но народ бежит с них в элексир. Учи питон он на порядок востребованней
сап аноны вкатывается в тред чел без технарьской вышки решил вкатиться в айти, начал изучать курс пайтона на кодкэдэми и по книге Зеда Шоу, после этого планирую уйти на платные курсы в топовую контору в РБ (ПВТ) какие шансы у человека без технического бекграунда получить работу разработчика на Пайтоне?
>>1128243 Ну, 2.5 процента, ёпту. Покажи мне хоть один нормальный проект на гитхабе с аннотациями. У нас в проекте используются аннотации только в тех местах, где пичарм не справляется чтобы подсказки по методам выдавал.
>>1128228 Почему бы и нет. Здесь такие изъёбы нахуй не нужны, я знаю. Но во всяком случае будут навыки использования такого метода. Я не знаю почему он показывает ошибку, несмотря на то что всё работает. Видимо, ему не нравится что я в мапу засунул три переменные.
здарова питомники. На связи очередной вкатыватель в погромирование, коих вы тут уже повидали хуеву тучу. Короче после проб разных работ я понял - максимальный интерес у меня только к кудахтерам и к тому, что с ним связано, поэтому я все таки решил научиться ебошить hello world и делать 22. Вкатываюсь в первую очередь ради интереса и только потом ради каких то денег, если ебало не треснет. Начал с чтения книги Марк Лутц Изучаем Python. Далее планирую прочитать Того же Лутца Программирование на Пидон. Какие вообще можете дать советы, наставить юного ебаната, как лучше обучаться ну и вы короче поняли. 23 лвл.
Вот допустим я начал наворачивать книжки, а как практиковаться? Скилла для проектов, которые я хочу написать пока у меня недостаточно скилла, а без практики я вряд ли что-то запомню. Как анон закреплял свои знания вначале пути?
Как канонично сделать замыкание в питоне? Гугл забит сравнениями с Clojure, сукапздц. Пока ебошу уродливое говно типа `(lambda x: (lambda y: x + y))(x)`
>>1128451 Всё просто. Во-первых, есть frozenset, который хешится. Во-вторых, сеты удобны когда нужно проверить наличие элемента. Проверка `x in y` когда "y" list по алгоритмической сложности О(n), проверка когда "y" set/frozenset/dict O(1).
Не знаю, по каким словам гуглить и есть ли вообще что-то подобное. Мне нужно несколько независимых экземпляров питона, каждый будет работать со своими .py файлами по своим путям. Кто-то заморачивался подобной идеей? То есть, нужно что-то типа такого: instance = Py_Initialize(); И каждый вызов функции будет, например, таким: PyImport_ImportModule(instance, "module_name"); Ещё одна проблема - для версии 2.7.
>>1128536 Не знаю, что это. Почитал бегло, как мне кажется, это совсем не то. Мне нужно, чтобы несколько интерпретаторов работало в одном приложении. Искал не по тем словам. Надо было multi interpreter, а не multi instance. https://stackoverflow.com/questions/26061298/python-multi-thread-multi-interpreter-c-api В общем, это очень не тривиальная задача. Но возможность хотя бы есть. Только не понятно, есть ли возможность одновременной работы разных интерпретаторов, раз уж для каждого создаётся свой отдельный поток.
>>1128549 Надеюсь, ты одновременно, учился читать на английском языке, так как кроме джангогерлз больше нет книг на русском языке. А так заходиш на тот же рутрекер, вбиваешь в поиск django и вуаля 100500 книг и видеокурсов по джанго. Стоит ознакомится с книгами django by example, two scope django 1.11
>>1128501 Ага, спасибо. Но я уже другие костыли нагородил.
Докладываю о общих впечатлениях от байтоебства на питоне. Если кратко суть - пиздон ужасно, ужасно тормозной что пиздец. Использовать его где-то в реальных задачах ну крайне не желательно, это игрушечный язык для деградации обучения, ориентированный на интеллектуалов среди умственно отсталых, нормальный человек не будет кодить на нем что-то больше прототипа. Фуух, вроде полегчало немного.
Что я делал. Есть один ведрофон который имеет вроде относительно удовлетворительную камеру, но снимки получаются зашакаленными вусмерть. Телефон может снимать в raw из инженерного меню, но этот raw-формат проги не понимают. Появилась идея и интерес написать простенький проявитель равки. Выбрал я значит питон на свою голову и приступил, разобрался как хранятся данные в равке, как их извлекать и адаптировать к выводу в виде bmp формата. Узнал какой там фильтр Байера, столкнулся с необходимостью делать коррекцию баланса белого по серой карте, накостылял для этого отдельный скрипт, ну и придумал алгоритм простейшей дебайеризации с учетом соседних пикселей. Получилось неплохо, фотки стали значительно четче, но работает ужасно медленно, лучше бы на сишке попробовал написать.
>>1128773 Интерес есть. Вот я до этого полностью не понимал зачем при установлении баланса белого нужна серая карта, а теперь понимаю - при съемки серой поверхности матрица не пересвечивается, а значит можно корректно установить какие фильтры сколько пропускают света.
>>1128787 Добавлю, что числоебство это тоже не задачи для питона, даже комбайны типа numpy не дают такой же скорости как сишка, в науке его используют из-за простоты обучения ученых, которым нахуй не нужно думать о чем-то кроме абстракций
>>1128770 Еще есть куда оптимизировать с использованием специализированных библиотек, может откомпилированных. Ну, а если тебе хотелось попробовать что-то новое и при этом быстрое - Rust.
Сап. Аноны, я ни разу не программист. Т.е. я никогда не занимался этим профессионально, просто иногда пишу простые скрипты на python для автоматизации рутины. Это я к тому, чтобы вы не кидались в меня говном. Вопрос: итераторы, генераторы, декораторы, ХУЯТООООООООООРЫЫЫЫЫЫЫЫ БЛЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯТЬ! Что это за хуйня ЕБАННЫЙ В РОООООООООООТ БЛЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯТЬ! Нахуй нужно все это говно, как оно блять работает я НЕ ПО НИ МААААААААЮЮЮЮЮЮЮЮ БЛЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯЯТЬ!
Сука блять. Фуу нахуй. Объясните мне по-человечески на примерах блять из жизни. Что такое итераторы/генераторы? Нахуй они мне нужны то блять? Какой профит сука?????? Можно на аналогиях из жизни. Сил моих больше нет...
>>1128885 ты же блять вне метода. декларируй метод, напиши def my_method(self): и тогда норм будет. А если ты хочешь вне метода общий атрибут класса объявить, тогда без self. Кстати, хули у тебя пайчарм так распидорасило? Стрелки, блять, какие-то в отступах. Вообще охуеть.
Конечно понимаю, что шансов мало... Ну а вдруг? Ищу рабство в ДС без какой-либо оплаты на фулл тайм чтоб пахать как конь. Из знаний на данный момент прочитанный "Изучаем питон" Лутца, немного документации и опыт работы на C++ в НИИ. Решил укатиться с НИИ так как понял, что кресты могут стать для меня могильными. Все же разбираться по ходу дела продуктивней, чем сидеть полгода в книгах, поэтому и ищу рабство. Если кому нужен раб пишите [email protected]
>>1128889 стрелки это табы а мап нужно только 1 раз создавать и потом в других методах писать self.map[command](args) не думая какой текст в command. если его в метод впишу, то он будет при каждом запуске инициализироваться
>>1128900 >писать self.map[command](args) не думая какой текст в command. если его в метод впишу, то он будет при каждом запуске инициализироваться Зачем такие костыли? Ты решил аналог switch запилить?
>>1128770 >пиздон ужасно, ужасно тормозной что пиздец. Ну ты, конечно, и ёбу дал. По два байта с диска читать (ладно, питон там сам, насколько помню, такую тупизну оптимизирует и бóльший кусок сразу в память загружает), 13 миллионов раз аппендить в список (в сишке тоже realloc нахуярил бы в каждой итерации?). Может, хотя бы в сторону матриц и операций с ними стоит посмотреть, а не хуярить вот это вот говно на 100 строк? Вот, накалякал первую часть за полчасика — https://pastebin.com/jqzPzYUV сократив время с 17 до 0.6 секунд. И это на чистом питоне
А если поступить как разумный человек и взять numpy — https://pastebin.com/x9ggwR3U — то получается 0.06. В 280 раз быстрее изначального. Так вот, может быть тормоза-таки у тебя в голове, а не инструменте?
Можешь попробовать свою кашу на си переписать, интересно было бы замерить, мне уже лень как-то. (Вряд ли прям уж сильно быстрее, чем в нампи выйдет, может раза в два-три.)
>>1128793 >даже комбайны типа numpy не дают такой же скорости как сишка Не дают, иногда нампи даже медленнее чистого питона выходит, но эта скорость вполне достаточна для того, чтобы значительно сократить время написания программы и иметь при этом достойное время расчётов, при этом не ебать мозги с сишкой. Разумеется, там, где нужна максимальная производительность, когда одно и то же нужно тысячи раз считать, а не на пару раз скриптик, там да, на видео-картах всё равно всё делать будут.
>>1128885 Там, куда ты пытаешься свой map впихнуть, никакого self'а не существует. Создай какой-нибудь метод make_map, вызываемый в __init__'е, и в нём уже создавай этот свой map.
>>1128902 >Без фреймворка ты букашка! Потому я и готов работать за 0р/месяц первые пару месяцев т.к. я почти без знаний. Думаю практически нереально найти такое, но чем черт не шутит.
>>1128866 итератор - чтобы итерировать по итерируемому
У тебя есть очень длинная строка, тебе надо по ней пройтись сначала по четным, потом по нечетным позициям. Ты можешь содзать две новые строки и сожрать памяти, а можешь создать итераторы, которые будут отслеживать твою позицию в строке (1 инт) и возвращать каждый следующий четный-нечетный символ. (1 символ). В результате расходов - 1 инт, 1 символ, еще памяти для итератора.
или обработка файла - вместо того, чтобы читать сразу весь файл и обрабатывать данные, ты хранишь текущую строку/позицию в файле при помощи итератора, при каждой итерации позиция сдвигается, тебе итератор возвращает новые данные.
генератор - что-то вроде многоразовой функции с паузой. Ты ее вызвал раз - она отработала и вернула значение. Вызвал два - начала с прошлого места и вернула новое значение. Также есть генераторные выражения, вместо списковых.
декоратор - способ добавить к функции новую фичу (логирование, измерение времени выполнения, обработка аргументов какая-то), не изменяя код самой функцию
ЧЯДНТ? Установил Анаконду, накатил PyCharm. Но он каким-то хуем не видит установленные библиотеки. Специально проверил pip'ом - нужные библиотеки на месте, в папке site-packages. А при попытке импорта - "сосите хуй, нет такого модуля".
>>1129092 pycharm обращается не к той версии питона, в в которой ты проверял библиотеки. which pip, which python, а затем в настройки pycharm'а иди и там ищи и чини путь к интерпретатору.
вот этот кусок кода отказывается работать под виндой. питон и фласк установлены. сервер просто не запускается. код сохранн в скрипт hello.py запускаю из консоли python hello.py бросает ошибку с intended block from flask import Flask app = Flask(__name__)
Посоны, есть ли польза от джанговских форм? А то они очень негибкими выглядят, слышал, что стильно модно молодежно просто плеваться json'ами между клиентом и сервером и о шаблонизаторе даже не думать
>>1128909 >По два байта с диска читать Ха, да, это проеб. Надо было все прочитать или кусочками покрупнее. >13 миллионов раз аппендить в список Ну так это же естественно, куда же еще аппендить миллионы раз, если приспичило. >в сишке тоже realloc нахуярил бы в каждой итерации Возможно. Но там же принято сразу указывать сколько нужно памяти, а в питоне можно положиться на интерпретатор. Или ты намекаешь что питоне можно тоже выделить нужное место? >накалякал первую часть за полчасика Удивительно. Так основные тормоза значит были в чтении по два байта. А второй скрипт как оптимизировать? В какую сторону копать? Там тоже сразу грузим файл в память в нужном виде, а потом обрабатываем данные с помощью матриц? Хмм, интересно. >взять numpy Пока попытаюсь оптимизировать в чистом питоне.
>>1129450 Видно, правду говорят: кодеры страшно ограничены мозгами. Поставить Убунту и научиться работать в командной строке у тебя хватило ума, почему же здесь ты задаёшь такие вопросы. Или у вас в городе нет обыкновенных вакансий?..
>>1129431 >а в питоне можно положиться на интерпретатор. Ну так а откуда ему знать, сколько тебе в итоге нужно, вот он периодически и увеличивает размер выделенной памяти. Конечно, далеко не каждую итерацию там realloc вызывается, да и не так уж смертельно сильно оно влияет на этих размерах, я немного погорячился, возможно.
>питоне можно тоже выделить нужное место? Явно нет (ну, разве что список из None'ов сначала создать), но list comprehension'ы работают быстрее как раз по той причине, что окончательный размер ему уже известен. Но это ещё будет зависеть ещё и от того, что там, собственно, делается. https://repl.it/repls/UltimateHollowFlycatcher
>Так основные тормоза значит были в чтении по два байта. Не только. f.read(2) - ~20% vaue = int(data[::-1].hex(),16) - ~35% и остальные 45% времени шли на += и if'ы. Это тоже всё не быстро делается.
>А второй скрипт как оптимизировать? Ну, примерно то же самое. Найти способ обрабатывать данные сразу кучей, обычно за счёт матриц, да. Без них вообще в dsp делать нечего, по-хорошему. Однако, без numpy не сильно там разгуляешься. А не дашь один оригинал своей равки, может тоже поиграюсь в свободное время.
>>1129461 >почему же здесь ты задаёшь такие вопросы. Мне кажется, у него был риторический вопрос "почему создатели теста такие слепошарые разгильдяи?". Действительно, при чём тут вообще вакансии какие-то?
>>1129465>>1129474 Потому, что создатели этого теста живут за счёт родителей тех, кого «нанимают на работу». Слишком много на сегодня очевидных вещей, кажется. Хватит.
Задам глупый вопрос. Почему python стал популярным? Он же интерпретируемый и работает медленно. Pascal уделывает его по скорости легко. А на pascal даже сайты писать можно. http://wiki.freepascal.org/CGI_Web_Programming/ru Паскаль простой, быстрый, компилируется под все платформы. Зачем нужно было вкладываться в python? Почему бы не вложились в разработку pascal? Хотя, pascal и так хорош. Только для веба не так много наработок. Может, есть какие-то новшества в языке python? Существенные различия? ООП на free pascal тоже есть.
>>1129536 Насколько я знаю, на 8-битных компьютерах Бейсик был популярнее Паскаля. Он и автоматизатор, он и калькулятор, он и текстовый редактор, он и игрушка для гиков. На Искре-226 кое-кто и бухучёт писал на нём, аффтар ещё заходит на RSDN, дааа
>>1129536 Добро пожаловать в удивительный и странный мир программирования, где кроме скорости есть еще тысяча других свойств, которые очень важны. конкретно питон взлетел благодаря отступам, а руби благодаря логотипу
>>1126456 (OP) Допустим, у меня есть список списков напитков, например, list1=[vino, vodka, pivo]
как, не пользуясь доп. переменными (список имён списков), можно вывести именно название, не содержимое элемента, т.е. list[2]->pivo, а не list[2]->'светлое', 'темное','безалкогольное'
ideone.com/yjv1tj Это начало программы. Скорее всего, проблема где-то тут, потому что через длительное время вылетает с MemoryError на 10-й строке. Т.е. похоже на то, что программа без остановки добавляет в список tetrahedrons новые элементы и в итоге места не хватает, но я просто в упор не вижу наверняка очень глупую ошибку (не программировал около месяца).
анотшки, злой пиздец, щас нахуй сломаю что нибудь что за хуйня с саблаймом 3 под маком? Проблема с кодировкой, питон 3.6, по дефолту стоит utf-8. Что происходит-то?
>>1129536 Pascal - под винду. А кто делает ОС - тот делает и язык для неё: Microsoft Vusial Basic, C#, C++. Python - под линуксы, а их делают многие и у него своя прочная ниша. Кроме того, вебсервера тоже ведь на линуксе работают. Для веба чем медленней язык - тем лучше. Никто в здравом уме не станет создавать сайт на С.
>>1129968 Но инстанс-то будет создан правильно, не? Мало ли что там затирается и чему присваивается. Ведь не скажешь же ты, что просто "Firm('as',12)", без "x = " это некорректное создание инстанса? Может этот код внутри какой-то функции выполняется и ничего не затрётся, может там специальный класс, позволяющий так делать ( https://repl.it/repls/EntireSevereRainbowtrout ), а может и стоит цель затереть описание класса. Вопрос некорректен, потому что нет критериев правильности.
>>1129990 Это нормально для тестов апворка. Раскрою пару секретов индусов: там надо пробами и ошибками проходить пока не выяснишь правильные ответы на все вопросы. Потом берёшь и проходишь идеально с основного аккаунта.
>>1126456 (OP) Можете подкинуть что-то вроде python cookbook, где описывались бы НЕ структуры данных и прочая фигня, а конкретные задачи и их реализация? То есть книга для тех, кто вводный курс осилил, но не получается всё ещё самостоятельно работать.
Суть работы в двух словах: ватермакра делается тогда, когда в темлпейте прихярено |watermark: 'Zaluppa' . Всё хорошо работает, но есть нужда отдавать пикчи с ватермаркой в джейсоне. Просто картинку отдать легко, а как хитроизъебнутся, чтобы она была с ватермкой - я не могу понять, потому что всё происходит, в темплейте, блять! Пожалуйста, если кто-то объяснит как мне провернуть наложение ватермарки - с меня тонны нефти.
В идеале - в админке есть галочка - если она V, то отдаю ссылку на пикчу с ватермаркой, если она О, то ссылку на пикчу без
>>1130072 >>1130073 Ну вот я почитал про C++ (некоторые основные структуры данных) и немного про алгоритмы и появилось какое-то интуитивное понимание некоторых вещей в Питоне. Я не знаю просто как это объяснить. Мышление становится более структурированным. Сам Питон понимается легче. Хз может так только по началу.
>>1130072 >>1130073 Ну вот я почитал про C++ (некоторые основные структуры данных) и немного про алгоритмы и появилось какое-то интуитивное понимание некоторых вещей в Питоне. Я не знаю просто как это объяснить. Мышление становится более структурированным. Сам Питон понимается легче. Хз может так только по началу.
>>1126456 (OP) Ой, ебал вас в рот, питоноблядей и джангоблядей... Это же до какой степени нужно быть дилетантом и полным долбоёбом, чтобы создать ТАКОЙ веб фреймворк, где нереально абузится инхеританс и темплейт паттерн. Создатели джанго видимо ничего сложнее веб магазинов и сайтиков-визиток не программировали. Просто ебал вас в рот, какая же хуйня. И нахуя я согласился делать дипломку по этой хуйне... Я просто ебал.
Ананас, если ты пилил ботов для телеги на питоне, то реквестирую твою небольшую помощь. При вызове некой команды одним из пользователей группового чата, клавиатура возникала у всех участников конфы. Увидел в доке, что, что это контрится передачей дополнительного параметра в ReplyKeyboardMarkup(..., selective=True, ...) при создании экземпляра клавы. Вроде все норм, теперь клава создаётся у одного юзера, НО: создаётся она у того, кто последний отправлял сообщение в конфу, а не у того, кто писал команду вызова клавы. Т. е.: есть юзверь_1 и юзверь_2. юзер_1: хуй юзер_1: /create #все норм, клава на экране у юзера 1
А теперь: юзер_1: хуй юзер_2: /create #клава, как и в первом случае, создалась на экране у первого пользователя
Думаю, опытных ботомейкеров этот вопрос не озадачит С меня, как обычно, нихуя
>>1130093 Там такое дело, что много языков в чём-то, особенно алогитмами, похожи. Непомание, как мне кажется, может возникнуть если ты тот же Хацкель откроешь, или Элексир. Но и тогда сами алгоритмы не поменяются. Это всё дело оформления
Сап двач. Парсю одну страницу, а результат записываю в файл. Затем нужно научить скрипт доставать из строки подстроки начинающиеся, например, с "[x1200]" и заканчивающиеся ";" . Читал что для таких задач хорошо юзаются регулярные выражения, но что-то под вечер туплю и не очень догнал, как в моем случае это правильно записать.
>>1130266 ну вот я поидее хочу прочесть файл, найти вот эти куски от [x1200] до ; и потом к этим кускам сделать кусок.decode('utf-8'), что бы их уже выводить дальше Правильный подход или можно лучше? з.ы. прогать недавно начал
>>1130260 regex - это отдельный язык, перекочевавший из perl во все языки программирования, не только в питон. Знать его очень полезно для работы со строками, но придется учить. Разъясню свой пример https://ideone.com/WvsopN >re.search(r"\[x1200\](.*);", s, re.IGNORECASE) квадратные скобки - это спецсимвол в регече, поэтому мы их эскейпим. внутри идет твой текст. Затем использованы круглые скобки. Они достают значение из строки. Внутри круглых скобок маска Точка значит любой символ, ежик - любое количество предыдущего символа. Наконец, твой семиколон закрывает выражение. Параметр re.IGNORECASE означает нечувствительность к регистру букв. Может в этом случае оно лишнее, но привычка полезная.
Существуют полезные программки помогающие составлять regex выражения. Напримерб Regex Coach, или Regex Buddy.
Аноны, почему при вводе a = [1,2,3] a.extend([i2 for i in a]) Мы получаем нормальный список, а при a = [1,2,3] a.extend((i2 for i in a)) Получаем MemoryError, разве генераторные выражения не должны работать подобным образом?. Почему добавление происходит на каждой итерации, а не после формирования?
>>1130288 Как я понял, extend сам итерирует принимаемую последовательность и на каждом шаге добавляет в список один элемент из нее, а поскольку количество элементов в списке растет, то генераторное выражение будет само идти по нему вечно, в отличии от уже сформированной последовательности в первом примере
>>1130288 Второй вариант приводит к тому что при каждой итерации лист экстендится очередным сгенеренным значением. Далее функция-генератор вызывается для удлиненного на одно значение листа. Программа зацикливается.
>>1130378 два варианта Нужно после ёжика воставить вопросик. Это так называемый "ленивый" режим поиска, когда срабатывает на первое найденное совпадение. Вот пример сразу с массивом result_list = re.findall(r"(?i)\[x1200\](.?);", subject)
но если у тебя файл очень большой, то можно обрабатывать построчно: for match in re.finditer(r"(?i)\[x1200\](.?);", subject) result = match.group(0) result1 = match.group(1)
>>1130159 У меня постоянное чувство, что джанговские рест вью сеты и сериалайзеры - это какое-то извращение, когда у тебя связаны руки и ты патешься сделать всё, чтобы из этих оков вырваться, понаписать 100500 хаков, заоверрайдить 100500 абстрактных методов, чтобы вот оно там в глубине джанго где-то смогло подхватить мои изменения. И это для базовых КРУД кейсов сука, когда мне нужно просто вытащить несколько ентитей и проделать какую-то логику с ними. >>1130148 Мамка твоя учится у меня сосать, я же пилю работу, которой занимаются чуваки из амазон авс.
>>1130474 Изначально язык замышлялся как инструмент для математиков и всяких учёных на хую верчёных. Оброс соответствующими библиотеками и дальше эффект снежного кома: хочешь что-то про науку - питон твой выбор.
Не могу понять где что не так, помогите пожалуйста. Нужно чтобы я указал вес луны и кол-во массы на которое будет умножаться вес. Нужно чтобы после Year, был вес который умножается с каждым годом на число, которое я задал как umno. Мне почему то выдает статичное число. https://ideone.com/k9WSgN
>>1130507 >Нужно чтобы после Year, был вес который умножается с каждым годом на число, которое я задал как umno. https://ideone.com/6CvLTq Фиксанул слёту. Не благодари.
Свой код кидайте через https://ideone.com/
Книги и ссылка на PyCharm: https://yadi.sk/d/tArKKuQu3Kejuq
Предыдущий тред
Python питон