Сохранен 501
https://2ch.hk/pr/res/1176187.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

PYTHON №12

 Аноним 18/04/18 Срд 19:45:00 #1 №1176187 
image.png
pomogach.webm
Не изучай синтаксис, изучай программирование!


веселый сайт https://sites.google.com/view/pypry/
скучный F.A.Q. https://github.com/TheKnightsWhoSayNi/info/wiki/Hat
для кода https://repl.it/languages/python3

Предыдущий тред >>1170797 (OP)


python питон пайтон vscode вскод
sageАноним 18/04/18 Срд 20:21:27 #2 №1176215 
Рака яичек тебе со своим сайтом и майкопарашей
https://yadi.sk/d/tArKKuQu3Kejuq
Аноним 18/04/18 Срд 20:27:34 #3 №1176230 
Какой наиболее простой способ передать строку из питона в функцию, написанную на си, там обработать строку и вернуть в питон?
sageАноним 18/04/18 Срд 20:28:30 #4 №1176231 
>>1176187 (OP)
Дублирую из прошлого треда, так как оп-пидор так и не ответил почему я должен выбирать vscode вместо pycharm, ведь

1)полная инспекция любой либы
2)тонко настраиваемая подсветка на любой случай, включая проверку совместимости кода для разных версий питона
2)удобный дебагер и профайлер
3)вызов докстрингов по клику на любой функции
4)интеграция со всеми возможными системами контроля версий с удобным разрешением конфликтов
5)диаграммы для асинхронного кода
6)подключение к базе данных
7)Подсветка и автокомплит для шаблонизаторов фреймворков, да и вообще интеграция с фреймворками
8)Настройка конфигов для тестов c сохранением истории и вызовом прогона отдельного теста одним кликом
9)Плагины на любой вкус Ну ладно, это и в вскоде есть
10)Деплой на удаленный сервер
11)Интеграция с докером

Это то, чем я пользовался в последнее время, все из коробки
Аноним 18/04/18 Срд 20:34:37 #5 №1176234 
>>1176187 (OP)
Требуется запустить экзешник, но сделать это под правами администратора. Как средствами Питона реализовать подобное решение?
Аноним 18/04/18 Срд 20:55:59 #6 №1176247 
>>1176231
Анончик, это все очевидно, любой редактор по сравнению с чармом кусок блевотины.Я чуть не кончил когда увидел диаграмму переключения тредов
Аноним 18/04/18 Срд 21:20:50 #7 №1176266 
123.jpg
>>1176187 (OP)
Освоился с азами Питона, начал потихоньку вкатываться в PyQt5. И это просто пиздец, какой же он безумно сложный. Нормальных мануалов нет, приходится выискивать информацию по крупице, и не везде поясняют, что за что отвечает.
Но что самое непонятное: почему импорт вида
import PyQt5
или
from PyQt5 import PyQt5.QtWidgets
не работает, блять.
Только так, как указано в примере, и никак иначе.
В противном случае not defined.
sageАноним 18/04/18 Срд 21:29:19 #8 №1176275 
14725012108040.png
>>1176266
>Но что самое непонятное: почему импорт вида
>import PyQt5
>или
>from PyQt5 import PyQt5.QtWidgets
>Освоился с азами Питона

Не освоился
Аноним 18/04/18 Срд 21:30:31 #9 №1176278 
>>1176266
>Освоился с азами Питона
>почему импорт вида from PyQt5 import PyQt5.QtWidgets не работает
Аноним 18/04/18 Срд 22:00:36 #10 №1176312 
>>1176275
>>1176278
Ой, блять, налетели, падальщики ебучие.
from PyQt5 import QtWidgets
Так вам понятнее, бестолочи? НЕ РА-БО-ТА-ЕТ
Аноним 18/04/18 Срд 22:06:42 #11 №1176321 
>>1176312
А ты его как устанавливал? Qt в системе есть?
sageАноним 18/04/18 Срд 22:14:18 #12 №1176331 
>>1176312
Дурачок какой. Не знает про особенности импортирования и вложенных питоньих пакетов, а сам бестолочами называет.
sageАноним 18/04/18 Срд 22:37:38 #13 №1176353 
>>1176312
>import PyQt5
Это просто общий пакет для либы, там на самом деле сишный код, гугли как реализуются сишные вставки в питон
>from PyQt5 import PyQt5.QtWidgets
При инструкции from import, после import должен указываться один атрибут, без вызовов
Аноним 18/04/18 Срд 22:37:53 #14 №1176354 
>>1176321
Устанавливал через пакетный файл. Код, приложенный выше, работает. Не работает он, если написать так, как учили в основах импорта.
>>1176331
Ухх, бля, он еще и сажицу прилепил, ухх, вот это вдавил, да, что же делать...
Аноним 18/04/18 Срд 22:39:33 #15 №1176356 
>>1176353
Я здесь >>1176312 указал правильный импорт. Он все равно не работает.
Алсо не работает import PyQt5.QtWidgets, хотя import os.path работает прекрасно.
Аноним 18/04/18 Срд 22:45:57 #16 №1176359 
Spectacle.n10973.png
wtf-photos-videos-crazy-family.jpg
>>1176356
> не работает import PyQt5.QtWidgets
Аноним 18/04/18 Срд 22:52:32 #17 №1176363 
>>1176354
>как учили в основах импорта
>import os.path
Где тебя такому учили?
Тебе все равно придется писать os.path для выполнения функции
Либо import os, а потом делаешь os.path.функция
Либо from os import path, а потом path.функция
Хуйню какую-то вычитал и рад
Аноним 18/04/18 Срд 23:08:05 #18 №1176372 
>>1176359
Ты код выше-то попробуй вызвать с таким импортом, дощечка.
>>1176363
Здесь в любом случае не работает никакой иной импорт, кроме как указанный на скрине.
Аноним 18/04/18 Срд 23:28:16 #19 №1176383 
image.png
Аноны, вот вы мне поясните, чому отказывается Джанго валидировать форму с файлом?
Там ещё передаётся куча полей, но в том числе и нужное.
В качестве ошибки выдаёт
> <ul class="errorlist"><li>file_file<ul class="errorlist"><li>This field is required.</li></ul></li></ul>
Передаю всё как нужно
> NewFileForm(request.POST, request.FILES)
Но даже в request.FILES выводится пустой словарь.
Уже всю голову поломал, какого хуя оно так работает.
По факту у меня сейчас так:
Есть одна большая форма и выпадающее в ней меню, там я выбираю дополнительную форму для отображения и того выводится большая форма + одна из выбранных дополнительных(остальные спрятаны и required=false).
Я может неправильно спроектировал всё, но большая форма валидируется, а вот малые, если в них есть загрузка файла - нет.
Аноним 18/04/18 Срд 23:54:02 #20 №1176394 
Spectacle.J14277.png
492307606.jpg
>>1176372
> Ты код выше-то попробуй вызвать с таким импортом, дощечка.
Аноним 19/04/18 Чтв 00:04:40 #21 №1176400 
>>1176383
В форме указал multipart/formdata? Иначе файлы не передаются.
Аноним 19/04/18 Чтв 00:21:08 #22 №1176408 
>>1176400
Блять, какой же я ебанутый.
Да, ты прав, анон, я упустил этот момент.
Аноним 19/04/18 Чтв 00:28:35 #23 №1176411 
image.png
Как это работает? Я думал, новый объект - новый кусок памяти - новый ид.
Аноним 19/04/18 Чтв 00:53:34 #24 №1176422 
>>1176411
Детали реализации. Зачем тебе это вообще?
Аноним 19/04/18 Чтв 00:55:35 #25 №1176423 
>>1176411
Вероятно оптимизации байткода.
Аноним 19/04/18 Чтв 01:31:35 #26 №1176435 
>>1176411
сука range - генератор блять, уебас тупой. Пиздуй укус питона штудировать.
тройка
Аноним 19/04/18 Чтв 01:51:03 #27 №1176442 
wtf-am-i-reading.jpg
>>1176435
Аноним 19/04/18 Чтв 03:39:29 #28 №1176452 
butthurt-remover-instantly-cures-hurt-feelings-over-interne[...].png
Как оборвать subprocess но при этом не получать TimeoutExpired exception, чтобы получить ебучий stdout?

subprocess.run(["sleep", "5"], stdout=PIPE, stderr=PIPE, timeout=2)
Аноним 19/04/18 Чтв 04:05:05 #29 №1176455 
>>1176452
З.ы. Popen не подойдёт, т.к. там нет timeout.
Аноним 19/04/18 Чтв 04:35:38 #30 №1176456 
>>1176452
То что уйдёт в stdout полностью зависит от запускаемого процесса. Если ты грохаешь процесс, то в stdout может вообще ничего не записаться.
Аноним 19/04/18 Чтв 05:45:17 #31 №1176460 
>>1176231
все тоже самое есть во вскоде ТОЛЬКО ЛУЧШЕ! ну серьезно, щас функционал +/- везде одинаковый, у меня стоковый блокнот как сабляйм без плагинов, но вот вся суть она в мелочах, и вскод просто настолько хорош насколько вообще возможно, это единственный редактор в котором меня ничегоне раздражает и со мной солидарна треть глобуса
Аноним 19/04/18 Чтв 09:56:53 #32 №1176508 
Как в несколько потоков организовать команду ping? Нужно делать отдельные переменные для каждого subprocess, или что там вообще используется.
Аноним 19/04/18 Чтв 10:07:59 #33 №1176511 
>>1176508
threading или popen. subprocess.run/call блокируют.
Аноним 19/04/18 Чтв 10:10:12 #34 №1176512 
>>1176511
Спасибо.
> блокируют
Что блокируют? Другие одинаковые команды?
Аноним 19/04/18 Чтв 10:46:00 #35 №1176524 
Че Гевара.webm
Т.к. в прошлом треде нихуя не ответили, репостну:

Пытаюсь разобраться в SQLAlchemy и вообще в БД.
Есть XML-дамп (размером несколько гигабайт, ~10кк записей) одной базы.
Я написал генератор который парсит этот XML поочередно возвращая распарсенные записи (в виде диктов, но это не важно).
И мне нужно перенести их все в БД. Сначала написал примерно такое:

session = Session()
for parsed in iter_xml():
....row = SomeModelClass(<ЗВЁЗДОЧКА><ЗВЁЗДОЧКА>parsed)
....session.add(row)
....session.commit()
session.close()

Но выполнялось это медленно. Заменил "....session.commit()" на:
....if (len(session.new) > N):
........session.commit()
Попробовал разные N, вроде быстрее всего с N = 100.

Я всё правильно делаю?
Просто я думал SQLAlchemy как-нибудь сам может решать когда ему эффективнее коммитить.

>>1172859
Так, ну я померял примерное время которое в среднем уходит на обработку 1000 записей ДБ. (Включая парсинг XML.)
Если коммитить по одной записи - ~2.225с.
Если по коммитить по 100 записей - ~0.613с.
В ~4 раза быстрее.
Аноним 19/04/18 Чтв 10:47:10 #36 №1176525 
>>1176512
>Что блокируют?
Интерпретатор/поток. Пока не выполнится этот процесс, питон будет стоять и ждать, ничего другого не делая.
https://en.wikipedia.org/wiki/Blocking_(computing)
Аноним 19/04/18 Чтв 13:39:44 #37 №1176623 
>>1176456
Что ты несёшь? Popen выдаёт в любом случае
Аноним 19/04/18 Чтв 13:42:17 #38 №1176625 
Котаны, стоит ли уходить с джавы на python и заниматься bigdata? Очень много вакансий появилось, да и вообще питон нравитсяписал на нем как-то вк бота. Или забить хуй и ебашить на джаве дальше?

мимо-джава-джун
Аноним 19/04/18 Чтв 13:45:23 #39 №1176627 
>>1176623
Попень выдаёт?
>>1176625
А чо не скалка например? В спарке нативно на скалке херачат, а питон там как бы сборку.
Аноним 19/04/18 Чтв 13:47:43 #40 №1176630 
>>1176625
биг дата это не есть питон. это сложная наука. Но если есть время и ты по джаве уже всё могёшь, то скриптовой язык это однозначно то что стоит учить. Как минимум будешь уверенней прогать на джаве, так как он покажет тебе джаву со стороны и вообще разовьешься как погромист.
Аноним 19/04/18 Чтв 14:05:06 #41 №1176638 
>>1176460
> со мной солидарна треть глобуса
https://www.jetbrains.com/research/python-developers-survey-2017/#tools-and-features
Аноним 19/04/18 Чтв 14:19:08 #42 №1176645 
>>1176638
>jetbrains.com
но мама тебя все равно любит, да?
Аноним 19/04/18 Чтв 14:21:45 #43 №1176648 
>>1176645
Так и знал что придерёшься к источнику. Ладно, давай свой survey, где треть за вскод.
Аноним 19/04/18 Чтв 15:14:44 #44 №1176685 
1524140083036.jpeg
Можно отобразить картинку с помощью matplotlib, если я не использую jupiter notebook?

То есть, у меня обычный .py файл с кодом, который я запускаю в PyCharm. Когда вызывается plt.imshow() ничего не происходит. Можно ведь как-то научить matplotlib открывать новое окно с выводом графики?
Аноним 19/04/18 Чтв 15:28:06 #45 №1176700 
>>1176685
найс тян
в ноутбуке пишешь
import твойпайфайл.py
запускается скрипт из твоего пай файла
почитай про модули и скрипты
https://docs.python.org/2/tutorial/modules.html
Аноним 19/04/18 Чтв 15:29:13 #46 №1176702 
>>1176685
ой не правильно понял
в консоли пишешь
$ python твойпайфайл.py
Аноним 19/04/18 Чтв 15:30:13 #47 №1176704 
>>1176685
а воще советую ipython
пиздатая вещь
Аноним 19/04/18 Чтв 15:56:49 #48 №1176722 
>>1176648
стаковерфлоу + все туторы на ютубе если только ютубер не 40летний зачморышь
Аноним 19/04/18 Чтв 16:07:07 #49 №1176730 
>>1176722
>все туторы на ютубе
Пиздец, пока эти аутисты говорят что-то, можно прочитать в 5 раз больше, не понимаю, зачем это вообще нужно, есть лутц, который каждую деталь разжевывает
Аноним 19/04/18 Чтв 16:15:17 #50 №1176736 
>>1176730
это когда хочешь отдохнуть, но не можешь себе этого позволить, вроде и залипаешь, но и по делу при этом
Аноним 19/04/18 Чтв 16:31:35 #51 №1176747 
Что уважаемые господа из этого треда думают о

https://learncodethehardway.org/python/

Стоит изучить?

Деньги не проблема
Аноним 19/04/18 Чтв 16:45:45 #52 №1176757 
13354567605672.jpg
>>1176722
> стаковерфлоу
> туторы на ютубе
> survey
> стаковерфлоу
> туторы на ютубе
> survey
> стаковерфлоу
> туторы на ютубе
> survey
Аноним 19/04/18 Чтв 17:12:19 #53 №1176767 
>>1176525
Понял, спасибо.
Аноним 19/04/18 Чтв 17:26:46 #54 №1176776 
>>1176187 (OP)
> 2 webm
Уёбок, это же ты в /s/ линукс-тред своей тупостью засираешь. Рака тебе.
Аноним 19/04/18 Чтв 17:53:58 #55 №1176792 
>>1176776
нахуй сходи чмо
Аноним 19/04/18 Чтв 18:00:01 #56 №1176799 
>>1176736
Я лучше за 20 минут все из статьи\книги прочту что нибудь то, что объясняется для идиотов за час-полтора
Аноним 19/04/18 Чтв 18:04:36 #57 №1176805 
>>1176799
ну я вот читал вики, описание комманд настолько заебанное, что только после просмотра видосика с результатом стало все ясно

опыт у всех разный няш
Аноним 19/04/18 Чтв 18:31:02 #58 №1176823 
Как начать кодить? Ну просо начать. Я уже проработал проект субд для набития руки, осталось только переписать всё на комплюхтерн. Но никак не могу выбрать время чтобы просто сесть и сделать. Да, у меня был опыт неудачного программирования, после которого я забивал хуй и брался дальше учить
Аноним 19/04/18 Чтв 18:40:15 #59 №1176828 
>>1176805
вики вики. я оттуда узнал ровно 0 полезной хуйни. А нет брешу 1 вещь мне действительно помогла - наглядное объяснение радиана в круге. Ну и по истории в свое время знатно попутешествовал. А всякие технические вещи я даже не знаю для кого там написаны. Полагаю для людей которые и так всё это знают.
Аноним 19/04/18 Чтв 19:12:14 #60 №1176852 
>>1176828
ну вот блять и что делать если тебе нужно решить простецкую задачу, ебать толмуды не стоит, а щипнуть инфу где то надо, вот как мудак и скачешь по стаковерфлоу и прочим подворотням

хотя у луца вроде есть справочник, надо бы его открыть для себя что ле

>объяснение радиана в круге
кстати всегда было интересно чому никто не догадаляс использовать градусы? как то посмотрел на код аналоговых часиков охуел и так везде причем
Аноним 19/04/18 Чтв 19:29:06 #61 №1176862 
>>1176852

вообще не вижу ничего плохого в стекоферфлоу. Иногда там есть вещи которые незадокументированы нигде, так как разрабы просто поленились/неуспели/забили написать доки а какие-нибудь буржуйские задроты раздраконили эту поеботу и с любовью записали своё открытие. И при плотной работе просто нет времени шарится по документам и просто тупо копипастишь оттуда. Хуле такого-то? Невозможно всё знать.
Аноним 19/04/18 Чтв 19:38:52 #62 №1176867 
>>1176862
>тупо копипастишь оттуда. Хуле такого-то?
я тоже так считаю братишка ^_^

пока под себя будешь настраивать уже вьедешь в тему и с кайфом дальше пойдешь, вместо бесконечной унылой зубрежки и прокрастинации
Аноним 19/04/18 Чтв 19:57:43 #63 №1176872 
>>1176700
>>1176702
>>1176704
Хуйню какую-то советуете. Решилось принудительным включением Qt5Agg бэкенда.
Аноним 19/04/18 Чтв 20:09:38 #64 №1176876 
>>1176187 (OP)
Соус с вебмки в студию! :3
Аноним 19/04/18 Чтв 20:51:07 #65 №1176889 
image.png
Такая хуйня вообще нормальна в pycharm или нужно как-то разбираться?
Аноним 19/04/18 Чтв 20:52:02 #66 №1176891 
>>1176889
Это говорит о качестве кода.
Аноним 19/04/18 Чтв 20:54:33 #67 №1176895 
>>1176891
Ясное дело. Но так меня вообще унижать будут или как?
Аноним 19/04/18 Чтв 21:16:58 #68 №1176925 
>>1176187 (OP)
Какая среда на вебмке?
Аноним 19/04/18 Чтв 21:21:53 #69 №1176928 
>>1176925
KDE + Visual Studio Code
Аноним 19/04/18 Чтв 21:23:44 #70 №1176931 
>>1176928
Всех благ
Аноним 19/04/18 Чтв 21:27:41 #71 №1176934 
>>1176895
Тебе в рот насрут за такое.
Аноним 19/04/18 Чтв 23:14:13 #72 №1176979 
>>1176823
никак
Важно Аноним 19/04/18 Чтв 23:25:31 #73 №1176985 
Пацаны, кто-нибудь из вас собирал pycurl в статическую библиотеку, которая будет работать без зависимостей на linux???

Короче когда собираю pycurl, то сама libcurl не линкуется статически. На windows как то собираю в одну dll, а в линуксах какой-то геммор
Аноним 19/04/18 Чтв 23:31:21 #74 №1176988 
>>1176889
В настройках пайчарма сделай автоформатирование и подсветку синтаксиса так, как тебе удобно/привычно(руководствуясь пеп8 и прочими, есесно).
Тогда не будет так отсвечивать.
Аноним 19/04/18 Чтв 23:58:33 #75 №1176997 
>>1176985
Можно без пайинсталлера собрать независимые от питона файлы, что ли?
Аноним 20/04/18 Птн 02:51:03 #76 №1177021 
results.png
results2.png
аааааааааааааааааааа бляяяяяя
Кто хочет помочь вкатывальщику - привет. ну, другие вкатывальщики тоже могут прочитать этот пост. посмотреть на мою реализацию, подумать как они бы это сделали Это я в прошлом треде сделал нахуй никому не нужную утилиту по поиску самого большого файла на пк с распараллеливанием на процессы. После чего мне сказали сделать поиск n самых больших файлов и сделать распараллеливание на треды и без параллелей вообще. Вот результаты моих трудов: https://repl.it/@JanWhite/VeneratedQualifiedDefinitions
Content.py содержит все штуки классы/функции, которые используются во всех реализациях программы. multi\thread_tot\per это реализации с процессами\тредами, где задается число процессов\тредов вообще\на каждый жд, tester управляет всем этим, чтобы померить скорости, и plain отдельно тестит линейную версию программы потому что она не укладывается в общий вложенный цикл в tester'е.
И пикрелейтид ещё. А теперь в общем вопросы, на которые я буду рад получить ответы:
0) Как код вообще? Говно или нормально? Разделил все на 200 модулей, классы, функции, накидал комментарии и докстринги.
1) Почему в multiprocessing так важно делать if __name__ == "__main__" ? Я понимаю, что на линуксах используется вилка и там это нужно, чтобы отделить порождающий процесс от дочернего. Но почему без этого if'а все падает даже у меня на Шинде? multiprocessing же у меня вызывает обычный subprocess, для которого этот if не важен вообще.
2) Че блять не так с timeit? Видно, что в обоих тестах я как еблан выделаю жесткий диск кстати я проверял только на нем а не на всем пк потому что иначе это заняло бы все где то вечность. и так полтора часа все проверялось в отдельную переменную-лист и только потом отдаю timeit.timeit. А все из-за того, что происходит на второй картинке. Если в строку stmt будут входить другие строки как угодно, с \', с \", тройные блять """yevblo("hui")""", он обваливается с этой ошибкой. Как не старался, обойти не смог. Что это такое?
3) Как делать пакеты? Нагуглил только кучу всего с setup.py для того, чтобы можно было мой говнокод ставить через pip, но я хотел просто 4 первых import'a из тестера превратить в один. Положил все реализации вместе с Content в Versions папку, и нихуя. Если делать import Versions, то Versions.mult_tot для примера и другие просто не будут работать т.к. они не атрибуты Versions. Если кинуть в ту папку __init__.py и в ней определить __all__, то можно будет импортировать как from Versions import *, но ни одна из реализаций не будет видеть Content, который они все импортируют, хотя он лежит там же, в Versions. Так и не смог с этим разобраться, забил, и скинул все в одну кучу как мудак.
4) Ну и самый важный вопрос: ЧЕ БЛЯ ЗА ХУЙНЯ
Я что, 20 часов писал эти threading и multiprocessing, чтобы обычный линейный код был в 3\6 раз быстрее? Как так то? И почему треды быстрее процессов? Я думал все будет с точностью наоборот: процессы > быстрее треды > линейная хуйня. Почему все наоборот?
ухх я буст морали получил от созерцания своего говнокода в оп-посте
Аноним 20/04/18 Птн 03:14:58 #77 №1177022 
Suq1qz5br-w.jpg
>>1177021
Давай по новой, Миша, всё хуйня.
Аноним 20/04/18 Птн 04:27:19 #78 №1177028 
Треды нужны когда ты много ждешь i/o.
Процессы нужны когда тебе не нужно часто хуярить данные туда-обратно.
Аноним 20/04/18 Птн 06:29:17 #79 №1177043 
изображение.png
>>1176187 (OP)
Анон, хули ему надо? Не могу найти где и что, помохи.

https://ideone.com/uJrO8H
Аноним 20/04/18 Птн 06:37:38 #80 №1177045 
>>1177028
>Процессы нужны

... когда надо питонку гонять параллельно, т.к. потоки будут блокироваться на GIL. I\O на GIL не блокируется, потому что это сишная часть и она потокобезопасна. Не имеет никакого значения, много данных или мало, питонка в двух потоках исполняться НЕ-МО-ЖЕТ. Это уже несколько раз объясняли.
Аноним 20/04/18 Птн 06:49:01 #81 №1177046 
>>1177021
>Как код вообще? Говно или нормально?

Код говно. Но это нормально. Со временем научишься не писать говно.

>Почему в multiprocessing так важно делать if __name__ == "__main__" ? Я понимаю, что на линуксах используется вилка и там это нужно, чтобы отделить порождающий процесс от дочернего. Но

Никакого отношения к вилкам и дочерним процессам не имеет. Делается для того, чтобы ты случайно не выполнил top-level код модуля при импорте (поэтому он в функции main), чтобы ты мог выполнить его произвольное количество раз, а не только при импорте. if __name__ == - это чтобы твой модуль мог работать как скрипт в вызове python -m, ну например как python -m http.server 8080

> 3) Как делать пакеты? Нагуглил только кучу всего с setup.py для того, чтобы можно было мой говнокод ставить через pip, но я хотел просто 4 первых import'a из тестера превратить в один.

Тебе не пакеты надо, в смысле, пакеты, но не те. Тебе надо организовать свой модуль правильно, у тебя щас вообще нет модуля.

> Я что, 20 часов писал эти threading и multiprocessing, чтобы обычный линейный код был в 3\6 раз быстрее? Как так то? И почему треды быстрее процессов?

Да, потоки быстрее процессов, это закономерно. Линейный код быстрее, потому что а) ты проебался в многопоточке где-то и б) питон использует одно ядро, на одном ядре потоки медленнее линейного кода
Аноним 20/04/18 Птн 06:52:31 #82 №1177047 
>>1176747
Если деньги не проблема, лучше у этого чувака курс пройди:
https://www.youtube.com/user/killerphp/
Аноним 20/04/18 Птн 07:32:38 #83 №1177049 
>>1177047
Чот фигня какая-то помоему. Вопросики какие-то на скриншотах, как в freecodecamp
Аноним 20/04/18 Птн 07:35:09 #84 №1177050 
>>1177049
Каких скриншотиках? Вот сами курсы:
https://www.killervideostore.com/video-courses/beginners_python_3.php
Аноним 20/04/18 Птн 09:25:11 #85 №1177071 
image.png
>>1176876
>>1174315
>https://repl.it/repls/PossibleWryLoop
^_^

анон из прошлого треда помог мне в довольно истеричной форме, но все же и когда я зареквестил каменты к когду за благодарочку в 5 баксов - он потерялся

в коде я кое-как разобрался, ну и захотелось таки отблагодарить как то онончика, код реально топовый, все дико по ооп сделано, прям по красоте
Аноним 20/04/18 Птн 10:03:32 #86 №1177074 
>>1177071
Мне бы соус трека вопщет.
Аноним 20/04/18 Птн 10:54:06 #87 №1177079 
15161393861850.mp4
>>1177022
А что не так?

>>1177046
>код говно
А как надо?

>Никакого отношения к вилкам и дочерним процессам не имеет.
Нет, я понимаю, что такой if делают, чтобы можно было и импортировать и запускать его как самостоятельный скрипт. Но вот есть tester.py, который я хочу просто запустить, чтобы померить скорость, и не собираюсь никогда в жизни вообще импортировать. И в нем пришлось все равно сделать if __name__=.. т.к. иначе он вываливался с RunTime ошибкой во время теста версий с multiprocessing. Вот я и не понимаю, почему это так важно.

>Тебе надо организовать свой модуль правильно
Я это знаю. Я спрашиваю как это сделать.
>у тебя щас вообще нет модуля.
>A module is a file containing Python definitions and statements.
У меня 7 модулей: контент, 4 версии, тестер, и тестер линейного кода.

> ты проебался в многопоточке где-то
Где?
>питон использует одно ядро
Про то, что Питон позволяет выполняться только одному потоку слышал, про ядро слышу впервые.
Аноним 20/04/18 Птн 11:37:02 #88 №1177120 
Вот у пхп шапка ахуенная, да ребят?
Аноним 20/04/18 Птн 12:27:06 #89 №1177167 
>>1177074
фу ты блядь ну нахуй ищши сам

Аноним 20/04/18 Птн 13:44:31 #90 №1177201 
>>1177079
> А что не так?
Так тебе денег никто не даст.
Аноним 20/04/18 Птн 14:00:54 #91 №1177203 
>>1176187 (OP)
Секта укушенных пистоном.
Аноним 20/04/18 Птн 14:11:48 #92 №1177204 
>>1177203
>пистоном
Пистон, ты получил удовольствие, иди отработай.
А-тя-тя.
Аноним 20/04/18 Птн 16:07:59 #93 №1177245 
Так, поднял виртуалку с одним приложением, там скрипта для запуска всех нужных служб и так далее, проект на джанге.
Там есть nginx, скорее всего с этими настройками
https://github.com/dunbarcyber/cyphondock/blob/master/config-COPYME/nginx/nginx.conf
как мне собственно запустить проект, запускаю через python manage.py runserver
пишет что 8000 занят, выбираю 8001, захожу по адресу своей виртуалки, запускается возвращается 400.
Подскажите как работает этот nginx, куда заходить?
Аноним 20/04/18 Птн 16:29:30 #94 №1177260 
>>1176685
Надеюсь, это кун.
Аноним 20/04/18 Птн 16:48:58 #95 №1177276 
Можно ли запустить скрипт на хрюше, написанном на 3+ версии питона? Буду очень признателен за любые наводки
Аноним 20/04/18 Птн 16:50:49 #96 №1177278 
>>1177276
До какой-то версии пифон поддерживал xp. До 3.5 что ли.
Аноним 20/04/18 Птн 16:51:07 #97 №1177280 
>>1177276
Установи Python 3+ и запускай.
Аноним 20/04/18 Птн 16:51:32 #98 №1177281 
>>1177278
Да ну? Я вроде бы не мог когда-то давно поставить 3.* версию на хрюшу, приходилось страдать под 2.7
Аноним 20/04/18 Птн 16:52:44 #99 №1177282 
>>1177280
А как правильно собрать SFX архив с питоном? Неужели надо пихать все эти ~40мб для корректной работы?
Аноним 20/04/18 Птн 17:25:08 #100 №1177320 
Доделал бота с курсами англюсика на питонусе. Залил на хостинг, таки первый мой проект готов. Буду ебошить следующий никому ненужный проект почитывая книжки.
Собираюсь плагин для kodi написать чтобы смотреть онеме с сабами типа аггрегатор с фансабовских сайтов.
Вот сам бот если вдруг кому интересно:
@English_by_hoge_bot
Аноним 20/04/18 Птн 17:45:10 #101 №1177324 
wpss201804200001.png
>>1177320
1. Пикча
2. Заебешься качать аудио твое, выкладывай аудио как запись голоса.
Аноним 20/04/18 Птн 17:55:18 #102 №1177329 
>>1177282
Попробуй cx_Freeze
Аноним 20/04/18 Птн 20:11:40 #103 №1177380 
VirtualBoxXP20042018184428.png
VirtualBoxXP20042018190204.png
>>1177281
на ХР ставится питон 3й ветки до 3.4.3 включительно, если не ошибаюсь
Аноним 20/04/18 Птн 20:25:28 #104 №1177390 
>>1177380
херасе. а гит там бут работать например?
Аноним 20/04/18 Птн 21:23:55 #105 №1177421 
VirtualBoxXP20042018201605.png
VirtualBoxXP20042018201459.png
>>1177390
не исключено. версия 2.10.1 требует сервиспак 3, но качать я его пока не стану, ибо еще можно сделать так
Аноним 20/04/18 Птн 23:45:26 #106 №1177496 
>>1177421
Так в цугвине и пифон можно поставить свежий наверняка.
Аноним 21/04/18 Суб 00:01:00 #107 №1177502 
image.png
image.png
Почему в первом случае два вторых Lable делают новую строку и идут в нее (то, что я хочу), а во втором последний Label лезет в первую строку, а не делает вторую?
Аноним 21/04/18 Суб 00:03:29 #108 №1177504 
Вечер в серпентарий. Смиренно прошу помощи у анонов, нужно по-быстрому сделать скрипт, а я не особо понял, какой метод нужно использовать. Суть проблемы: скрипт должен открывать файл на 100500 строк и раз в N строк дописывать определённую фразу. Каким методом смещать указатель для записи того, что я хочу? Сначала делаю f.open(), потом что?
Аноним 21/04/18 Суб 00:11:58 #109 №1177506 
>>1177502
Хотя даже не так. Я понимаю, что первый Label занимает левую часть свободного окна, второй правую от остатка, и последнему остается серединка. Как заставить первые два labla поделить между собой верхнюю часть экрана на 2 половинки? Или без Frame'а, делящего экран на верхнюю и нижнюю часть я нахуй могу идти?

>>1177504
Какие методы, о чем ты бля?
Ыыыы бля: https://repl.it/@JanWhite/ProfitableHonestAlgorithms
Аноним 21/04/18 Суб 00:15:09 #110 №1177508 
VirtualBoxXP20042018231159.png
>>1177496
тут дело в том, что цигвин тоже не первой свежести ставится, соответственно репы свежего цигвина не подойдут, как и находящиеся там пакеты. но жить в этом окружении какбэ можно и иногда даже нужно
минигайд -> https://pastebin.com/pyyHRa7R
Аноним 21/04/18 Суб 00:15:28 #111 №1177509 
>>1177506
Извини, бро, я не программист, просто по работе бывает нужно сделать какую-нибудь такую хуйню. Спасибо, что заморочился и написал мне скрипт с двумя ёблами.
Аноним 21/04/18 Суб 00:34:34 #112 №1177533 
>>1176187 (OP)
посоны, изучаю ткинтер, не смог понять, как сделать следующее: я ввожу два числа, а он мне по этим двум числам в новом окне создает какое то количество, зависящее от введенных двух чисел, виджетов ввода (ну куда чето ввести можно)
собственно не смог только сгенерировать виджеты ввода
Аноним 21/04/18 Суб 01:06:48 #113 №1177552 
>>1177079
>А как надо?

Это я тебе на двачах пояснить не смогу. С практикой придет. Читай код в популярных проектах для начала.

> RunTime ошибкой во время теста версий с multiprocessing. Вот я и не понимаю, почему это так важно.

Потому что его так multiprocessing стартует. Я твой код внимательно не смотрел, но вроде бы других причин нет. Ну и если ты модуль не собираешься делать исполняемым - это можно не делать

> Я это знаю. Я спрашиваю как это сделать. У меня 7 модулей: контент, 4 версии, тестер, и тестер линейного кода.

Надо убрать это в пакет (который родственник модуля): создать директорию, перенести туда эти файлы, добавить __init__.py, в который вытянуть импортами классы из подмодулей, будет что-то типа

__init__.py

from .tester import Tester

И надо будет разобраться, кто кого импортирует. Желательно переделать так, чтобы импорты были иерархические, а не перекрестные, а то рано или поздно наткнешься на циркулярные импорты.

>Где?
Не знаю, надо дебажить.

> Про то, что Питон позволяет выполняться только одному потоку слышал, про ядро слышу впервые.

Почитай про GIL. Ну и про многопоточность взагали.
Аноним 21/04/18 Суб 01:08:34 #114 №1177553 
>>1177504
Файл по месту редактировать не получится. Придется копировать в новый и по ходу вставлять записи когда надо.
Аноним 21/04/18 Суб 04:26:04 #115 №1177588 
>>1177508
Ну, это не интересно... с тем же успехом можно с офф сайта скачать 3.4 и он будет на xp работать. https://docs.python.org/3/using/windows.html#supported-versions
Аноним 21/04/18 Суб 04:26:30 #116 №1177589 
>>1177533
> изучаю ткинтер
не надо
Аноним 21/04/18 Суб 04:42:27 #117 №1177592 
>>1177588
ну да, некросвинья это такая штука, у которой всякие новомодные штуки сразу вызывают ошибку в ядре
Аноним 21/04/18 Суб 07:42:08 #118 №1177604 
Мне вскод понравился. Столько-то плагинов. Даже пичарм ставить не стал хоть и пользуюсь другими их продуктами
Аноним 21/04/18 Суб 08:25:00 #119 №1177608 
А вот согласно той пасте про Dive into Python я обязан изучить оригинал? Он же про второй Питон. Или можно сразу перекатиться на Dive into Python 3?
Аноним 21/04/18 Суб 08:39:24 #120 №1177614 
image.png
>>1177604
>Даже пичарм ставить не стал
красава, они гордятся тобой
Аноним 21/04/18 Суб 10:09:52 #121 №1177626 
>>1177614
Ну, я после переустановки маздая имел ввиду. Другими их продуктами, например datagrip, я пользуюсь.
Аноним 21/04/18 Суб 10:10:14 #122 №1177627 
Анон, насколько важно уметь писать чистые sql запросы? Что важнее уметь, это или работать с ORM?
Сейчас делаю приложение, тк по мнению многих это лучший способ научиться, но встала проблема такая:
Ты изучаешь только то что нужно вот для приложения. SELECT PEK FROM kek, и тому подобное. Чтото ведь обязательно останется непознанным, оче боюсь
Аноним 21/04/18 Суб 10:11:55 #123 №1177628 
>>1177608
Третий учи
Аноним 21/04/18 Суб 10:49:49 #124 №1177638 
>>1177627
Важно и то и то, как по мне, в работе всякое может пригодиться.
Я вот начинал все на чистом СКЛ, и очень долго даже не трогал алхимию. Да и тебе будет гораздо проще понять что делается командой в ОРМке, т.к. к ней всегда идет аналог на СКЛе.
П.с. В принципе и основ СКЛя хватает, ты же не эксперт по БД и не собираешься писать логику на СКЛе. Я СКЛ учил по документации постгреса(до этого вообще БД никогда не трогал), было больно, но потом все понял.
Аноним 21/04/18 Суб 10:54:54 #125 №1177642 
>>1177638
Спасибо, тоже также буду наверное делать. Алсо, не можешь наставить на путь истинный. У меня есть задача реализовать поиск например товаров. Есть страница с поиском, там есть форма. Для этого нужно использовать как-то LIKE по всем полям?
Аноним 21/04/18 Суб 11:19:55 #126 №1177647 
>>1177627

Очень важно. Обязательно надо учить SQL
Аноним 21/04/18 Суб 12:40:45 #127 №1177681 
>>1177642
Да, не как-то, а вполне себе конкретно.
Делаешь iLIKE по каждому полю и потом выводишь либо квэрисэт общий для всех полей(сет1 | сет2 | сет3), либо выводишь все уникальные элементы из каждого квэрисэта в один большой. Это если поля схожи и тестовые, типа "название товра"/"описание товара" и ты по ним ищешь, а если поля вполне себе с датами/суммами/Boolean - юзай 'filter'.
Аноним 21/04/18 Суб 12:49:34 #128 №1177687 
>>1177681
Бля, а я вот так сделал пока
https://ideone.com/UMAjG1
Аноним 21/04/18 Суб 13:04:20 #129 №1177692 
>>1177380
Спасибо, и правда работает.
>>1177329
А если я это все собирал под win XP Prof SP3, оно под каким-то SP1 работать будет, не знаешь?
Аноним 21/04/18 Суб 13:18:07 #130 №1177697 
>>1177687
Юзай ай-лайк, это интеллектуальный поиск, он ищет немного иначе. Надеюсь ты постгрес юзаешь.
В принципе, твой поиск жизнеспособен, но проверь его на реальных данных.
Единственное что, странно ты запихнул и год и название и isbn в один запрос, но хуй знает какие у тебя реальные данные, так что хз, тести и анализируй.
Я тебе привел рабочий пример с ОРМкой.
Аноним 21/04/18 Суб 13:29:17 #131 №1177700 
>>1177697
Да, у меня постгрес. Год и исбн я запиздячил в балицу как VARCHAR, но сам понимаю что это говно. Просто не знаю пока как лучше сделать поиск, отдельно для цифр и строк или оставить как есть. Спасибке еще раз.
Аноним 21/04/18 Суб 13:39:06 #132 №1177704 
>>1177700
Как делаю я обычно на джанге: Обычная строка поиска ищет по названию/описанию, затем юзера кидает на страницу с поиском и тут уже идет куча необязательных доп.параметров. Если юзер параметр заполнил - ищем по нему, если нет - записываем пустой квэрисэт, и так для всех полей, затем результат всех полей через | проверяем и выбираем нужное.
Как я уже и сказал, твое может работает, ты главное оттести.
Аноним 21/04/18 Суб 14:03:48 #133 №1177708 
изображение.png
>>1177704
Да, с ним работает тоже, хотя поиск резистрозависим
Аноним 21/04/18 Суб 16:09:06 #134 №1177759 
Анон хочу попробовать написать плагин для kodi. Так вот, сейчас он использует 2.7 питон, я до этого момента учил 3~. Но при гуглении на эту тему встретилось словосочетание python 2-3 compatible code. Это значит что с помощью каких-то либ можно сесть на два стула и писать на 3 питоне, но код будет работать и на 2? Как гуглить в общем эту тему, подскажи теги, анон.
Аноним 21/04/18 Суб 16:11:21 #135 №1177761 
>>1177759
Либа six.
Аноним 21/04/18 Суб 16:16:53 #136 №1177765 
>>1177761
Спасибо!
Аноним 21/04/18 Суб 16:50:11 #137 №1177799 
изображение.png
Анон смотрю видео про парсинг, автор использует %d там, где я бы использовал format. Это модуль какой-то или встроенная функция питон? Пока на такое не натыкался.
Аноним 21/04/18 Суб 16:58:52 #138 №1177807 
>>1177799
>встроенная функция
this
Почитай ещё про f"{op} is a {faggot}"
Аноним 21/04/18 Суб 17:01:16 #139 №1177808 
>>1177799
Это старый способ форматирования строк
Аноним 21/04/18 Суб 17:20:33 #140 №1177816 
>>1177808
во блять молодеж охуела
Аноним 21/04/18 Суб 17:21:22 #141 №1177821 
>>1177799
> BASE_URL + 'page=%d' % page
Какой год книги? Используй f-string везде, кроме логгирования.
Аноним 21/04/18 Суб 17:22:11 #142 №1177822 
>>1177816
Ну старее f"string", согласись
Аноним 21/04/18 Суб 17:50:07 #143 №1177836 
>>1177821
Видео 2014 года.
>>1177808
>>1177807
Спасибо анончики.
Аноним 21/04/18 Суб 18:44:45 #144 №1177852 
Почему у меня вот это выражение вызывает FileNotFound?
html = open('front\index.html', 'r').read
Аноним 21/04/18 Суб 18:46:32 #145 №1177853 
>>1177852
Потому что путь неверный?
Аноним 21/04/18 Суб 18:47:11 #146 №1177854 
>>1177853
Верный
Аноним 21/04/18 Суб 18:49:48 #147 №1177855 
>>1177854
Ну думай, что ты умнее интрепретатора, попробуй указать полный путь или поиграйся с вложенностью, я вообще не знаю как в винде это устроено
Аноним 21/04/18 Суб 19:15:10 #148 №1177859 
>>1177708
Ну и хорошо. Юзай интеллектуальный, для регистра и частичного ввода слова.
Удачи!
Аноним 21/04/18 Суб 19:58:13 #149 №1177874 
>>1177071
>код реально топовый, все дико по ооп сделано, прям по красоте
>ооп
>топовый
На ноль делишь.
Аноним 21/04/18 Суб 20:09:56 #150 №1177877 
>>1177874
С языка сорвал!
Аноним 21/04/18 Суб 20:35:06 #151 №1177885 
>>1177874
а как нада дядь? функциональщину заебать для файл хендлера? нидайб-г имутабельность по пизде пойдет или чо?
Аноним 21/04/18 Суб 20:40:16 #152 №1177886 
>>1177885
Да кого ты слушаешь
Аноним 21/04/18 Суб 20:40:37 #153 №1177887 
>>1177859
Мерси!
Аноним 21/04/18 Суб 20:41:22 #154 №1177889 
Открыл книгулю про TDD в питоне с примерами на джанге, мне понравилось. Как раз для таких дебилушек как я.
Аноним 21/04/18 Суб 20:43:24 #155 №1177890 
>>1177889
А что за книга?
Аноним 21/04/18 Суб 20:46:42 #156 №1177892 
>>1177890
Ну первая страница в гуголе по словам Tdd python, я уже просто ушел от компутера
Аноним 21/04/18 Суб 21:13:12 #157 №1177901 
shrine-s320180329-13878-rjdgxx.png
Привет. Есть тут люди хорошо знающие пхп и кодящие на пистоне?

Стоит ли учить PYTHON? Дело в том что пых я знаю хорошо, а окромя его ничего и не знаю. Питон вроде как посолидней, чем он лучше?

Есть необходимость написать бота, который бы распарсил mp3 теги моих песенок, создал бы описания альбомам групп, поархивировал, позаливал на яндекс диск и вместе со ссылками, описанием, обложками и пр позаливал бы на мой говносайтик.

На пхп на изи напишу, но подумал учить этот ваш пайтон и попытаться реализовать задуманное на нем. Вот на этом примере чем он может быть лучше пхп? Чем он вообще лучше?
Аноним 21/04/18 Суб 21:19:07 #158 №1177904 
>>1176187 (OP)
>2
Можно соус музла?
Аноним 21/04/18 Суб 21:30:48 #159 №1177906 
>>1177901
Тем, что это настоящий язык прграммирования и тут тебе никто не даст ярлычёк с сервером и не раскидает шаблоны. Алсо если ты хочешь учить пайтон, то должен понимать, что пыху можно сравнить разве что с шаблонизаторами для фреймворка.
Аноним 21/04/18 Суб 21:51:36 #160 №1177920 
>>1177906
Ну это все абстракции ты говоришь.
Мне похуй настоящий/не настоящий. Критерий - практичность, решаемость задач и пр.
Конкретику подавай в общем, это меня интересует
Аноним 21/04/18 Суб 22:55:19 #161 №1177966 
>>1176187 (OP)
ОП, кинь гайд по настройке вскода как у тебя. Что устанавливать, в какой последовательности? На какую кнопку скрипты запускаешь?
Аноним 21/04/18 Суб 23:12:40 #162 №1177977 
>>1177906
>Алсо если ты хочешь учить пайтон, то должен понимать, что пыху можно сравнить разве что с шаблонизаторами для фреймворка.
Мы ван перезвоним.
Аноним 21/04/18 Суб 23:13:09 #163 №1177978 
>>1177904
>>1177074
>>1176876
https://thomasbarrandon.bandcamp.com/album/the-quiet-earth заглавный трек.
Аноним 21/04/18 Суб 23:45:51 #164 №1178006 
>>1177901
https://wiki.python.org/moin/PythonVsPhp Читай, решай для себя сам.
Аноним 22/04/18 Вск 00:01:00 #165 №1178022 
>>1177854
Нихуя не верный. Путь относительный, хуй его знает, какой текущий каталог у интерпретатора в момент запуска, особенно в ебаной винде, и особенно при запуске через ебаный "праваднiк" или как он там щас... Полный путь указывай
Аноним 22/04/18 Вск 00:03:04 #166 №1178024 
>>1177071
>все дико по ооп сделано, прям по красоте

ты ебанулся? открываю первый файл, в первых строках велосипед на 30 строк. охуеть красота.
Аноним 22/04/18 Вск 00:12:56 #167 №1178030 
ы.jpg
>>1177853
>неверный
Аноним 22/04/18 Вск 02:52:38 #168 №1178114 
Привет любителям теребить свой Пистон.

В общем, какой-то анон где-то спрашивал, как сделать так, чтобы спавнилось количество виджетов, зависящих от введенного пользователем числа. Может здесь, может не здесь, но вот мой ответ:
https://repl.it/@JanWhite/DarkvioletLivelyTechnician

А у меня вопрос по ткинтеру вообще. Хороший ли код, который я написал? Почему то в обоих учебниках, что я пока прочитал, при подходе к ткинтеру начинается использование глобальных переменных. А мне это нихера не нравится. Мне нравится идея отдельных скоупов. И мне совсем не нравится, когда какая-то функция вылезает из своего скоупа и делает что-то за его пределами. Так что вот я так все явно решил передавать туда-сюда. Немного больше кода, но зато никакой неявной хуйни "стоп, а эта величина не определена в этой функции, а откуда она вообще взялась". Так хорошо? Или нелюбовь к глобальным переменным это болезнь и надо фикситьампутацией головы?
Аноним 22/04/18 Вск 06:55:45 #169 №1178127 
Посоветуйте курс или книгу, обучающие работе с нампаем, пандой, матплотлибу и другим вещам для дата сайенса.
Аноним 22/04/18 Вск 08:47:34 #170 №1178133 
>>1178114
>from tkinter import *
Сразу плохо, грозит неявной перезаписью переменных
Аноним 22/04/18 Вск 09:14:58 #171 №1178136 
>>1177692
Поставил XP Home Edition SP1, не работает.
Аноним 22/04/18 Вск 09:40:59 #172 №1178141 
>>1178127
https://drive.google.com/file/d/0B-AQaGU__k5mQVRtbWtUbklEQnc
Аноним 22/04/18 Вск 12:34:10 #173 №1178168 
Существует библиотека Python.h, которая позволяет вставлять в C++ Python код. Выходит, можно, к примеру, запрограммировать Arduino на Python?
Да, знаю, я отбитый.
Аноним 22/04/18 Вск 12:36:21 #174 №1178169 
>>1178168
Нет, не выходит. С чего ты взял?
Аноним 22/04/18 Вск 13:58:28 #175 №1178196 
>>1178169
Arduino можно программировать на C++. В чём проблема включить библиотеку питона и вставить участок кода на питоне?
Аноним 22/04/18 Вск 14:15:32 #176 №1178205 
Анон хочу написать парсер. Подскажи какой минимум знания HTML нужен (и чего там ещё), чтобы снизить количество проблем, когда я попытаюсь с разбега взять эту высоту?
Может статейку краткую или видео по основам, которые прям маст хэв?
Аноним 23/04/18 Пнд 06:39:07 #177 №1178207 
>>1178205
bs4
Аноним 23/04/18 Пнд 06:42:27 #178 №1178208 
>>1178196
В том, что питону требуется интерпретатор. Питон сам по себе магически в машинный код нужной архитектуры не скомпилируется от того, что ты хедер в си-код вставишь. К тому же, интерпретатор тебе не для x86 или арма нужен, а для микроконтроллера, в частности atmel avr'а. И даже если бы ты его скомпилировал, нихуя бы не влезло в память мк. Учи си, короче, или малинки и апельсинки Pi покупай.

Тем не менее, урезанные версии существуют, вроде https://wiki.python.org/moin/PyMite
Остальное в гугли можешь найти или нет, потому что искать не будешь.
Аноним 23/04/18 Пнд 07:05:22 #179 №1178210 
>>1178208
> малинки и апельсинки Pi покупай.
А это что? И почему их?
мимо
Аноним 23/04/18 Пнд 08:21:15 #180 №1178211 
>>1178210
orange pi и raspberry pi и ещё аналоги какие-то есть. Потому что это полноценные маленькие компьютеры, с ARM процессорами и линуксом, "нормальным" количеством памяти и т.д.
Аноним 23/04/18 Пнд 08:22:45 #181 №1178212 
IMG20170705154155.jpg
Думаю для практики написать простенькую прожку которая бы ставила лойсы в разделах с лойсами на двоще, идя по списку прокси.
Какие библиотечки стоит покурить?
Аноним 23/04/18 Пнд 08:23:43 #182 №1178213 
>>1178211
Понял, спасибо
Аноним 23/04/18 Пнд 13:24:21 #183 №1178223 
>>1178024
ну честно мне тоже неихуя не понятно, но я смахиваю это на зеленость

можешь сделать лучше?
Аноним 23/04/18 Пнд 13:24:59 #184 №1178224 
>>1178212
requests
Аноним 23/04/18 Пнд 14:01:22 #185 №1178228 
i5ErlT3o81M.jpg
Как сука подкьючить pyuno/ библиотеку из опен/либре офиса под шиндовс?
Блядь моя жопа сейчас сгорит нахуй.
Под линухом это делается одной строчкой.
Под виндоус надо же скриптом переебывать системные пеиеменные путей.
Те скрипты что брал на англоязычных ресурсах не работают. Или введу плохого знания англицского, или общего скудоумия.
Может кто то сталкивался с это хуйней?
Напишите коротенький гайд для дауна?

Аноним 23/04/18 Пнд 16:25:50 #186 №1178270 
Как запиклить json объект? На выходе выдает почти одно и то же. Может есть какие-то альтернативы pickle?
Аноним 23/04/18 Пнд 16:34:10 #187 №1178272 
>>1178270
Что значит одно и то же? Pickle сериализует объект, превращает его в потом байтов. json — это обычный текст. Текст, превращённый в байты, если содержит только латинские буквы, примерно текстом же и останется, плюс хедеры/трейлеры самого пикла.
Тебе что не так-то вообще, что ты хочешь сделать? pickle.loads(pickle.dumps(tvoy_json)) выдаёт оригинальный объект? Если да, то pickle'а сделана, всё идёт как надо.
Аноним 23/04/18 Пнд 16:35:15 #188 №1178273 
>>1178272
>примерно текстом же и останется
В том плане, что при попытке отобразить принтом эти байты там будут нужные буквы из ascii набора.
Аноним 23/04/18 Пнд 16:38:53 #189 №1178275 
>>1178272
Нужно пачку json'ов по штуке записывать в файлы, и так, что бы в файле была полная каша, а там вполне все читабельно.
Аноним 23/04/18 Пнд 16:46:27 #190 №1178278 
Интересный факт.
В питоне можно называть переменные русскими буквами.
Пруф : https://ideone.com/EGM29D
Аноним 23/04/18 Пнд 16:48:54 #191 №1178279 
>>1178275
>что бы в файле была полная каша
Ну так и пользуйся криптографическими либами тогда, вроде https://cryptography.io/en/latest/ , пикл-то тут при чём? С чего ты его вообще использовать решил?
Аноним 23/04/18 Пнд 16:52:53 #192 №1178282 
1524491580669.gif
>>1178278
Аноним 23/04/18 Пнд 16:54:25 #193 №1178284 
>>1178279
> С чего ты его вообще использовать решил?
Потому что это самое первое в этом плане, с чем я познакомился. Я всякие объекты пихал в него, там и правда было все нечитабельно, а сейчас столкнулся с джейсоном и все. Спасибо, гляну.
Аноним 23/04/18 Пнд 17:10:53 #194 №1178292 
>>1178278
Добро пожаловать в удивительный мир utl8, можешь даже смайлики некоторые использовать
Аноним 23/04/18 Пнд 17:27:32 #195 №1178298 
image.png
>>1178278
ю маст ту го диппа
Аноним 23/04/18 Пнд 17:45:28 #196 №1178305 
https://github.com/orsinium/rutimeparser - RuTimeParser
Данный модуль содержит базовый класс и упрощающие работу с ним функции для извлечения даты и времени из текста на русском языке.
Аноним 23/04/18 Пнд 18:47:47 #197 №1178334 
>>1178168
>Существует библиотека Python.h

Python.h - это просто заголовочный файл, а не библиотека. К тому же твоя недомикросхема не имеет MCU, там вм не запустится.
Аноним 23/04/18 Пнд 18:50:03 #198 №1178336 
>>1178223
>можешь сделать лучше?

Технически могу, практически нет времени. Читай документацию по os.walk и меняй велосипеды на os.listdir на вызов стандартной функции.

Велосипеды - это верный признак хуевого знания stdlib, человек, который хуево знает stdlib вряд ли пишет хороший код.
Аноним 23/04/18 Пнд 18:54:37 #199 №1178340 
F9C7F725-7B97-4D51-9127-ED8CFF29906F.jpeg
Поясните плиз, зачем нужно вызывать метод parser.delete_first_token()? Пикрелейтед то, что написано в книге, не особо помогло.
Аноним 23/04/18 Пнд 19:03:11 #200 №1178343 
>>1178336
>os.walk
тащемта я так и делал вначале, но потом пришел анон и переибал все по своему

у меня были трудности что он выдавал мне разные списки, ну т.е инстанс отдельный списочный бля и я не понял как это склеить в один

а так то да, мне тоже кажется что это куда проще, ты тупо прогуливаешь по всему нахуй корню, получаешь все файлы и уже их итерабильным путем отсеиваешь, с другой стороны ты ведь так пройобываеешь адрес

кароче я ща попробую ту опртянку закоменитить что бы лучше понять как надо хранить данны переменых, а то пока в голове не работает

>вызов стандартной функции
это какой?

>Велосипеды - это верный признак хуевого знания stdlib
поясни я чет недогнал, олсо он хантил :3
Аноним 23/04/18 Пнд 19:06:55 #201 №1178344 
не могу принять по сокету сообщение больше чем 8192 по длинне. Возможно ли где нить настроить буфер чтоб можно было по пол метра и больше принимать за раз? Или надо пилить геморное разделения пакетов на такие маленькие куски?
Аноним 23/04/18 Пнд 19:30:19 #202 №1178356 
>>1178344
recv(10000000000000000000000000000000000000)
Аноним 23/04/18 Пнд 19:45:25 #203 №1178367 
Короче, такая идея.

Есть два класса:


class A1():
  @classmethod
  def first(instance):
    instance.x = 'POSHEL NAHUI POSHEL NAHUI POSHEL NAHUI PIDORAS'

class B2():
  def __init__(x):
    self.x = x

  def second():
    A1.first()

pig = B2('Documents request')
pig.second()


В первом классе есть метод.
Во втором классе тоже есть метод, который вызывает метод из первого класса.
Пока понятно? Едем дальше.

Как заставить метод из первого класса поменять значение для инстанса из второго класса? Другими словами, как отправить в первый класс имя инстанса?
__name__, очевидно, отдаёт имя класса
Может декоратор какой есть или double underscore метод?

Интересует именно решение, которое поможет автоматически пропихнуть конкретный инстанс в другой класс.
Аноним 23/04/18 Пнд 19:53:40 #204 №1178371 
image.png
>>1178367
>Как заставить метод из первого класса поменять значение для инстанса из второго класса?
передать туда self?
Аноним 23/04/18 Пнд 20:01:02 #205 №1178374 
>>1178344
TCP сам на куски всё рубит на пакеты тебе надо собирать свои данные за несколько recv вызовов.
https://stackoverflow.com/questions/17667903/python-socket-receive-large-amount-of-data

Если UDP, вот вот ещё — https://stackoverflow.com/questions/22819214/udp-message-too-long

>>1178356
Тебе тоже стоит почитать, видимо.
sageАноним 23/04/18 Пнд 20:08:02 #206 №1178377 
>>1178374
>Тебе тоже стоит почитать, видимо.
Уже читал, спасибо.
мимо обладатель прокси с фильтром содержимого и блокировкой доменов
Аноним 23/04/18 Пнд 20:22:26 #207 №1178383 
>>1178371
Точно, а то я тут сам себя перехитрил, спасибо.
Аноним 23/04/18 Пнд 20:23:30 #208 №1178384 
Джанганы, почему у меня пишет, что нет модуля django.core.context_processors ?
Аноним 23/04/18 Пнд 20:30:30 #209 №1178388 
>>1178384
>django.core.context_processors
первая ссылка в гугле
Аноним 23/04/18 Пнд 20:35:17 #210 №1178392 
>>1178377
>прокси с фильтром содержимого и блокировкой доменов
т.е. пользователь российского интернета?
Аноним 23/04/18 Пнд 20:36:24 #211 №1178393 
>>1178356
да, почему то больше 8192 не хочкт
Аноним 23/04/18 Пнд 20:36:50 #212 №1178394 
>>1178374
спасибо, разморочил
Аноним 23/04/18 Пнд 20:37:45 #213 №1178397 
1322144265x87834f0f.jpg
>>1178356
>>1178393
Аноним 23/04/18 Пнд 20:42:49 #214 №1178401 
>>1178397
щито поделать
Аноним 23/04/18 Пнд 20:45:16 #215 №1178403 
class clasnum01:
def __init__(self, name):
self.name = name

def funkciya(cls, stroka):
print(" " + ": " + stroka)

#print(<хей, анон, какую хренотень я должен сюда засунуть, дабы вывести данные конкретного объекта?> + ": " + stroka)

st1 = clasnum01("%имя_объекта%")
st1.funkciya("%выводимая_строка%")
st2 = clasnum02("%имя_второго_объекта%")
st2.funkciya("%вторая_выводимая_строка%")
Аноним 23/04/18 Пнд 20:46:17 #216 №1178404 
>>1178403
сука, вся разметка к херам
Аноним 23/04/18 Пнд 20:55:54 #217 №1178408 
>>1178403
input?
Аноним 23/04/18 Пнд 21:04:56 #218 №1178414 
>>1178408
Нет. Нужно вывести данные объектов, данных им при создании, вне зависимости от того, это st1 или st2. Пробовал self.name, несколько других вариантов – безуспешно.
Аноним 23/04/18 Пнд 21:18:13 #219 №1178423 
>>1178408
В примере выше строка
st1.funkciya("%выводимая_строка%")
должна выводить
%имя_объекта%: %выводимая строка%
А, например,
st2.funkciya("%выводимая_строка%")

%имя_второго_объекта%: %выводимая_строка%
Аноним 23/04/18 Пнд 21:39:48 #220 №1178433 
>>1178403
>class clasnum01:
class clasnum01():

>def funkciya(cls, stroka):
def funkciya(self, stroka):

><хей, анон, какую хренотень я должен сюда засунуть, дабы вывести данные конкретного объекта?>
self.name

Аноним 23/04/18 Пнд 21:49:19 #221 №1178444 
MS0fwf9dthumb.gif
>>1176234
Дождешься от вас помощи, выблядки.
os.system('C:\\......exe', 'runas')
Аноним 23/04/18 Пнд 21:50:07 #222 №1178446 
>>1178444
Блять, из-за вас ошибся, сволочи.
os.startfile конечно же
Аноним 23/04/18 Пнд 21:50:48 #223 №1178447 
>>1178336
>меняй велосипеды на os.listdir на вызов стандартной функции
>меняй вызов стандартной функции os.listdir на вызов стандартной функции
Че бля?
мимо автор велосипеда
Аноним 23/04/18 Пнд 22:24:01 #224 №1178456 
>>1178433
благодарит по-вкатывальщьи
Аноним 24/04/18 Втр 00:06:00 #225 №1178523 
image.png
Почему?
Аноним 24/04/18 Втр 04:53:20 #226 №1178608 
>>1178523
slots
Аноним 24/04/18 Втр 07:27:55 #227 №1178620 
>>1178523
>int(4).cache
Сам догадаешься?
Аноним 24/04/18 Втр 07:41:09 #228 №1178623 
>>1178523
У тебя же в ошибке все написано.
Ты пишешь логичную структуру, а потом внезапно съезжаешь с катушек и пишешь эту хуйню:
>a = int(2)
(где int вообще лишний, a = 2 по дефолту integer)
>a.cache = []
т.е
>2.cache = []
Что это? Естественно, он будет ругаться.
Аноним 24/04/18 Втр 09:39:44 #229 №1178649 
>>1178207
Анон, есть что-нибудь ультрагодное по шаблонам? Пытаюсь въехать в ООП и шаблоны, но идёт туго. Инфа преимущественно обобщающая, мне бы что-нибудь с примерами реальными и желательно на питоне.
Хочу написать плагин для коди и на этом попрактиковаться в ООП и паттернах, но в голове каша.
Аноним 24/04/18 Втр 09:52:23 #230 №1178652 
>>1178649
Я ООП и шаблоны вообще не курил, нахуй оно мне надо
Аноним 24/04/18 Втр 10:09:54 #231 №1178657 
Прошу помощи опять, джанго девочки внутри. Почему у меня UserCreationForm(request.POST) невалидная? В форме POST есть 'username' и 'password1', 'password2'. Это ещё один проёб в обратной совместимости, который они решили не упоминать в доках?
Аноним 24/04/18 Втр 11:46:23 #232 №1178697 
>>1178657
Пифия взяла отпуск, извини
Аноним 24/04/18 Втр 11:50:15 #233 №1178699 
>>1178649
Нахуй тебе не нужны эти шаблоны.Просто пиши код 24/7 и со временем сам будешь видеть как и где правильнее будет сделать
Аноним 24/04/18 Втр 12:04:30 #234 №1178705 
>>1178649
шаблоны дело годное
тащемто берёшь любую книгу по шаблонам и читаешь в метро и вдохновляешься. Ищи просто шаблоны и паттерны ООП
Можно конечно методом тыка до самому допереть. Но лучше почитать уже о изобретённом велосипеде. Как профит твои проекты будут так структкрированы что на них уже можно будет фапать еще не запуская. Мне лично очень импонирует секси кодик.
Аноним 24/04/18 Втр 12:08:53 #235 №1178707 
>>1178697
Чего?
Аноним 24/04/18 Втр 12:12:48 #236 №1178712 
>>1178705
Это часто чревато желанием впихивать десятки ферм фабрик синглтонов там, где можно обойтись функцией в несколько строк. Был у нас один такой любитель создать 10000 файлов в каждом из которых один класс с геттером и сеттером
Аноним 24/04/18 Втр 12:17:35 #237 №1178717 
>>1178712
ну когда только учишься так и будет
все равно общая тенденция в програмаче идет к упрощению.
Ведь шаблоны нужны исключительно для того чтобы код был поддерживаемый. Но это понимание приходит не сразу. Для начала нужно накостылять тыщу файлов фабрик и хитровыебаных сетеров
Аноним 24/04/18 Втр 12:21:19 #238 №1178718 
>>1178705
Да просто хочу работать на портфолио. Типа чтобы было что будущему работодателю показать, типа я не быдлокодер, а интеллигент, кек. Ну а вообще первым проектом бота делал для телеги, и я настолько хуёво его написал, что если исправить что-то в одной функции то сразу появляется 10 новых ошибок. Это принесло много страданий, боли и проёбанного времени, поэтому учиться писать хорошо надо с самого начала, ящитаю
Аноним 24/04/18 Втр 13:38:28 #239 №1178767 
>>1177079
>Про то, что Питон позволяет выполняться только одному потоку слышал, про ядро слышу впервые

Не уметь в логическое следствие - дорого стоит, хохлик
Аноним 24/04/18 Втр 13:48:01 #240 №1178770 
>>1178657
Олсо я просто передаю всё в форме на этот url и при создании объекта он невалидный. Всё остальное без ошибок. Хотя ввожу правильные буквы.
Аноним 24/04/18 Втр 13:50:12 #241 №1178773 
blocksheme.png
решил начать с логики, что думаешь анан?

чуть позже глубже почитаюб стдлибы напишу уже более вдумчиво

сейчас смущает тот факт что ос.волк теряет адрес, следовательно надо все делать поштучно
Аноним 24/04/18 Втр 14:43:04 #242 №1178800 
>>1178718
Всё, разобрался как эта хуйня работает. Пиздец блядь гайд для ёбаного дополнения для ёбаного вима 2к строк, да они все ебанулись!
Аноним 24/04/18 Втр 14:43:48 #243 №1178801 
>>1178800
не тот тред
Аноним 24/04/18 Втр 15:41:35 #244 №1178830 
>>1176187 (OP)
Привет, как в matplotlib изменить цвет для объекта класса figure?
Аноним 24/04/18 Втр 16:00:30 #245 №1178837 
>>1178830
Погуглить.
Аноним 24/04/18 Втр 17:00:28 #246 №1178851 
>>1178837
точно :(
Аноним 24/04/18 Втр 17:06:52 #247 №1178855 
image.png
ну штоа такое ?
Аноним 24/04/18 Втр 17:09:59 #248 №1178859 
>os.chdir(WRK_DIR)
починил
Аноним 24/04/18 Втр 17:13:47 #249 №1178862 
>>1178855
> нет подсветки кода ошибки в выводе
Тьфу бля
Аноним 24/04/18 Втр 17:15:41 #250 №1178866 
>>1178855
Что это ты там костылишь?
Аноним 24/04/18 Втр 17:23:25 #251 №1178870 
image.png
>>1178862
хм

>>1178866
>Что это ты там костылишь?
шебм из шапки + >>1177071

не могу переделать аноновский код, слишком рекурсивно для меня, когда вывод одной функции использует другая -- мой извилины просятся наружу, пробовал дебажить и ходить по шагам, но оно не взлетело

так что проще самому доделать как и хотел сразу

теперь у меня есть ринейм и ща приделаю создание папок, а потом копию в них
Аноним 24/04/18 Втр 17:40:55 #252 №1178883 
image.png
какой из стульев наиболее православный?

Аноним 24/04/18 Втр 17:59:44 #253 №1178896 
image.png
решил остаться с глобом, писать код для разархивирования мне впадлу, проще сделать поиск ручками и извлечь содержимое в одну папку и вней уже работать

все пожалуй на сегодня, если что пишите в лс ахаха
Аноним 24/04/18 Втр 18:19:30 #254 №1178916 
>>1178883
>>1178896
Всё это говно не нужно, используй pathlib.
Аноним 24/04/18 Втр 18:37:53 #255 №1178936 
>>1178916
>Всё это говно не нужно
чому?
Аноним 24/04/18 Втр 18:59:01 #256 №1178954 
как же сложно писать на вашем ебучем питоне. как вы вообще сложные серваки на нём поднимаете?
Аноним 24/04/18 Втр 19:21:19 #257 №1178964 
>>1178954
>как вы вообще сложные серваки на нём поднимаете?
>python -m http.server 8080
И готово.
Аноним 24/04/18 Втр 19:53:55 #258 №1178989 
>>1178936
Потому что есть pathlib.
Аноним 24/04/18 Втр 20:22:56 #259 №1178998 
Indian.jpg
Помогите кто чем может! имеется задача: слепить классификатор тематики текстов на основе Байесовского классификатора, т.е на входе у проги текст, а на выходе - тема текста (лит-ра, научные темы, личное письмо, /b/). Есть идея взаимодействия с бд, где будут значения(темы) и ключи(ключевые слова, индивидуальные у каждой темы). Какой примерно должен быть алгоритм работы? и мб кто поделится советами. Заранее спасибо.
Аноним 24/04/18 Втр 20:30:26 #260 №1179005 
vlcb4VBPUk.jpg
Планирую выучить питон + Джанго. Какие подводные камни?
вообще учу для создания одного диплома, и, надеюсь, что эти знания могут понадобиться мне при следующем поиске работы в мухосранске - красноярске
Аноним 24/04/18 Втр 20:37:34 #261 №1179011 
>>1178883
Прогони пару раз профайлером, и узнаешь.
Аноним 24/04/18 Втр 20:42:40 #262 №1179016 
>>1178870
>слишком рекурсивно для меня, когда вывод одной функции использует другая
Мань, ты сейчас описал полную противоположность рекурсии, насколько только это было возможно.

При рекурсии функция вызывает себя внутри себя.
Аноним 24/04/18 Втр 20:52:46 #263 №1179025 
image.png
>>1179011
да надо бы грузануть гигом жипежек, а то так неясно нихуя

>>1179016
>При рекурсии функция вызывает себя внутри себя.
>new_filename = f.replace("-","_")
>new_filename = "kml_" + new_filename
>os.rename(f,new_filename)
е е ай кнов, один хуй слишком сложна, особенно когда без каментов и не на одном экране

Аноним 24/04/18 Втр 20:53:04 #264 №1179026 
>>1178954
>сложно писать
:-)
>Серваки
:-D
Аноним 24/04/18 Втр 20:55:03 #265 №1179028 
>>1179005
>надеюсь, что эти знания могут понадобиться мне при следующем поиске работы
Спешу тебя огорчить:
https://habr.com/post/322332/
Аноним 24/04/18 Втр 20:59:11 #266 №1179034 
>>1179028
Да, я читал про это. Пиздец. Придётся всякую херню учить, сорт оф php и 1с битрикс
Даже Java нет. Просто блять не верю. Как будто розовые очки слетели
Аноним 24/04/18 Втр 20:59:33 #267 №1179035 
1358857034457.jpg
python.png
kBbPmyS9L7ghV0Mwoeq5PhVErMmqxXONr0SS9uXik.jpg
>>1178954
>как же сложно писать на вашем ебучем питоне
Аноним 24/04/18 Втр 21:00:44 #268 №1179037 
>>1178954
Согласен. Перекатывайся на Java, C++, c#
Там тупо изи. Рил то
Аноним 24/04/18 Втр 21:08:28 #269 №1179044 
>>1179028
>не надо учить питон, потому что потом не сможешь писать САЙТЫ ПОД КЛЮЧ за 20 тысяч в месяц
Проигрунькал со статьи. Это троллинг такой?
>2 года учил python, django и Cты-то куда лезиш, хуесосина
>В итоге, не знает даже Flask
Сренькнул с подливой.
Аноним 24/04/18 Втр 21:09:56 #270 №1179046 
>>1179037
Тогда уж сразу на BrainFuck.
Аноним 24/04/18 Втр 21:10:13 #271 №1179047 
>>1179044
Что не так?
Аноним 24/04/18 Втр 21:16:39 #272 №1179050 
>>1179028
>Получается ситуация, что можно изучить клевый язык программирования Python и остаться на улице уехать из мухосрани покорять столицу, с жильем яндекс\майл поможет, да и всегда можно модно молодежно прожить какое то время в хостеле. А можно выучить «ненавистный» php/1c и получить работу, кататься по говнам и впаривать 1ску тетям-сракам на пекарни инсталить, а потом править код за подпивасными васянами 1сникам\пыхарями. Качество этой работы, конечно же, оставляет много вопросов – но это уже опыт.

Аноним 24/04/18 Втр 21:29:31 #273 №1179060 
>>1179050
Можно подумать, в столицах дохуя требуются питонисты.
В итоге получается именно так, что
>Сразу идет большой отсев вакансий, где Python является исключительно вспомогательным языком
Аноним 24/04/18 Втр 21:34:36 #274 №1179063 
>>1179060
Что сказать то хотел?
Аноним 24/04/18 Втр 21:41:52 #275 №1179076 
image.jpg
мамкины программисты, подскажите какой классификатор на питоне лучше использовать для соотнесения текстов к определенным темам? (нейронки не предлагать)
Аноним 24/04/18 Втр 21:45:13 #276 №1179080 
>>1179076
Очень сложно. Я делал классификатор байесово-решающего правила, но я извращенец, поэтому реализовал его js+ jQuery
А тебе для чего, если не секрет? Ргз, диплом или работа?
Аноним 24/04/18 Втр 22:04:20 #277 №1179099 
>>1179080
Дипломчик. На js мне вообще не варик, кроме питона и немного С вообще нихуя не знаю
Аноним 24/04/18 Втр 22:05:22 #278 №1179100 
>>1179076
LDA гугли
Аноним 24/04/18 Втр 22:34:12 #279 №1179116 
image.png
>>1179060
>дохуя
но тебе то нужна только одна

9 вакансий без опыта, 130 с 1-2 года
Аноним 24/04/18 Втр 23:29:01 #280 №1179139 
>>1179116
>спойлер
Именно эти вакансии висят годами, они только ценник переставляют.
Аноним 24/04/18 Втр 23:30:24 #281 №1179140 
>>1179139
>Именно эти
все 139 ?
Аноним 24/04/18 Втр 23:42:23 #282 №1179142 
Есть ли на андроид нормальные интерпретаторы? (termux и qpython не подходят.)
Аноним 25/04/18 Срд 00:41:07 #283 №1179166 
image.png
>>1178989
>pathlib
оно конечно модно молодежно и высокоуровнего, с кучей плюшек и няштяков, но как я блять эту портянку сраную должен сплитить!?

просто в ахуе с его аутпута
Аноним 25/04/18 Срд 00:47:19 #284 №1179168 
>>1179166
>ls[0]
выдает четко без говна, но все равно путь полный блеадь, хуле мне с ним делать то?
Аноним 25/04/18 Срд 00:55:17 #285 №1179171 
>>1179168
Че ты блять делаешь? Нахуя тебе pathlib? Че ты хочешь сделать?
Аноним 25/04/18 Срд 01:59:01 #286 №1179188 
image.png
>>1179171
да вы заебали блядь, сука кого слушать то нахуй, кто у нас тут авторитет, нука встань, покажись епта

>Че ты хочешь сделать?
раскидать говно по папкам, чутка осталась финалочка
Аноним 25/04/18 Срд 02:13:15 #287 №1179192 
>>1179166
Чё сплитить-то надо, ёпту?
Аноним 25/04/18 Срд 02:14:27 #288 №1179193 
ладно я уже понал надо плясать от файла, типа склеить фолдер и сабфолдер и потом чекать их экзистивность и если нет то идти и создавать по ходу

>>1179192
ебать ты туговатый братишка, я же специально для тебя проводник открыл
Аноним 25/04/18 Срд 02:31:44 #289 №1179194 
>>1179076
Хуле не нейронки? На питоновских библиотеках ты это за два дня сделаешь с нейронками. Скачай кайрос и простой словарь на нужном языке.
Аноним 25/04/18 Срд 02:35:30 #290 №1179196 
image.png
фак йе битч надеюсь теперь то смогу уснуть спокойно :3

Аноним 25/04/18 Срд 02:54:13 #291 №1179200 
>>1179193
Где ты его открыл, нахуй?
Аноним 25/04/18 Срд 03:52:25 #292 №1179217 
>>1176187 (OP)
А чё б не качнуть Anaconda Potrable - там много всякого вшито такого, чего не поставишь в Python Portable. Чего только стоит Sympy. 500 мегабайт весит вся анаконда.
Аноним 25/04/18 Срд 04:08:01 #293 №1179219 
ef06c40055d2964861a7ed6aaaada13c.jpg
>>1179217
Анаконда? Я знаю только такую анаконду.
Аноним 25/04/18 Срд 11:06:53 #294 №1179279 
>>1176187 (OP)
Гайс нид хелп , пишу диплом для шараги на пайтоне ,суть в том что уменя уже есть UI к нему надо присабачить парсер сайтов , хотя бы для вики и хабра , подскажите советом есть ли способы получить текст с тегов сразу , про BeautifulSoup знаю , а что то что сразу дает текст есть ?
Аноним 25/04/18 Срд 11:44:56 #295 №1179296 
>>1179279
lxml и xpath. Xpath умеет в нормальный .text(), в индексы без ёбаных nextSibling'ов. Попробуй, ещё захочешь
Аноним 25/04/18 Срд 12:19:24 #296 №1179313 
>>1179279
scrapy же сть
Аноним 25/04/18 Срд 12:24:39 #297 №1179316 
https://pastebin.com/GF4J3ez1
почему при вызове метода update_user не хочет обновлять запись в бд?
Аноним 25/04/18 Срд 12:27:01 #298 №1179317 
Как правильно изучать питон? Не могу составить программу.

Почитал самоучитель на орге, полистал документацию, прорешал Укус Питона, осилил 470 страниц изучаем питон лутца(такое чувство что это тупо переложение документации), дальше не пошло, состяпал пару парсеров, чуть допилил, поразбирал код ученических програмок с гита...

а дальше как? Может кто ни будь расписать за полноценную комплексную программу изучения Питона? И какая его реализация лучше, может сразу Cython изучать?

ps кроме того почитал первые 100 страниц sicp, вкатился по введения по трилогии Танембаумачто бы иметь представление ну и по вики пошарил.
Аноним 25/04/18 Срд 12:27:09 #299 №1179318 
https://pastebin.com/GF4J3ez1
почему при вызове метода update_user не хочет обновлять запись в бд?
Аноним 25/04/18 Срд 12:39:34 #300 №1179324 
>>1179316
>https://pastebin.com/GF4J3ez1
ты хуйню какую-то написал.Сначала получи из базы объект, обнови его и закоммить.
Аноним 25/04/18 Срд 14:01:33 #301 №1179364 
>>1179317
Придумай себе достаточно большой но не огромный, посильный проект и оттачивай на нём навыки. Cython это вообще другое, это тебе не нужно.
Аноним 25/04/18 Срд 14:05:45 #302 №1179368 
image.png
>>1179217
>Sympy
воробьиный аннигилятор жи, вот если буду что нибудь серьезнее мутить, тогда заморочусь

>>1179317
кончай уроки дрочить, ищи уже вакансии и точи скилл под них

Аноним 25/04/18 Срд 14:17:16 #303 №1179378 
>>1179364
>>1179368
>ищи уже вакансии и точи скилл под них

ну а примерно? Мне интересно сетевое программирование. сокеты-хуёкиты, клиент-серверные приложения и тд. Есть примерный материал что бы в теме ориентироваться и мочь лавировать?

Аноним 25/04/18 Срд 14:19:09 #304 №1179379 
есть лист
array = [1, 4, 0, 3, 0, 1]
как сделать чтобы у него вместо цифр которые не 0 появились единички?
resultarray = [1, 1, 0, 1, 0, 1]
как я понимаю надо запихнуть лямбду которая будет каждый элемент делить на себя если это не 0
но в записи вида d = [x/x for x in array] я ифки не нашёл
десу
Аноним 25/04/18 Срд 14:24:26 #305 №1179381 
>>1179379
не надо никаких лямбд
[x if x == 0 else 1 for x in [0,2,3,4,0,1,5,3,0]]
Аноним 25/04/18 Срд 14:26:53 #306 №1179383 
>>1179381
ёбаныйврот
Аноним 25/04/18 Срд 14:28:17 #307 №1179385 
>>1179324
Спасибо, получилось
Аноним 25/04/18 Срд 15:13:34 #308 №1179410 
>>1179378
>сокеты-хуёкиты
Чат напиши. Или игру. Сетевой рогалик чтобы с графикой слишком не ебаться. Или пошаговое что-нибудь.
Аноним 25/04/18 Срд 15:16:43 #309 №1179412 
>>1179378
ну открой ты блять работа.яндекс или хх сука ну не тупи блять, откуда мы тут можем знать актуальный и востребованный стак технологий
Аноним 25/04/18 Срд 15:50:05 #310 №1179434 
изображение.png
>>1179412
"Отличное знание Python 3, желательно -Tornado, asyncio (aiohttp), PonyORM, Psycopg, SQLAlchemy, Flask, Pyramid/Werkzeug, Pylons, Hypothesis, Pytest, Nosetes"

первая же открытая вакансия... как то дохуя всего и врятли хотя бы 2\4 будет использоваться
Аноним 25/04/18 Срд 15:56:34 #311 №1179437 
>>1179381
это типа условие в списке? чому когда я читаю про списки там нет таких хаков!?

>>1179434
не грусти лисишка, это дрочево, открывай следующую вакансию хинт: не за 300к/нс из там около 250 мы уже выяснили
Аноним 25/04/18 Срд 16:44:24 #312 №1179460 
Анон помоги подобрать тип данных. Посоветуй плез.

Есть поисковая выдача с аниме сайта вида
{'name': name, 'link': link, 'thumb': thumb, 'info': info}

Естественно в поисковой выдаче тайтл бывает и не один, и не 10.
Собственно очевидным для меня является здесь список из словарей, но учитывая свой прежний опыт, когда я сначала наплодил сущностей, а потом страдал с извлечением из них данных на несколько уровней вложенности, теперь у меня фобия.

Посоветуй быть может принцип хранения и извлечения данных, чтобы после этого с ним было удобно работать. Я, если честно, не знаю где такой конструкт мне ещё пригодится, но пригодится 100%.
Как мне например потом обращаться к конкретному тайтлу? Через индексы в листе? Это же уёбищно! Или нет?
Аноним 25/04/18 Срд 16:53:14 #313 №1179463 
Ребя. Что спрашивают на собеседование по питону?
Аноним 25/04/18 Срд 16:56:31 #314 №1179467 
>>1179434
>>1179437
Дрочево?
Не будет использоваться?

Вместо того, чтобы разобраться в десятке библиотек для питона, ты собираешься их с нуля писать?
Дружище, почему тебя ещё не выписали в силиконовую долину за 3000к в наносекунду?

У тебя же золотые руки, ты с нуля, в сроки, напишешь полный стак для веб-приложения.
Аноним 25/04/18 Срд 16:56:54 #315 №1179470 
image.png
Почему после засовывания чего-то в Frame его размер уменьшается до размера 'чего-то'? Как это отключить\исправить?

Уже полчаса с этой проблемой ебусь вместо того, чтобы дальше кодить
Аноним 25/04/18 Срд 17:25:52 #316 №1179482 
>>1179463
Видосов в гугле полно! Готовься, потому что все говорят что собеседований нужно проходить много, с понтом с первого раза хуй пройдёшь.
Аноним 25/04/18 Срд 17:46:23 #317 №1179500 
>glob.glob('*.jpg'):
как сделать это говно отъебавшее мне голову сука регистронезависимым?

хавает эта дрянь только один аргумент, хотел тупо капс подставить но нихуя
Аноним 25/04/18 Срд 17:49:14 #318 №1179504 
>>1179500
Ты до сих пор раскидываешь свои картинки по папкам?
Аноним 25/04/18 Срд 18:02:58 #319 №1179510 
image.png
>>1179504
дядь ну папок то много, с паттерном я угадал охуенно, приспособить под новую залупу легко просто модно молодежно в одном месте, не сравнить с той оопешной портянкой анона и трилионом ненужных защит

а вот про расширение как то забыл
Аноним 25/04/18 Срд 18:38:38 #320 №1179530 
image.png
Закончил свою первую программу с графическим интерфейсом:
https://repl.it/@JanWhite/ComplicatedEssentialSystemresource
У кого есть время - зацените, буду рад любым комментариям о том, что не так, что надо исправить все как всегда.

Кстати есть проблема, с которой так и не смог разобраться - пикрил. Frame с игровым полем должен занимать все свободное пространство. Но при сильном растяжении появляются эти пробелы. Почему?
Аноним 25/04/18 Срд 19:25:11 #321 №1179557 
>>1179530
чому ткинтер а не куть?
Аноним 25/04/18 Срд 19:34:57 #322 №1179565 
>>1179557
Потому что Саммерфильд и Лутц рассказывают о нем, а не о кьюти. Потому что он стандартный и работает везде, где есть Пистон.
Аноним 25/04/18 Срд 19:54:57 #323 №1179587 
>>1179565
>работает везде, где есть Пистон
>File "/usr/lib/python3.6/tkinter/__init__.py", line 36, in <module>
>import _tkinter # If this fails your Python may not be configured for Tk
>ImportError: libtk8.6.so: cannot open shared object file: No such file or directory
куть4 есть на всех нормальных машинах
Аноним 25/04/18 Срд 20:08:47 #324 №1179602 
>>1179587
Так проблема не в ОС, а в твоем пистоне в котором по какой-то причине нету tkinterа
Аноним 25/04/18 Срд 20:10:11 #325 №1179605 
>>1179587
А, блять, это ж линукс, либо то скачай ебать, как-будто там qt не надо доустанавливать в питон
Аноним 25/04/18 Срд 20:24:48 #326 №1179616 
image.png
>>1179605
>это ж линукс
800 пакетов хуле

>как-будто там qt не надо доустанавливать
niet
Аноним 25/04/18 Срд 20:33:17 #327 №1179627 
image.png
>pacman -S tk
meh в опциях оказца был

ну рамки пиздец ад, меня таким на первом курсе шараги на плюсах ебали
Аноним 25/04/18 Срд 20:33:56 #328 №1179628 
Untitled.png
>>1179616
А у меня да
Аноним 25/04/18 Срд 20:36:55 #329 №1179635 
>>1179616
А эт зачем? https://www.archlinux.org/packages/extra/x86_64/python-pyqt4/
Аноним 25/04/18 Срд 20:40:14 #330 №1179637 
image.png
image.png
>>1179628
хотел было написать что шрифт говно и де для ущербов, но походу я сам ОБМАНУЛСЯ
Аноним 25/04/18 Срд 20:45:08 #331 №1179643 
Посоны, как разделить строку по заглавным буквам? Есть строка,
str = 'Получать каждый деньНе получать оповещенияПолучать каждый часПолучать каждый деньПолучать еженедельно'
нужен из нее массив, по фразам, которые начинаются с заглавных. С регулярками не дружу, подскажите, пожалуйста.
Аноним 25/04/18 Срд 20:59:21 #332 №1179654 
>>1179643
можно проверить заглавные с помощью метода isupper()
Аноним 25/04/18 Срд 21:33:53 #333 №1179666 
>>1177852
как вариант: "\" экранирует букву "i".
Аноним 25/04/18 Срд 22:02:23 #334 №1179684 
>>1177852
Во-первых, ты хуй.
Во-вторых, интерпретатор понятия не имеет, где лежит каталог 'front', даже если бы он лежал там же, где твой PY-скрипт. Начинай с диска C:\\ и пиши путь с него до конца.
В-третьих, '\' - элемент экранирования. Для указания пути его нужно тоже экранировать, а следовательно, писать '\\'.
В-четвертых, .read вообще работать не будет. Вернее, будет не так, как ты хочешь. Это функция. Функция должна иметь скобки после нее.
В-пятых, ты хуй. Пререкаться он тут вздумал, не прочитав основы основ.
Аноним 25/04/18 Срд 22:13:33 #335 №1179692 
>>1179684
>где твой PY-скрипт
. .. или не?
Аноним 25/04/18 Срд 22:31:06 #336 №1179706 
>>1176187 (OP)
На питоне ведь нет фриланса, правда?
ЕБАНЫЙ Tkinter Аноним 25/04/18 Срд 22:49:24 #337 №1179718 
сука как же я заебался. Решил поиграться с этим дерьмом, лучше же когда какое-то даже самое небольшое нахуй ненужное никому приложение имеет красивую графическую оболочку, просто приятно + хотел как-то отвлечься от рутины, но хуй там. Вроде всё понятно, но сука это не html, это непонятно вообще что, как здесь вообще происходит позиционирование??? Юзал фреймы, отступов как я понял нет и шо делать?
Типо просто поставить .pack(side='left') хуйня как по мне, если бы были проценты в ширине и длине, то ещё как-то бы ужился, но это уже совсем пиздец. блять, что я вообще написал, бред какой-то, крч просто поделитесь опытом корырянии в этой залупе, может остыну наконец
Аноним 25/04/18 Срд 23:12:37 #338 №1179737 
>>1179718
просто тикель днина ебаная, господа пользуются кути дизигнером и суют в него скриптули свои
Аноним 25/04/18 Срд 23:23:43 #339 №1179744 
>>1179737
и шо це такое?
Аноним 25/04/18 Срд 23:25:01 #340 №1179745 
>>1179737
> дисигнер
И как эту ебалу настроить? Я помню где-то скидывали танцы с бубном, но я проебал
Аноним 25/04/18 Срд 23:52:15 #341 №1179769 
>>1179718
Прекратите вы уже пытаться пилить гуи на питоне. Заебеньте на c# в студии, по красоте. Нахуй страдать с этими ткинтерами?
Аноним 26/04/18 Чтв 00:02:17 #342 №1179776 
>>1179769
насколько быстро можно туда вкатиться чтобы написать простенькую хуету с формами и обработкой полученной инфы?
Аноним 26/04/18 Чтв 00:26:38 #343 №1179785 
>>1179769
А с сисярпом так же получится работающее везде и на всем приложение?
Аноним 26/04/18 Чтв 00:34:49 #344 №1179789 
image.png
>>1179769
>c#
для пидоров и упити-даунов, уходи

Аноним 26/04/18 Чтв 01:58:34 #345 №1179815 
>>1177043
У тебя ошибка, скорее всего в коде.
Аноним 26/04/18 Чтв 05:30:47 #346 №1179836 
>>1179460
>было удобно работать.
Так а чты с этими результатами хочешь сделать-то потом? От этого удобство будет зависеть же. Вывести их все на экран? Тогда список, да. Если тебе хочется иметь быстрый доступ к любому случайному тайтлу по названию, чтобы вытащить картинку или инфу, то сделать словарь.

>>1179643
https://repl.it/repls/FlimsyFaintSoftwareengineer

>>1179684
>Начинай с диска C:\\ и пиши путь с него до конца.
В относительных путях нет ничего плохого, они даже хороши, особенно если хардкодятся пути.
Аноним 26/04/18 Чтв 07:23:53 #347 №1179843 
seg.png
>>1179718
заюзай какой-нибудь визуальный конструктор форм, типа https://github.com/alejandroautalan/pygubu
>requires Python >= 2.7
Аноним 26/04/18 Чтв 09:26:30 #348 №1179862 
>>1179219
https://anaconda.org/gallery там внизу про вшитые пакеты.
Аноним 26/04/18 Чтв 10:40:46 #349 №1179879 
тред катится не туда
Аноним 26/04/18 Чтв 11:22:39 #350 №1179904 
Анон, вкатываюсь на собесы джанго джуном.
1)Какого рода вопросов стоит ждать по html и css?
2)Какого уровня должны быть(и нужны ли они вообще джуну или прихватятся потом) познания в во всяких js, jquery и иже с ними?
3)Правильно ли я понимаю что относительно свободного владения по данным https://youtu.be/070WyS06e-Q https://youtu.be/DEwgZNC-KyE темам хватит что бы себя показать в непосредственно python?
4)Прошу пояснить где та тонкая грань необходимых знаний по самому фрейморвку.
5) Чем помимо корявого бложека разукрасить git?
6) В какую БД сделать упор MySQL или же postgres?
7) Нужно ли джуну знание всякой асинхронки типа tornado и ajax? Накидайте по возможности годных факов по ним.
Аноним 26/04/18 Чтв 12:05:16 #351 №1179916 
>>1179904
По-моему, без js в вебе делать сегодня абсолютно нечего.

Отсюда вопрос: а нахуя вы вообще учите питон и джанги, если всё равно потом js учить? Почему бы сразу на ноду не укатиться?
Аноним 26/04/18 Чтв 12:36:23 #352 №1179941 
>>1179785
А зачем тебе приложение работающее на всём? Это прямо как охуительная история с джавой и тремя миллиардами устройств
Аноним 26/04/18 Чтв 12:38:14 #353 №1179942 
>>1179776
Что значит вкатиться? Ты просто идёшь и пишешь классики с немного другим синтаксисом. Нихуя сложного
Аноним 26/04/18 Чтв 13:40:53 #354 №1180012 
Анон подскажи а для 2.7 есть годные и актуальные либы для асинхронного прогарммирования. Хочу вкатиться в асинхронку, но существующий проект ограничен совместимостью с 2 и 3 питоном, поэтому async не выйдет.
Аноним 26/04/18 Чтв 13:43:47 #355 №1180013 
>>1180012
может быть tornado?
Аноним 26/04/18 Чтв 14:16:58 #356 №1180029 
Во что углубляться, если я совсем мало знаю, чтобы где-то через полгода пойти джуном? Продолжать пытаться в вебдев или дрочить ПО и графические интерфейсы? Вообще я хотел нырнуть в машоб, ну или по крайней мере сначала в разработку ПО. Но, как видно, джуны нужны только в вебе.
Аноним 26/04/18 Чтв 14:26:25 #357 №1180034 
>>1180013
spasibo, posmotrim
Аноним 26/04/18 Чтв 14:40:14 #358 №1180038 
>>1180012
twisted ?
Аноним 26/04/18 Чтв 15:37:34 #359 №1180075 
Анон может ты знаешь, что там используется для преобразования этих ссылок

Есть ссылка:
https%3a%2f%2ffs.netvi.ru%2fstream%2f2676301.mp4%3fd%3d1419%26ri%3dLLELxb1a0U2nqaicOyuV5g2%26ref%3dhttp%253a%252f%252faniplay.tv%252fanimes%252frealnaya-devushka-3d-kanojo-rus%26s%3dKZw7Me0IRYr7UPb_hlh85CWjkT_ATb-3TRs6XzXQ3ru0a_nHUIGslGkbOBa8MRMF0wlG5Ht6tUaoU-LqY0ATZA2

Как мне из неё получить рабочую, вот такую:
https://fs.netvi.ru/stream/2676301.mp4?d=1419&ri=LLELxb1a0U2nqaicOyuV5g2&ref=http%3a%2f%2faniplay.tv%2fanimes%2frealnaya-devushka-3d-kanojo-rus&s=KZw7Me0IRYr7UPb_hlh85CWjkT_ATb-3TRs6XzXQ3ru0a_nHUIGslGkbOBa8MRMF0wlG5Ht6tUaoU-LqY0ATZA2
Аноним 26/04/18 Чтв 16:05:40 #360 №1180096 
>>1180075
Всё, нашёл.
С помощью urllib.parse.unquote(url)
Аноним 26/04/18 Чтв 16:14:42 #361 №1180108 
>>1180096
Пиздец через какую же боль и страдания нужно пройти чтобы написать ебучий парсер если ты ньюфаг
Блядь, на каждом этапе проблемы, нельзя просто так взять и получить ссылку на видео.
Аноним 26/04/18 Чтв 16:15:23 #362 №1180109 
>>1180038
И тебе спасибо.
Аноним 26/04/18 Чтв 17:25:16 #363 №1180156 
for x in list:
    for y in list:
        for z in list:
            for a in list:
                print(x(y(z(a))))

Как избегать подобных конструкций?
Должен существовать простой и элегантный способ, чтобы перемножать между объекты.
Аноним 26/04/18 Чтв 17:39:47 #364 №1180166 
>>1180156
и он называется Numpy!
https://docs.scipy.org/doc/numpy-1.13.0/user/quickstart.html#basic-operations
Аноним 26/04/18 Чтв 18:18:31 #365 №1180192 
>>1180156
itertools.product
Аноним 26/04/18 Чтв 18:24:53 #366 №1180201 
Не могу найти нормальный гайд как скомпилировать в мси чтоб с dll и запускалось быстро и весило мало?
Аноним 26/04/18 Чтв 18:26:34 #367 №1180202 
>>1180166
>>1180192
Буду разбираться, спасибо.
Аноним 26/04/18 Чтв 19:34:36 #368 №1180225 
>>1180201
хочешь компилировать - учи D, C, Ocaml
Аноним 26/04/18 Чтв 19:47:49 #369 №1180231 
>>1180108
>нельзя просто так взять и получить ссылку на видео.
Зато насколько слаще потом дрочишь на это скаченное видео!
Аноним 26/04/18 Чтв 20:04:00 #370 №1180238 
>>1180225
Пошёл нахуй. По твоему вообще зачем питон нужен?
Аноним 26/04/18 Чтв 20:43:30 #371 №1180261 
image.png
кароче неустоял и таки обмазался этим несвежим говном

одна комманда и моя ванна полна говна

теперь передомной возник вопрос - что делать дальше анон? гайды дохуя замрочные, почему там блять ПРОСТО не написано как это подключить что б работало?

ну и да есть хоть какой то выйгрыш для конечного пользования в тикеле заместо кути?

и еще чем отличается tk вкладка от ttk ?
Аноним 26/04/18 Чтв 20:51:17 #372 №1180264 
tumblrmr0ry3o34x1qgb3euo11280.jpg
Насколько хорошая идея держать gevent.pool внутри гринлета? Вот к примеру есть "актор" – http://sdiehl.github.io/gevent-tutorial/#actors , я хочу чтобы на receive он запускал новый гринлет на своем пуле через apply_async (http://www.gevent.org/api/gevent.pool.html#gevent.pool.Pool.apply_async) и обрабатывал там входящие данные, gevent не будет охуевать от такого?
Аноним 27/04/18 Птн 01:25:08 #373 №1180388 
https://www.palletsprojects.com/blog/flask-1-0-released/
Аноним 27/04/18 Птн 01:58:03 #374 №1180392 
>>1180388
> from flask import g
> каждый пук на глобальных переменных
> самый популярный python микрофреймворк
за що?
Аноним 27/04/18 Птн 10:05:55 #375 №1180442 
Двачую. >>1180029
Аноним 27/04/18 Птн 10:16:27 #376 №1180447 
>>1177978
Спасибо, анонче
Аноним 27/04/18 Птн 10:46:19 #377 №1180455 
>>1176187 (OP)
Как в питоне проглить параллелизм и автоматическую векторизацию функций, условий и циклов на GPU?

Попробовал вот это:
https://nyu-cds.github.io/python-numba/05-cuda/
в частности - вот это:


from __future__ import division

#cmd ->
#SET NUMBA_ENABLE_CUDASIM=1
#ENTER
#then run this file...

from numba import cuda
import numpy
import math

# CUDA kernel
@cuda.jit
def my_kernel(io_array):
pos = cuda.grid(1)
if pos < io_array.size:
io_array[pos] *= 2 # do the computation

# Host code
data = numpy.ones(256)
threadsperblock = 256
blockspergrid = math.ceil(data.shape[0] / threadsperblock)
my_kernel[blockspergrid, threadsperblock](data)
print(data)

И оно не работает.
Но если сделать сначала, как написано в примечании, то работает...

Хотелось бы автоматически параллелить код, чтоб жужжали видеокарты, а не процессор.
Аноним 27/04/18 Птн 15:00:04 #378 №1180521 
>>1180455
Чтоб не делать SET NUMBA_ENABLE_CUDASIM=1, прописал в .py-файл это:
http://possiblybrainful.blogspot.com/2016/08/numba-and-cuda-toolkit-8.html

import os
os.environ['NUMBAPRO_NVVM']=r'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\nvvm\bin\nvvm64_31_0.dll'
os.environ['NUMBAPRO_LIBDEVICE']=r'C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\nvvm\libdevice'


Вижу тут есть некоторые методы векторизации функций:
http://hplgit.github.io/primer.html/doc/pub/plot/._plot-solarized005.html
и тут: https://docs.scipy.org/doc/numpy-1.13.0/user/c-info.ufunc-tutorial.html
через ufunc. Она пишется на языке С.

Вопрос: можно ли как-то автоматически, преобразовать функцию на языке puthon в ufunc на C,
или же просто векторизовать циклы и условия в какой-нибудь питоновой функции, вида

>def myfunc(x)
>    ... return someone

или векторизовать весь py-файл, ну - чтобы видимокарты гудели.
Аноним 27/04/18 Птн 18:31:00 #379 №1180596 
не кидайтесь палками, но что лучше пройти - русский skillfactory или зарубежный udacity для анализа данных в питоне?
Аноним 27/04/18 Птн 19:41:01 #380 №1180617 
А изучать Python и его железного брата через MS VS - ZASHQUARNA?
Аноним 27/04/18 Птн 19:52:53 #381 №1180626 
>>1180617
Si senora
Аноним 27/04/18 Птн 19:56:51 #382 №1180628 
Как удалить самый большой eigenvalue из массива NxM?
Аноним 27/04/18 Птн 20:02:44 #383 №1180631 
>>1180626
Ну, тащемта, такие смутные мысли меня и посетили при установке видимой студии. Удалил, стёр.
Потом поставил, начал смотреть. Не, вроде бы да...
Виртуальное окружение железного питона проёбано, вся реализация какая-то мудрёная, подходящая для формоклёпок от МС и Бырланда/Эмбракадеро


Ну и славно. Лежат ещё Атом и Эклипс с PyDev. Зря только железного ставил
Аноним 27/04/18 Птн 20:05:03 #384 №1180634 
Анон, помоги.
Написал скрипт для текучки в офисе, появились другие желающие им пользоваться.
Скрипт использует dash и plotly, чтобы из браузера можно было смотреть, ну вы понели.

Вопрос: как поставить питон на windows server, чтобы скрипт был доступен не только, когда включен мой ПК, а всегда крутился на серваке.


Есть windows server и доступ к нему. В администрировании я вообще не шарю, к сожалению
Аноним 27/04/18 Птн 20:18:49 #385 №1180639 
>>1180628
питояншишь его в numpy
>>> a = np.random.random((2,3))
>>> a
array([[ 0.18626021, 0.34556073, 0.39676747],
[ 0.53881673, 0.41919451, 0.6852195 ]])
>>> a.sum()
2.5718191614547998
>>> a.min()
0.1862602113776709
>>> a.max()
0.6852195003967595

Зная самый большой элемент, можно построчно построить новый лист, не включив именно этот элемент.
Аноним 27/04/18 Птн 20:24:50 #386 №1180645 
>>1180634
тащемта никакого секрета тут нет. просто берёшь и ставишь.
Из терминала
Аноним 27/04/18 Птн 20:41:53 #387 №1180652 
>>1180634
Попробуй обратиться к тому, кто в вашем офисе занимается администрированием этого самого windows сервера.
Аноним 27/04/18 Птн 21:24:07 #388 №1180663 
Не знаю, по теме ли. Есть такая задача:
список файлов формата .txt
в каждом из них строки порою различного формата, числа, к котором я хочу обратиться также бывают с точкой или с запятой в качестве десятичного разделителя. Числа расположены даже в пределах одного файла в разных местах. Помимо нужных чисел также есть другие числовые значения, но чаще все же они отдельно стоят. Но когда они есть это может быть проблемой, их можно и спутать видимо

Задача: по каждому файлу считать сумму

Как я хочу сделать:
1. либо считываю каждый файл в питон либо открываю все циклом(чаще всего файлов кроме этих формата .txt в папке нет)
2. тут я хочу написать какую-то функцию которая будет для всех строк в каждом файле выбирать нужное число


В общем вот, не знаю зачем я это пишу, кода не прошу - возможно совета. Цель именно сделать самому,
Аноним 27/04/18 Птн 22:11:54 #389 №1180698 
>>1180663
>либо открываю все циклом
Че бля значит все целиком?

Хер знает что у тебя там за различный формат, для всех стандартных json, csv, html, xml etc есть стандартные парсеры. Если у тебя какой-то кастомный формат, то тут берешь регулярки модуль re и хуяришьбез задней мысли
Аноним 27/04/18 Птн 22:17:36 #390 №1180704 
>>1176187 (OP)
Есть вопрос. Как правильно править код в файле cygwinccompiler.py? И нужно ли его править?

Я заинтересовался векторизацией циклов и условий для параллелизма на GPU.

Сначала - зашёл сюда: http://docs.sympy.org/latest/modules/utilities/autowrap.html
И выполняю это:
from sympy import *
from sympy.abc import x
import time
start_time = time.clock()
expr = sin(x)/x
from sympy.utilities.autowrap import ufuncify
f = ufuncify([x], expr)
print(time.clock() - start_time)
print("seconds")


В результате - ошибка:

File "D:\Anaconda\lib\distutils\cygwinccompiler.py", line 135, in __init__
if self.ld_version >= "2.10.90":
TypeError: '>=' not supported between instances of 'NoneType' and 'str'


А там, внутри этого py-файла, по этой строке - вот что:
self.gcc_version, self.ld_version, self.dllwrap_version = \
get_versions()
self.debug_print(self.compiler_type + ": gcc %s, ld %s, dllwrap %s\n" %
(self.gcc_version,
self.ld_version,
self.dllwrap_version) )
...
if self.ld_version >= "2.10.90":
self.linker_dll = "gcc"
else:
self.linker_dll = "dllwrap"
...


При попытке использования предыдущего компилятора, msvc
тоже выдавалась ошибка:
customize MSVCCompiler
customize MSVCCompiler using build_ext
building 'wrapper_module_0' extension
compiling C sources
error: Unable to find vcvarsall.bat

Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 10:22:32) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

Visual C++ 2015 (14.0) как раз соответствует MSC_VER=1900
судя по этому посту: https://stackoverflow.com/questions/2676763/what-version-of-visual-studio-is-python-on-my-computer-compiled-with

В душе не ебу где качать Visual C++ 2015, поэтому качнул и поставил mingw32
http://mingw-w64.org/doku.php
и вот эти все компиляторы: http://win-builds.org/doku.php/download_and_installation_from_windows

Комманды, из папки компилятора - выдают следующее:
gcc -dumpversion
ld -v
dllwrap -version

C:\programs\mingw32\bin>gcc -dumpversion
4.8.3
C:\programs\mingw32\bin>ld -v
GNU ld (GNU Binutils) 2.24
C:\programs\mingw32\bin>dllwrap -version
GNU dllwrap (GNU Binutils) 2.24
Copyright 2013 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) any later version.
This program has absolutely no warranty.

Как правильно прописать это в коде? И нужно ли править?

Там в дистрибутиве Win-bilds есть ещё много компиляторов,
и если прописать тот же gcc в файле distutils.cfg


Там ещё дохуя компиляторов всяких, но если прописать gcc
в файле distutils.cfg, вот так:
[build]

#compiler=mingw32
#compiler=msvc
compiler=gcc

то всё-равно выдаёт хуйню какую-то:
building extension "wrapper_module_0" sources
build_src: building npy-pkg config files
error: don't know how to compile C/C++ code on platform 'nt' with 'gcc' compiler


Короче, как правильно запустить эту фунцию ufuncify?
Может вообще ничего не надо править в коде, а надо лишь какие-то переменные добавить?
Или может другой компилятор использовать?
Или может есть у кого установочник Visual Studio 2015, а то 2017-й не ставится, и просит какое-то обновление ебучее.
Windows 8.1 x64.
Аноним 27/04/18 Птн 22:31:09 #391 №1180719 
Двач, надо алгоритм, который выбирал бы случайное число исходя из вероятности его появления. Скажем, есть числа 2, 1, их вероятности равны 0,8 и 0,2.
Сам накостылял такой вариант https://pastebin.com/kwFMesdV
Он шустрый, что плюс, он он "субъктивный" что ли, те, если сгенерить рандомом одно и то же число, но пройтись по списку чисел (1, 2) в другом порядке, то и результат выйдет другой. Есть идеи?
Аноним 27/04/18 Птн 22:41:35 #392 №1180733 
>>1180719
Делал скрипт вычисляющий победителя по кол-ву купленных тикетов товара.
Хуярил всех покупателей тикетов в единый список, длинной == общему кол-ву тикетов, каждый покупатель повторялся в списке столько раз, сколько он билетов купил (это шанс), как по мне - самый простой вариант.
Аноним 27/04/18 Птн 22:45:09 #393 №1180741 
>>1180733
У твоего таже проблема что и у моего способа, только твой невъебенно медленный
Аноним 27/04/18 Птн 22:55:30 #394 №1180768 
>>1180741
Разве такая же?
Может пояснишь?
Аноним 27/04/18 Птн 23:00:01 #395 №1180779 
>>1180768
Твой алгоритм (скажем, при выпадении в рандоме 0,3 - те 30 элемент в твоем списке) даст разный ответ, в зависимости от того, в какой последовательности ты положил числа в список (те первые 50 это единицы, вторые 50 - двойки, или наоборот).
У меня так же хуйня, только без списка (который сам по себе медленный, так еще и растет пропорционально размерности задачи).
Аноним 27/04/18 Птн 23:05:38 #396 №1180793 
>>1180719
> Скажем, есть числа 2, 1, их вероятности равны 0,8 и 0,2
Рандом даёт флоат от нуля до единицы.

return 2 if rand < 0.8 else 1

Если несколько чисел так с вероятностями будут, то либо сортируешь и быстро высчитываешь длину «блоков» одинаковых чисел и за счет этого выставляешь сразу вероятности, либо заводишь словарь, где ключ — определенное число, значение — общее число совпадений в списке (после заполнения словаря можно будет рассчитать вероятности).

Далее имеешь что-то вроде списка кортежей (число, вероятность), сумма вероятностей будет единице равна. Код получения рандомного элемента в этом случае будет примерно так выглядеть: https://ideone.com/uFWrpA

Писал в спешке, проверь все сам.
Аноним 27/04/18 Птн 23:07:31 #397 №1180797 
>>1180793
Ты скопипастил код с моей пасты и принес его мне ? :)
Аноним 27/04/18 Птн 23:07:45 #398 №1180798 
>>1180779
У меня список не растет, он от 30 до 150 символов.
Ну ок, первые 30 это единицы, вторые 70 это двойки, затем применяю рандом.choice на это все, работает вполне себе.
Не ок? Тогда стоит перемешать при заполнении, или после, сохранив пропорцию.
Медленно? Применяем нампай.аррай() и методы нампая.
Аноним 27/04/18 Птн 23:09:19 #399 №1180801 
>>1180798
А если чисел овер 5к ? (вероятность ведь может быть и меньше 1%)
Аноним 27/04/18 Птн 23:09:49 #400 №1180804 
>>1180797
Бля, точно, отвлекся на свои дела. Тогда у тебя самой простой и очевидной части кода нет, в чем проблема-то?
Аноним 27/04/18 Птн 23:09:59 #401 №1180805 
>>1180798
>Не ок? Тогда стоит перемешать при заполнении, или после, сохранив пропорцию.
Вот это уже годнее вырик
Аноним 27/04/18 Птн 23:10:58 #402 №1180807 
>>1180804
>в чем проблема-то
Этот способ меня как то морально не удовлетворяет
Аноним 27/04/18 Птн 23:13:07 #403 №1180810 
>>1180807
Почитал, что ты там написал в ОП-посте, и могу только сказать, что ты что-то не так понимаешь. Так делают _все_. Если шизик, то отсортируй список кортежей по нулевому элементу, но это явно хуета будет ненужная, если че.
Аноним 27/04/18 Птн 23:14:32 #404 №1180813 
>>1180801
Верно, но как я сказал - у меня жестко задан размер ограничениями системы.
Думаю при 5к я бы встретился с медлительностью кода и начал думать над более быстрым решением.
Но вот приведенный код, я так до конца и не понял, что там и к чему.
Аноним 27/04/18 Птн 23:15:25 #405 №1180814 
>>1180810
Ну ок, коль это верифицированный способ, то так и оставлю.
Аноним 27/04/18 Птн 23:18:26 #406 №1180821 
>>1180814
Ну ты забавный просто. Функция рандома — возвращать некоторые с виду случайные результаты в зависимости от разных факторов. Что зерно ГПСЧ, что логи драйверов, что порядок входных данных — всё сойдет. Нет никакого смысла тебе от еще одного фактора рандома отказываться, делая сортировку.
Аноним 28/04/18 Суб 04:09:38 #407 №1180920 
>>1176187 (OP)
Я вообще не программист и изучаю Python пока что исключительно в "SoloLearn: Учимся программировать" https://play.google.com/store/apps/details?id=com.sololearn поскольку там это представлено относительно доступно и в виде игры что ли, в общем относительно понятно, хотя конечно и в несколько скомканном виде когда приходится догадываться о назначении того или иного слова сокращения которое что либо делает. Ну я не там не только Python смотрю, я вообще смотрю, но наиболее основательно пока что в Python сижу, правда играл не так много ещё, всего 2 дня, остановился на курсе Функции и Модули на уроке 7 Модули. Ну так, забавно в общем.
Аноним 28/04/18 Суб 06:41:03 #408 №1180930 
Анон, только вкатился в прогание, до этого только лабы про матрицы писал, поэтому полное дно, такой вопрос:
у меня есть список из параметров для дропдаун лист (столбец один, столбец 2...столбец n)

Идея в том, что на экран выводится таблица, которая фильтруется по выбранному из списка параметрам, нужно перебрать все варианты выбора фильтров.

Я пишу, что-то вроде:

if (Year is None or len(Year) == 0 or Year[0] == "All years") and \
(Country is None or len(Country) == 0 or Country[0] == "All countries") and \
(Agency is None or len(Agency) == 0 or Agency[0] == "All agency") and \
(City is None or len(City) == 0)and \
(Property_name is None or len(Property_name) == 0)and \
(Class is None or len(Class) == 0):
return all_deals_query_df.to_dict('records')



if (Year == Year) and \
(Country is None or len(Country) == 0 or Country[0] == "All countries") and \
(Agency is None or len(Agency) == 0 or Agency[0] == "All agency") and \
(City is None or len(City) == 0) and \
(Property_name is None or len(Property_name) == 0)and \
(Class is None or len(Class) == 0):
return all_deals_query_df[(all_deals_query_df['Year'].isin(Year))].to_dict('records')

if (Country == Country) and \
(Year is None or len(Year) == 0 or Year[0] == "All years") and \
(Agency is None or len(Agency) == 0 or Agency[0] == "All agency") and \
(City is None or len(City) == 0)and \
(Property_name is None or len(Property_name) == 0)and \
(Class is None or len(Class) == 0):
return all_deals_query_df[(all_deals_query_df['Country'].isin(Country))].to_dict('records')

if (Agency == Agency) and \
(Year is None or len(Year) == 0 or Year[0] == "All years") and \
(Country is None or len(Country) == 0 or Country[0] == "All countries")and \
(City is None or len(City) == 0)and \
(Property_name is None or len(Property_name) == 0)and \
(Class is None or len(Class) == 0):
return all_deals_query_df[(all_deals_query_df['Agency'].isin(Agency))].to_dict('records')


И так далее, потом на выходе уже фильтр по двум параметрам, например

if (Year == Year) and \
(Country == Country) and \
(Agency is None or len(Agency) == 0 or Agency[0] == "All agency")and \
(City is None or len(City) == 0)and \
(Property_name is None or len(Property_name) == 0)and \
(Class is None or len(Class) == 0):
return all_deals_query_df[(all_deals_query_df['Year'].isin(Year)) &
(all_deals_query_df['Country'].isin(Country))].to_dict('records')


Понимаю, что выходит говнокод, т.к. количество повторов одной операции будет равно числу сочетаний выбранных фильтров из все дропдаунов.

Как записать это всё более кратко?

Можно ли задать список из параметров и проверять это в цикле? Я пробовал, но не вышло.

Как примерно выглядит такой цикл?

Аноним 28/04/18 Суб 15:40:58 #409 №1181057 
Братишки, я опять выхожу на связь.
Есть определённый набор функций:
a(), b(), c(), d(), e()
Требуется зачейнить их в порядке вида:
b(a(a(c(e()))))

Я уже сделал это nested for лупом.

Теперь не могу разобраться, как сделать это автоматически, с заданной вложенностью.
Чтобы на выходе получить подобный цикл:
list = [a, b, c, d, e]
for x in list:
    for y in list:
         print(x())
         print(y(x()))
И так далее, хоть для вложенности равно двум, хоть для тысячи.

Есть itertools.product('ABCD', repeat=5)
>repeat = 5
Именно то, что мне нужно для вложенности.
Но, по умолчанию, itertools.product() просто складывает значения.

Как заставить питон функцию внутри другой функции и так далее, пошагово вытягивая результат.

Есть yield, есть map(), есть itertools.product()
Как их вместе связать, я даже не знаю.
Аноним 28/04/18 Суб 15:54:25 #410 №1181062 
>>1181057
functools.reduce
https://repl.it/repls/BetterFondGnudebugger
Аноним 28/04/18 Суб 16:17:03 #411 №1181073 
>>1181062
reduce() - это совсем не то, что я имел ввиду.
>b(a(a(c(e()))))
Это просто пример.
По факту, мне нужна выдача:
i1()
i2(i1())
i3(i2(i1()))
i4(i3(i2(i1())))
И так далее, до указанной вложенности.
В том числе, на выходе, мне нужно не только финальное значение, но и все промежуточные.

Другими словами, мне нужен itertools.product('ABCD', repeat=5)
Но, вместо выдачи уровня:
('A', 'A', 'A', 'A' ,'A')
('A', 'A', 'A', 'A', 'B')
('A', 'A', 'A', 'A', 'C')
Нужна выдача:
[a(), a(a()), a(a(a())), a(a(a(a()))), a(a(a(a(a()))))]
[a(), a(a()), a(a(a())), a(a(a(a()))), b(a(a(a(a()))))]
[a(), a(a()), a(a(a())), a(a(a(a()))), c(a(a(a(a()))))]
...
[c(), c(c()), a(c(c())), d(a(c(c()))), a(d(a(c(c()))))]
...
[e(), e(e()), e(e(e())), e(e(e(e()))), e(e(e(e(e()))))]
Аноним 28/04/18 Суб 16:19:20 #412 №1181075 
Продублирую в этом треде.

Анон, у меня есть год опыта на реакте и ноде. Но весь этот цирк во фронтэнде дико заебал. И я хочу перекатиться в питон. Реально ли питухонщиком устроиться имея только опыт в жсе? В дс/дс2 конечно же.
Аноним 28/04/18 Суб 16:51:00 #413 №1181090 
>>1181073
itertools.product([a,b,c,d])
а затем получившиеся списки функций через reduce пропускай.
https://repl.it/repls/SoupyWhimsicalProducts

>>1181075
Реально ли вкатиться маляром имея только опыт сварки? Ты что на питоне делать-то хочешь? Бэкэнд на жанге писать? Нода же лучше во всех смыслах.




Кстати, это я что-то неправильно делаю, или макакыч отрубил ссылку в сообещениях? Простым текстом остаются.
Аноним 28/04/18 Суб 16:56:35 #414 №1181091 
>>1181073
Насчёт
>В том числе, на выходе, мне нужно не только финальное значение, но и все промежуточные.
>[a(), a(a()), a(a(a())), a(a(a(a()))), a(a(a(a(a()))))]

Только за несколько product'ов или combinations_with_repetition в лупе. По-моему, никакой дефолтной функции для этого нет. https://stackoverflow.com/questions/8371887/making-all-possible-combinations-of-a-list-in-python
Аноним 28/04/18 Суб 17:26:47 #415 №1181102 
>>1181073
ты скорее всего намудрил дохуя
не ебашь много функциональных функциональностей на ровном месте, а просто напиши как есть:
func_list = [f1, f2, f3, ..., fN]
res = func_list.pop(0)()
for f in func_list:
····res = f(res) # ну или yield
return res
Аноним 28/04/18 Суб 17:49:18 #416 №1181110 
15182729228043.webm
Продолжаю теребить Пистон Лутца, дошел до описания модулей почты smtplib, imaplib и т.п. И подумал, что это хуйня. Ну кому в 2018 нужна вся эта хуйня, если все давно пользуются нормальными почтами типа mail, gmail, hueil. Но потом я ещё подумал пиздец люблю думать, что все не так просто.
Я правильно понимаю, что все эти сайты возьму mail.ru для примера крутят у себя на компах какой-то http сервер, который слушает, как я понял, 81 порт. Это и позволяет моему браузеру обращаться к сайту и получать html странички. Включая обращение к почте. Это так?
При этом они так же могут одновременно крутить другую программу-сервер, которая слушает 25 порт вики говорит, что он зарезервирован под smtp, чтобы я мог писать\читать почту без браузера, а с помощью спец программ например моего говноскрипта. Это так? А вот все эти автоматические сообщения при регистрации где-нибудь которые высылают подтверждения, логины, пароли, тд, они с помощью этого и реализованы? Когда я жму 'зарегистрироваться' в браузере, это отправляет http запрос на сервер, который будет другую программу, которая по smtp или любому другому современному протоколу отправляет сообщение о регистрации на указанную почту. Да? Это так работает?
И ещё немного. Чтобы сделать свой охуенный сайт, мне нужно только написать программу, которая слушает http порт - 80, и отправляет в ответ на реквесты html странички, да? А как я сделаю это - на сокетах напрямую, или с помощью модуля http - вообще не ебет? А всякие приколюхи типа Gevent, Tornado, Apache, nginx - это упрощения, чтобы я сам не занимался прослушкой порта, распределением работы с клиентами на треды\процессы\гринлеты\котлеты, а писал только то, что нужно делать, работая с клиентами - как отвечать на запросы, к каким бд обращаться и тд.
Да? Все, я достиг просветления?
Аноним 28/04/18 Суб 18:48:18 #417 №1181139 
>>1181090
>>1181091
Заработало, спасибо.
А промежуточные значения я забираю ещё одним for лупом сверху всей этой конструкции.

>>1181102
То, что я намудрил дохуя, даже не обсуждается.

>func_list = [f1, f2, f3, ..., fN]
>res = func_list.pop(0)
>for f in func_list:
>    res = f(res)
>    return res
Ты ведь сейчас просто описал мой луп, но без вложенности.
Аноним 28/04/18 Суб 23:35:30 #418 №1181317 
>>1176231
нотепад плюс плюс
Аноним 28/04/18 Суб 23:42:55 #419 №1181319 
>>1176442
Этож типа просто функция ?
Аноним 28/04/18 Суб 23:59:38 #420 №1181323 
>>1176700
зачем .py дописывать ?
Аноним 29/04/18 Вск 01:14:19 #421 №1181339 
>>1176435
А я знаю про range, я в "SoloLearn: Учимся программировать" об этом немного проходил. Это когда циферки от нуля до указанного числа ну или циферки между двумя цифрами, а ещё там можно указывать шаг с которым надо считать от нуля или первой цифры.
Аноним 29/04/18 Вск 01:36:37 #422 №1181346 
>>1181110
Нет. Всё не так. http здесь вообще не при делах. Почта работает почти так же как реальная, есть отделения (SMTP сервера, релеи), между ними ходят письма пока не дойдут на целевой SMTP сервер. Соответственно тебе чтобы отправить письмо нужно сдать его в отделение — отправить с SMTP сервера, чтобы принимать тоже нужен SMTP сервер. А то что по http это считай такой аутлук заебенили в облаке, подключенный к их собственному SMTP серверу (gmail.com, mail.ru, inbox.ru, etc).
Аноним 29/04/18 Вск 04:30:14 #423 №1181371 
>>1176187 (OP)
Pycharm 2017. Стоят предыдущие питоны, скачал и поставил Python 3.6.5. В настройках проекта в списке интерпретаторов его нет. Как его туда добавить ? В переменные окружения его директорию с поддиректориями прописал
Аноним 29/04/18 Вск 07:58:48 #424 №1181375 
Пацаны, а вы пробовали ввести в интерпретатор 2256256?
Аноним 29/04/18 Вск 08:00:11 #425 №1181376 
2хх256хх256
Эх, все время забываю на каком сайте сижу.
Аноним 29/04/18 Вск 11:17:36 #426 №1181421 
>>1181375
Слишком очевидно. А вот так лучше, можно даже на джун собесы этот вопрос задавать
Если ли разница у вывода каждого фрагмента кода и если есть, то объяснить почему
a = [1,2,3]
a.extend([i for i in a])
print(a)

a = [1,2,3]
a.extend((i for i in a))
print(a)
доп скобки для того, что бы человек подумал про кортежи
Аноним 29/04/18 Вск 11:54:09 #427 №1181435 
>>1176187 (OP)
>>1176187 (OP)
Привет, анон. Как работает вариант, где лямбда выражение в качестве аргумента используется?

https://docs.python.org/3/tutorial/controlflow.html#lambda-expressions
Аноним 29/04/18 Вск 12:00:39 #428 №1181437 
>>1181435
Все, разобрался.
Аноним 29/04/18 Вск 12:56:03 #429 №1181454 
>>1181421
Вторая хуйня войдет в бесконечный цикл из-за ебаного генератора? написал, и проверил. оказалось прав. теперь принимай меня на работу, быстроблять
Аноним 29/04/18 Вск 12:58:43 #430 №1181456 
Двач, помоги с кодировкой. Вызываю python-скрипт через функция exec() в php. В самом питоне инфу вывожу в консоль в посредством print(json.dumps(final_data, ensure_ascii=False))

Так вот если вызвать скрипт из консоли, то он нормально выводит кириллицу. А вот при вызове из PHP возвращает закодированную строку вместо кириллицы - \u043c\u0435\u043d\u0435\u0435

Пробовал сделать так:

print(json.dumps(final_data).encode("utf8"))

Но это ни черта не помогает и в вывод попадает всё та же закодированная строка - \\u0447\\u0438\\u0441\\u0442\\u0430\\u044f

Если в последнюю строчку кода добавить ensure_ascii=False, то при вызове из PHP тригернётся ошибка UnicodeEncodeError: 'ascii' codec can't encode characters in position 59-60: ordinal not in range(128)

Што делоть?
Аноним 29/04/18 Вск 14:11:05 #431 №1181522 
>>1176187 (OP)

НЬЮФАГ С ТУПЫМ ВОПРОСОМ СПЕШИТ В ТРЕД

Появился глупый вопрос, который хочется задать в этом ИТТ треде.

Решал простую задачку, где пользователю необходимо ввести два числа, знак математического оператора, а шайтан машина выдаст ему ответ. Но решил, что путь через сравнения c помощью if слишком очевидный и решил ответ пользователя не связывать с прописанными под условиями вариантами, а изменить тип переменной, содержащей ответ пользователя,со строки на 'математический оператор', но пайтан меня не понял, когда я пытался обозвать + типом int, затем я начал гуглить, какой тип имеют математические операторы, но ответа не нашел.

Дальше Я написал что-то типа этого:

x = input () # Вводим математический оператор.
print (type(x)) # Узнаем его тип данных.

<class 'str'> ответил Py и я согласился.

Затем я попробовал сделать вот так:
print (type(+))

Но так Питончег меня не понял и выдал ошибку.

С этим я к вам и пришел.

Вот вопросы:

1. Применимо ли понятие "тип данных" к встроенным функциям и математическим операторам?
2. Если да, то какой тип данных у математических операторов?

Прошу простить за тупой вопрос
Аноним 29/04/18 Вск 14:13:57 #432 №1181528 
>>1181522
Так то хз, но по факту "+" это метод, те 1 + 2 это 1.+(2).
Аноним 29/04/18 Вск 14:26:22 #433 №1181539 
>>1181522
А зачем тебе тип плюса?
Все что введено через input будет иметь тип str
Если if не устраивает, то используй словар
{
"+" : a_plus_b(a,b),
"-" : a_minus_b(a, b)
}
Дальше сам поймешь
Аноним 29/04/18 Вск 15:01:35 #434 №1181558 
>>1181522
Плюсик это не объект, и потому у него нет типа. Это специальное слово, говорящее интерпретатору что делать. Типа import, def, for. В данном случае оно говорит вызвать метод __add__ того объекта, что слева от плюсика, и сунуть в этот метод тот объект, что справа от плюсика, как аргумент. А может и нет, я хуй знает вообще.
Аноним 29/04/18 Вск 15:08:05 #435 №1181565 
>>1181522
Для такого тебе нужно писать парсер и придумывать свои типы для операторов, чисел, скобок и т.д.
Аноним 29/04/18 Вск 16:56:27 #436 №1181630 
Почему os.system у меня юзает sh, хотя дефолтным шеллом стоит bash?
Аноним 29/04/18 Вск 18:12:53 #437 №1181670 
>>1181371
Add local interpreter
И там ищи пистона своего
Аноним 29/04/18 Вск 18:27:28 #438 №1181679 
Аноны, что мне нужно юзать, что бы у каждого потока было свое значение? Чтобы отдельный поток имел отдельную строку из файла
Аноним 29/04/18 Вск 18:37:47 #439 №1181686 
>>1181679
О чем речь вообще?
PS не юзай потоки в питоне.
Аноним 29/04/18 Вск 18:40:14 #440 №1181689 
>>1181686
>О чем речь вообще?
хочу сделать подбор паролей для архивов.
>PS не юзай потоки в питоне.
Почему? я юзал уже, довольно неплохо (на мой уровень) вышло
Аноним 29/04/18 Вск 18:54:32 #441 №1181696 
Хэлп, в этом куске кода есть ошибки? Он не работает как надо, не могу понять почему.:
[CODE]if FirstOne.Angle < FirstOne.Angle + 30:
FirstOne.Angle = FirstOne.Angle + 3[/CODE]
Аноним 29/04/18 Вск 18:56:12 #442 №1181699 
>>1181696
> в этом куске кода есть ошибки?

В этом куске кода ошибок нет.
Аноним 29/04/18 Вск 18:56:26 #443 №1181700 
>>1181696
типо :
if True:
FirstOne.Angle += 3
?
Аноним 29/04/18 Вск 18:57:07 #444 №1181702 
>>1181700
Типо да.
Аноним 29/04/18 Вск 18:58:11 #445 №1181705 
>>1181702
>>1181699
Аноним 29/04/18 Вск 19:05:16 #446 №1181710 
>>1181705
И?
Аноним 29/04/18 Вск 19:13:40 #447 №1181712 
>>1181705
Тогда я говнокодер 80 уровня. Умею ломать то, что работало ничего не трогая.
Аноним 29/04/18 Вск 19:13:59 #448 №1181713 
Кто там не знал в какой попенсорс бы вкатиться?
Вот вам молодой и амбициозный прожект очередного микро-веб-фреймворка
https://github.com/danieldaeschle/swapy
Аноним 29/04/18 Вск 19:22:09 #449 №1181718 
>>1181712
а как он не так работает?
Аноним 29/04/18 Вск 19:31:02 #450 №1181729 
>>1181689
Какой смысл юзать потоки, если поток все равно один?
ЗЫ организовывай очередь через модули queue или select, отуда и бери строку\номер строки
Аноним 29/04/18 Вск 19:32:53 #451 №1181730 
>>1181713
Где же ты был раньше, этому миру остро не хвататет веб фреймворков. Как минумум на каждого кодера должны быть 2-3 штуки, а сейчас и 1.5 не наберется
Аноним 29/04/18 Вск 19:33:21 #452 №1181731 
>>1181718
Уже понял где проебался. Под вечер голова совсем не варит.
Аноним 29/04/18 Вск 19:46:27 #453 №1181733 
>>1181454
>теперь принимай меня на работу, быстроблять
hh.ru
Можешь не благодарить
Аноним 29/04/18 Вск 20:21:02 #454 №1181749 
>>1181729
спасибо, просто хотел как-то оптимизировать и ускорить свой старый код
Аноним 29/04/18 Вск 20:33:21 #455 №1181757 
>>1181730
Таки да.
Но для практики попенсорсной пойдет, так что не иронизируй, антош.
Аноним 29/04/18 Вск 21:12:12 #456 №1181773 
Как включить в sublime подсветку ошибок для питона?
Аноним 29/04/18 Вск 22:24:42 #457 №1181802 
>>1181435
Да, вот такой здесь тред. Написал вопрос, на него хуй кто ответил, и ты сам находишь ответ. Здорово, правда? Нахуй этот тред вообще нужен, спрашивается?
Аноним 30/04/18 Пнд 00:31:31 #458 №1181855 
Питонач, в 2 питоне не силён. Писал одну хуйню на 3 и теперь код нужно сделать совместимым.

Естественно самый гемор это строки. Как мне преобразовать данные в строку в 2 питоне? у меня есть строка str(data) и она вызывает ошибку UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-4: ordinal not in range(128)
Если делаю .encode(utf-8) то всё норм, но в этом случае код перестаёт работать на 3 питоне. Чё делать та?
Аноним 30/04/18 Пнд 01:22:04 #459 №1181868 
>>1181855
Хуй с ним, с этим я разобрался. НО КАК ТЕПЕРЬ БЛЯДЬ ВЫВОДИТЬ КИРИЛИЦУ В ТЕРМИНАЛ СУКАААА??? Пиздец какая же параша этот ваш 2.7
Аноним 30/04/18 Пнд 01:26:44 #460 №1181870 
>>1181855
Просто напиши враппер на фортране.
Аноним 30/04/18 Пнд 02:27:29 #461 №1181886 
Аноны, пользовался кто Toga для написания десктопных/мобильных приложений?
Аноним 30/04/18 Пнд 03:02:18 #462 №1181898 
Anime-girl-spice-and-wolf1920x1080.jpg
Здарова, братцы.
Кто какие расширения юзает в виме в для создания своей идеально Python IDE?
Мой списочек (я пока что новичек):
nerdtree
vim-autoclose
vim-colorshemes
matchtag
Аноним 30/04/18 Пнд 06:34:08 #463 №1181926 
>>1181898
YouCompleteMe
VimWiki + markdown
Аноним 30/04/18 Пнд 08:38:17 #464 №1181940 
>>1181802
Ты ебанько? Человек спустя 6 минут написал, что разобрался. Хули тебе от нас надо?
Аноним 30/04/18 Пнд 10:51:41 #465 №1181965 
Un5ioRoLSnbycVtjTrlAp6tNmhgwYdaIr4QY6giDHY.jpg
>>1181940
Я как-то два треда подряд просил подсказать, как запустить стороннюю программу от администратора и хуй кто подсказал.
Нашел ответ на мейл.ру. НА МЕЙЛ.РУ, КАРЛ!
Аноним 30/04/18 Пнд 10:57:14 #466 №1181966 
>>1181965
А я тебя помню, пидор, тебе же дали верный ответ, но ты хуесос неблагодарный сделал вид, что ты дартаньян.
Аноним 30/04/18 Пнд 11:42:28 #467 №1181972 
Прочитал в одном тереде что лучшей практикой для изучения питона, является переписывания библиотек и программ с 2.7 либо реализация такой же программы с руби

это эффективно?
Аноним 30/04/18 Пнд 12:59:13 #468 №1181990 
>>1181966
Никто мне не дал верный ответ, ты ошибаешься. Я сам нашел решение и отписался по нкему, если кому-то еще бы понадобилось.
Я ж не тот уебан с ветки форума пятилетней давности, который пишет вопрос, а после того, как ему никто не ответил, отписывается "nvm found solution", после чего закрывает тему.
Аноним 30/04/18 Пнд 13:02:48 #469 №1181991 
>>1181972
Да!
Аноним 30/04/18 Пнд 13:04:09 #470 №1181992 
>>1181990
Ай не пизди, мне лень прошлые треды пересматривать, тебе там давали способ, не знаю какой ты нашел на мэйл ру, но тот точно работал.
Аноним 30/04/18 Пнд 13:10:55 #471 №1181994 
Привет, анон. Поясни пожалуйста, как это работает? Что это за синтаксис такой. Я не понимаю.

squares = [x2 for x in range(10)]
Аноним 30/04/18 Пнд 13:12:03 #472 №1181996 
>>1181994
Дямбда выражение обыкновенное
Аноним 30/04/18 Пнд 13:14:36 #473 №1181997 
>>1181991
Посоветуешь какой ни будь проект без сторонних мудрённых библиотек?
Аноним 30/04/18 Пнд 13:15:26 #474 №1181998 
>>1181996
То есть это тоже самое, что и

squares = list(map(lambda x: x2, range(10)))

?

Аноним 30/04/18 Пнд 13:17:17 #475 №1182000 
>>1181998
Все, я понял. Дальше в статье об этом написано подробнее, я долбоеб.
Аноним 30/04/18 Пнд 13:42:08 #476 №1182007 
>>1181997
Не посоветую. Ищи сам, потому что своим советом могу тебя отпугнуть от изучения, вдруг проект окажется слишком сложным для тебя? Я же не знаю какой у тебя уровень владения языком. Поэтому анонче ищи самостоятельно. Главное не очкуй и форкай, сообщество тебе подскажет, где ты обосрался, а гже и коммитом поможет.
Аноним 30/04/18 Пнд 13:42:29 #477 №1182009 
>>1182000
Ты не долбоеб, ты ученик.
Аноним 30/04/18 Пнд 13:50:17 #478 №1182013 
>>1181992
>мне лень
Вся суть пиздобола.
Аноним 30/04/18 Пнд 13:53:21 #479 №1182015 
>>1182013
Согласен! Нахуй пиздеть, что ответ нашел на мэил ру?
Аноним 30/04/18 Пнд 14:04:59 #480 №1182017 
>>1181990
Напомни, что ль, что за проблема была и что за решение, а то я не помню, о чём речь.
Аноним 30/04/18 Пнд 14:25:15 #481 №1182023 
изображение.png
Как изменить цвет каретки в tkinter?
Аноним 30/04/18 Пнд 14:29:04 #482 №1182024 
>>1182023
Че такое каретка ?
Аноним 30/04/18 Пнд 14:29:19 #483 №1182025 
>>1182009
Ты хули такой адекватный?
Аноним 30/04/18 Пнд 14:30:18 #484 №1182026 
>>1182024
То есть когда ты пишешь там вот такая справа от текста есть палочка |. Но тут она из-за черного фона пропадает, сливается. Это не есть круто.
Аноним 30/04/18 Пнд 14:32:11 #485 №1182027 
>>1182023
Нашёл в тырнетах textWidget.config(insertbackground=...)
Аноним 30/04/18 Пнд 14:32:34 #486 №1182028 
>>1182027
Cпасибо!
Аноним 30/04/18 Пнд 14:32:42 #487 №1182029 
>>1182026
>>1182027
Аноним 30/04/18 Пнд 14:33:07 #488 №1182030 
>>1182028
Помогло :?
Аноним 30/04/18 Пнд 14:36:46 #489 №1182033 
>>1182030
Нет. Все как было.
Аноним 30/04/18 Пнд 14:38:25 #490 №1182034 
Как в питоне модифицировать внутри функции глобальную переменную?
Аноним 30/04/18 Пнд 14:42:56 #491 №1182038 
>>1182034
Все, я понял.
Аноним 30/04/18 Пнд 14:44:35 #492 №1182039 
>>1182030
Решил проблему подрубанием самописной либо на Windows API, которая заменяет цвет каретки. Только проблема - она изменяет ее не только внутри программы, а вообще во всем компе. И проблема номер два. После перезагрузки каретка не меняется и остается того цвета, который был задан.
Аноним 30/04/18 Пнд 14:48:08 #493 №1182042 
>>1182039
либы*
мистер быстрофиксик
Аноним 30/04/18 Пнд 14:53:08 #494 №1182044 
Пиздец, я себе курсоры и разрешение экрана поломал этой хуйнй. Не юзайте windows api, аноны.
Аноним 30/04/18 Пнд 15:01:29 #495 №1182045 
14696462011540.jpg
>>1176187 (OP)
Инквизиторы, ссылки из ОП поста и гугл прошерстил, спрашиваю предметно:
Необходимость изучения Пайтона с целью применения в финансовой сфере (IB-хуйби). Начинать изучение также как и всем, или есть более ориентированная на фин моделирование литература/ресурсы?
Сам два года уже изучаю/применяю в работе VBA, немного SQL позадрачивал через sql-ex.
Аноним 30/04/18 Пнд 15:24:52 #496 №1182054 
>>1182045
Рыбья головёха!
Аноним 30/04/18 Пнд 16:06:55 #497 №1182074 
изображение.png
Это сложно реализовать?
Аноним 30/04/18 Пнд 16:41:26 #498 №1182093 
>>1182017
os.startfile('porn.exe', 'runas')
Аноним 30/04/18 Пнд 18:15:51 #499 №1182146 
>>1182074
Да нет, есть же куча уже примеров этой стандартной функции.
Аноним 30/04/18 Пнд 19:32:33 #500 №1182180 
ПЕРЕКАТ

https://2ch.pm/pr/res/1182179.html
https://2ch.pm/pr/res/1182179.html
https://2ch.pm/pr/res/1182179.html
https://2ch.pm/pr/res/1182179.html
https://2ch.pm/pr/res/1182179.html
https://2ch.pm/pr/res/1182179.html
Аноним 17/05/18 Чтв 08:17:37 #501 №1191428 
K
comments powered by Disqus

Отзывы и предложения