Программирование

Ответить в тред Ответить в тред
Питон тред №105 /python/ Аноним 21/11/20 Суб 02:31:37 18615831
microsoft-loves[...].jpg 45Кб, 1200x720
1200x720
ross601.jpg 41Кб, 535x286
535x286
ross600.jpg 47Кб, 600x400
600x400
Тред, посвящённый языку программирования Питон, #105

Отмечаем эпохальное событие - наши люди проникли в логово Microsoft, чтобы поставить на python way самого культового производителя программного обеспечения в мире.

Предыдущий: >>1852315 (OP)
Литература:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание
Ещё книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек: https://yadi.sk/d/H-00n-UG3RSQem

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить
https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться

#######################################

ЧаВо: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Актуальность примерно 2015 года

Вопросы-ответы:
— А стоит ли читать Лутца, том номер N?
Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.

— Стоит ли читать %книга_нейм%, если там питон версии 2.х?
Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х

— А что ещё можно читать?
Питон сам по себе очень хорошо задокументирован и для уровня начинающих, и для продвинутого. Смотри официальную документацию. Можно начать вот с этого https://docs.python.org/3/tutorial/introduction.html

— Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги.
МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0

— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом?
Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4

— А как учить джангу? Нахожу только книги по джанге 1.х
У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой из официальной документации.

— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)

— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется

— Как можно без лишней возни ускорить программу на питоне
1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь.
2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.

— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём
Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.

ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
исхдник: https://dumpz.org/bASGKD8cCFDf
Аноним 21/11/20 Суб 02:49:26 18615882
>>1861237 →
>Не смог идеально рассказать про
Не путай собеседование и экзамен в институте. Если ты себя ставишь как студента, пришедшего на экзамен по сложному предмету, то и относиться к тебе будут как к студенту на экзамине, а не как к потенциальному коллеге.

Больше смотрят на то, как ты отвечаешь, а не насколько чётко и идеально. Если, конечно, адекваты и именно ищут, а не просто так собеседования проводят, потому что положено.
Аноним 21/11/20 Суб 02:53:11 18615893
>>1860771 →
>Это же относится и к вебу - если сайт очень уж большой, то надо с питона куда-то перебираться.
А чем тут плох питон и какие альтернативы?
Аноним 21/11/20 Суб 03:31:14 18615964
>>1861589
>А чем тут плох питон и какие альтернативы?
Да ничем он не плох. С точки зрения производительности питон подходит абсолютно для всего кроме числодробилок. С точки зрения удобства - спорно. Небольшие веб-сайты на питоне писать хорошо, большие - не очень, из-за динамической типизации. ГУИ в 2020 нужно вообще писать на электроне, который еще медленнее.
Аноним 21/11/20 Суб 04:39:34 18616135
>>1861596
>большие - не очень, из-за динамической типизации
Диван?
Главное при работе с большими сайтами - читабельность кода и модульность самого проекта. Причем тут типизация вообще? Особенно после того как подвезли в пистон "var: type".
P.s. Микросервисы и дробление монолита рулит.
Аноним 21/11/20 Суб 04:39:57 18616146
>>1861596
В чем проблема заставлять макакенов писать -> str? Тогда ведь проблем не должно возникать
Аноним 21/11/20 Суб 04:43:54 18616157
>>1861588
Ну так я понимаю, что перед и после меня 5 таких же дурачков, только они то небось точно помнять все 5 или сколько их там, до сих пор не посмотрел нормальных форм, тут уже единственное во что не скатываюсь так это в оправдания и подобное. Алсо что за привычка у них просить переходить на ты, я себя физически не могу заставить образаться на ты, это я маня закомлексованая или это нормально?(вообще этой темы не понимаю, ни в барах, ни в ресторанах, ни на работе)
Аноним 21/11/20 Суб 05:03:40 18616208
>>1861615
>только они то небось точно помнять все 5 или сколько их там
Мне кажется, что вот совсем-совсем не нужно их помнить. Это слишком теоретическая вещь. Но саму концепцию знать стоит. И плюсы-минусы нормализации данных. В общем суть в том, что не отвечать как на экзамене надо, а уметь поддержать беседу на тему.

>Алсо что за привычка у них просить переходить на ты, я себя физически не могу заставить образаться на ты, это я маня закомлексованая или это нормально?
Люди ищут себе коллег, с кем им будет комфортно работать бок о бок. Когда на Вы, то это какое-то очень формальное отношение, деловое. Некомфортно. Особенно когда о простых друзьях-разработчиках, а не о том, чтобы звёзд с именами привлекать.

Аноним 21/11/20 Суб 05:19:57 18616239
>>1861583 (OP)
Здрасте извините

Тут есть шарящие в регулярках на питоне? Как мне получить строку, что находится между символами . и &? Например ab.cd123.lox&31g, в данном случае надо lox получить
Аноним 21/11/20 Суб 06:35:46 186163510
>>1861615
> я себя физически не могу заставить образаться на ты
Когда предлагают перейти на ты, говорю что мне комфортней на вы в данный момент общаться и все. Я этих товарищей первый раз вижу, иногда и послдний, мы не друзьяшки.
Аноним 21/11/20 Суб 06:36:28 186163611
Аноним 21/11/20 Суб 06:37:14 186163712
Аноним 21/11/20 Суб 08:51:56 186166513
>>1861613
>Особенно после того как подвезли в пистон "var: type".
>>1861614
>В чем проблема заставлять макакенов писать -> str? Тогда ведь проблем не должно возникать
Рано или поздно это закончится типами вроде List[Tuple[Set[str, str], Optional[Tuple[int, float, str]]]], которые не всегда корректно проверяются в IDE. Да, можно писать классы, но питон к этому не принуждает. Из кучи макак кто-нибудь обязательно начнет писать говнокод, и проект постепенно пойдет на дно. В языках со статической типизацией и принудительным ООП дрессировка макак частично выполняется конпелятором, что хорошо влияет на качество кода.
Аноним 21/11/20 Суб 08:56:08 186166714
>>1861613
>Особенно после того как подвезли в пистон "var: type".
Проиграно в голос. После того, как динамикопетухам завезли статическую типизацию динамическая дрисня стала не так и плоха!
Аноним 21/11/20 Суб 09:05:13 186167415
>>1861667
Динамические типы очень хороши, большая гибкость есть, особенно когда надо со сложными структурами данных работать, которые может быть динамически создаются.

Но проблемы от них тоже появляются.

Механизм контроля типизации как раз позволяет делать проверки типов там, где актуально. Для библиотек особенно актуально.

Появляется большая гибкость, можно делать, можно не делать, а не страдать, как приходится людям на c# или golang.
Аноним 21/11/20 Суб 09:08:11 186167916
>>1861637
Нет. Если ты в теме более-менее, то и сам знаешь о своём уровне и об уровне топов. Если не в теме, то и по таблице этого не поймёшь, либо же будет очень неверно её интерпретировать.
Аноним 21/11/20 Суб 10:30:06 186173417
Как на пайтоне можно получить содержимое текстового файла и найти нужную строку?
Ну например на линуксе можно выполнить: cat /etc/relisos | grep version
А как эти же самые действия реализовать на питоне?
Или как можно консольный вывод баша транслировать в питон?
Аноним 21/11/20 Суб 10:43:56 186174518
>>1861734
with open('filename.txt', 'r', encoding='utf-8') as f:
____for line in f:
________if 'something' in line:
____________print(line.rstrip())
ну и с re аналогично.
Аноним 21/11/20 Суб 11:17:06 186177019
>>1861665
Соблюдение стилистики и общепринятых правил на проекте при написании кода даёт определенную защиту от различного рода перегибов. А принудительности ООП вообще, как по мне, сомнительная вещь, т.к. не стоит никого ни к чему принуждать. Хочешь ООП и оно в данной ситуации подойдёт - ебош, хочешь ООП но смог высрать класс с одним методом и наследования и и не пахнет - зачем тогда несёшь ООП сюда? Модульность можно прекрасно сделать и без ООП, по крайней мере без своего.
>>1861667
Это не типизация, скорее возможность оставлять подсказки за собой, о том, что и как надо передавать и принимать в ответ.
Аноним 21/11/20 Суб 11:17:44 186177120
>>1861745
Понял/принял/поблагодарил
Аноним 21/11/20 Суб 12:45:16 186182221
Подскажите, Плес, как реализовать такую штуку
Есть блок with, открывающий лог-файл, есть итератор обджект, который читает подряд строчки и ищет в них определенные вещи.
Проблема:
Есть определенные строки, на которых мне нужна инфа не только из этой строки, но и из следующей, причем одновременно.
Как мне получить доступ из current string в next string?

Насколько я понимаю, если взять итератор обджект и тупо дать next(), то я теряю свою нынешнюю строку и перехожу на чужую, штомниделоть...

Пример:
[234] в следующей строке написано, кто такой оп
[235] он хуй, а что ты ожидал

Когда я наитерировал до 234 строки, я хочу, находясь в ней, получить доступ в 235 строку, чтобы выдать что-то типа оп: хуй
Аноним 21/11/20 Суб 13:26:12 186184822
>>1861822
> теряю свою нынешнюю строку
дак не теряй

for line in srenk:
if 'оп' in line:
prev = line
if 'хуй' in line:
print(prev + line)
Аноним 21/11/20 Суб 13:55:47 186186023
Screenshot from[...].png 40Кб, 612x346
612x346
>>1861822
Создай буфер для строк, складывай строки туда, а как накопится нужное количество, делай нужное действие и сбрасывай буфер или его часть.

Если это надо делать больше одного раза и надо оформить красиво, то создай свой собственный генератор, который будет буферизировать строки и выдавать блоками
Аноним 21/11/20 Суб 14:04:08 186186724
Хочу иногда пописывать простые веб-приложения, но работу питонистом-говночистом искать не хочу. flask я уже использовал для создания простенького веб-api и остался доволен.

Удачным ли выбор для меня - flask applicaiton builder ?
В чем вообще смысл его существования, если есть django ?

Что у него с производительностью исходя из архитектурных соображений? В
Как реализуются асинхронные запросы к нескольким источникам?
Как работают длительные задачи ?
Аноним 21/11/20 Суб 14:49:28 186190625
Аноним 21/11/20 Суб 17:13:49 186205326
>>1861583 (OP)
Как в sqlalchemy сделать откат при сохранении в базу?
Поясню: есть 2 операции, одна добавляет данные в Таблицу_1 (insert), вторая - обновляет данные в Таблице_2 (update), если где-то на пути вылезет Exception то может получиться что данные запишутся лишь частично, а это очень плохо... Как сделать так чтобы при возникновении Exception изменения в базе откатывались к первоначальному состоянию?
Аноним 21/11/20 Суб 17:15:29 186205527
Аноним 21/11/20 Суб 17:52:35 186208728
>>1861620
Скажи, а отвечать в духе да, я знаю как нормализовать базу данных, но мне нужно погуглить что-то это норм на собеседовании? Типо если говоришь, что знакшь, но отвечаешь, что загуглил бы то и то
Аноним 21/11/20 Суб 18:16:12 186211129
>>1862087
Вообще отвечать "загуглил бы" и любые похожие вариации это не очень хорошо. Они ищут программиста, а не мастера по поисковику. Лучше просто сказать, что не помнишь.
Аноним 21/11/20 Суб 18:37:42 186214230
>>1862087
Ты лучше скажи про саму идею, что такое нормальные формы и зачем они нужны вообще. Какие плюсы, какие минусы от нормализации. Где бы ты сам стремился к тому, чтобы максимально нормализовать данные, а где наоборот, отказался бы.

В общем можно просто пообщаться на эту тему.

Нормальные формы о том, как представлять данные в БД, чтобы не было противоречий, чтобы они ложились в реляционную модель, чтобы не было избыточности и т.п.

Просто надо понимать, как работать с данными.

Тебе ведь надо делать что-то самому, твоя работа не в том, чтобы на вопросы препода отвечать, а чтобы самостоятельно что-то реализовывать. Ты должен понимать, что ты делаешь и зачем ты это делаешь. Ты должен представлять, какие подходы есть, чтобы при необходимости углубить знания в нужном направлении и использовать его. Или осознанно и аргументированно отказаться от какого-то подхода, что не менее ценно.
Аноним 21/11/20 Суб 20:15:49 186219831
>>1862111
> а не мастера по поисковику
По факту ты этим больше занимаешься чем самим программированием
Аноним 21/11/20 Суб 20:26:40 186220732
>>1862142
>Тебе ведь надо делать что-то самому, твоя работа не в том, чтобы на вопросы препода отвечать, а чтобы самостоятельно что-то реализовывать.
Не факт, что то, что спрашивают тебя на собесе будет на работе
Аноним 21/11/20 Суб 21:45:05 186226433
>>1862053
try:
инициализация db_session
table1.insert()
table2.update()
db_session.commit()
except Exception:
db_session.rollback()
Аноним 21/11/20 Суб 21:49:57 186226834
>>1862264
Инициализация должна быть за пределами блока try...except, конечно же.
Аноним 21/11/20 Суб 22:27:40 186228935
А можно ли как нибудь с помощью requests получить номер последнего поста в \b и скорость борды? Хочу даблы и триплы рассчитывать.
Аноним 21/11/20 Суб 22:40:49 186230336
У класса есть несколько методов. В каждом одинаковая проверка. Можно как-нибудь зарегистрировать метод, который бы срабатывал до того, как вызовется искомый метод? Пример
class A:
__def a(self):
____if 1:
______pass
__def b(self):
____if 1:
______pass
__def c(self):
____if 1:
______pass
__def check(self):
____if 1:
______pass

Вот хотелось бы проверки убрать из всех методов, а до их вызова чтоб срабатывал check - проверял и если хорошо, то передавал вызов методу a, b или с. А если нет, то не передавал
Аноним 21/11/20 Суб 22:48:41 186230737
>>1862303
декораторы например
Аноним 21/11/20 Суб 22:55:38 186231938
>>1862303
Какой-то полный разDRY и непонятно, зачем вообще тут все в классе держать, но ок:
1) Инициализировать проверку в магическом методе __enter__ и запускать класс в контекстом менеджере
2) Вынести все в один метод-обработчик
3) Обработать вызовы на клиентской стороне
Аноним 21/11/20 Суб 23:07:37 186232739
>>1862303
Декоратор же, блять, уже год не писал их и забыл про низ
Аноним 21/11/20 Суб 23:08:14 186232840
>>1862319
Это веб приложение.
Аноним 21/11/20 Суб 23:15:09 186233241
Аноним 21/11/20 Суб 23:38:24 186234242
>>1862328
Во-первых, это три разных подхода, а не пункты, которые нужно выполнять один за другим, а во-вторых, клиентская сторона - это все, что ты пишешь после if __name__ == '__main__', а не фронтэнд, о котором ты видимо подумал.
Аноним 22/11/20 Вск 00:49:42 186238743
16045907499390.png 86Кб, 320x300
320x300
>>1862342
А у нас что, каждый скрипт идет вместе с if __name__ == '__main__'?
Аноним 22/11/20 Вск 01:32:50 186242444
>>1862387
Продолжай короче дальше одинаковые куски кода плодить, больше тебе нечем помочь.
Аноним 22/11/20 Вск 01:49:02 186243245
Аноним 22/11/20 Вск 11:29:36 186257546
>>1861583 (OP)
Двач, я не умею писать код, подскажи пожалуйста материалов.
Так уж вышло, что пишу код я уже относительно давно(5 лет), и на разных языках, от ассемблера до питона, но всегда писал либо для себя, либо какие то проекты с закрытым кодом.
И стыдно это признавать, но я так до сих пор и не научился писать читаемый код.
Не знаю как правильно его оформлять, какие давать названия переменным, функциям, классам, с заглавной буквы или нет, и так далее.
Анон, молю, накидай разного материала на эту тему. В данный момент пишу на питоне и C#, желательно что то приближенное к этим языкам.
Аноним 22/11/20 Вск 11:29:56 186257647
>>1862289
Жаваскриптом в браузере расчитывай, он тебе и кнопку субмит нажмет в нужное время, будешь царём триплов
Аноним 22/11/20 Вск 13:12:13 186267648
https://habr.com/ru/post/528634/

Какой же он ахуенный... этот чел уже больше года пилит свою DI-либу, каждый раз ему пишут что это хуйня без задач но он сука продолжает... мне бы такой стойкости
Аноним 22/11/20 Вск 13:22:26 186268749
image.png 146Кб, 935x271
935x271
>>1862289
пикрил можешь адаптировать под реквестс, номер поста num
скорость хз, ищи в сорцах как двач вычисляет
Аноним 22/11/20 Вск 13:31:54 186269650
>>1861867
питонист-говночист что-то кроме чистки параш делать должен? (хз прост пока не сталкивался с такими вакансиями)
Аноним 22/11/20 Вск 13:59:00 186271051
image.png 11Кб, 463x90
463x90
image.png 7Кб, 178x173
178x173
А почему в PyCharm не выводится в окно выполнения программы результат? Вот в IDLE питоновской выводятся три строки как положено. Причем простой принт Пучарм выводит нормально, а вот с патх нет.
Аноним 22/11/20 Вск 14:04:50 186271752
>>1862710
Теперь и принт не выводит, разобрался, в пучарм надо настраивать envы.
Аноним 22/11/20 Вск 14:50:35 186274153
Актуально ли 4 издание Изучаем python?
Аноним 22/11/20 Вск 16:55:58 186280954
>>1862741
Книжка про 2.6 и рассматривается 3.0 в сравнении.
Почитать можно, конечно, но это как-то через жопу в 2020.
Аноним 22/11/20 Вск 19:00:58 186296555
Как открывать пайтон файлы, которые я написал? Вот написал я "print('hello world')", сохранил и хочу запустить просто так, не в ide, но при открытии файла на мгновение появляется какое-то окно и исчезает
Аноним 22/11/20 Вск 19:51:09 186302156
Аноним 22/11/20 Вск 19:53:51 186302757
>>1863021
Офк находится нужно в той же папке, в которой лежит файл или прописывать полное имя файла.
Аноним 22/11/20 Вск 20:03:11 186304258
>>1863021
Ну так он и выдает результат просто в консоли, это ничем не отличается от того, что просто запущу ее в ide. Есть же наверное способы открывать программу в более "человеческом" виде. Мы ведь не открываем всё через консоль
Аноним 22/11/20 Вск 20:07:30 186305159
1ZiLwnghPY4GCvF[...].png 493Кб, 2876x1466
2876x1466
Аноним 22/11/20 Вск 20:54:36 186308560
>>1863051
Причем тут это. Ну я же могу скачать какую нибудь программу на питоне в интернете, открыть ее и работать просто в ней. Мне не нужно открывать ее через консоль, а потом там же работать с программой
Аноним 22/11/20 Вск 20:56:07 186308861
15782227140890.jpg 23Кб, 299x250
299x250
>>1863085
Это троллинг или да?
Аноним 22/11/20 Вск 21:02:37 186309662
>>1862965
>но при открытии файла на мгновение появляется какое-то окно и исчезает

Все верно, программа в свободном ее виде запускается без костылей иде, которая тебе в помощь по окончанию тормозит окно. Так что что бы оно работало самостоятельно, то и тормозить окно тебе нужно самому, например через input
Аноним 22/11/20 Вск 21:11:39 186310763
>>1863085
>Причем тут это. Ну я же могу скачать какую нибудь программу на питоне в интернете, открыть ее и работать просто в ней.

Тогда тебе нужно что бы у тебя была настроена ассоциация расширения файлов, в шинде инсталлятор питона делает это автоматом, если ты не убрал галочку.

В линуксе тебе нужно в начале файла добавить строку #!/usr/bin/env python, а потом сделать этот файл исполняемым.
Аноним 22/11/20 Вск 21:12:28 186310964
>>1863088
Я знаю что звучит тупо, но я только начал изучать это всё и реально не понимаю как некоторые вещи происходят. Как программа проходит путь от строчек кода в редакторе, до просто .exe файла, который запустит ее. Я знаю, что там вроде скомпилировать что-то нужно, но это вроде не к питону не относится, да и я читаю укус питона, и я конечно в самом начале, но еще так и не объяснили как мне именно сделать программу. Вот допустим я даже сейчас скопирую полностью код другой программы, вставлю в редактор, и что дальше с ним делать чтобы это приобрело вид обычной программы?
Аноним 22/11/20 Вск 21:17:48 186311365
>>1863107

Ну и да, хорошим тоном является написать для шинды батник, а для линуха - .sh
Аноним 22/11/20 Вск 21:18:12 186311466
>>1863107
> Тогда тебе нужно что бы у тебя была настроена ассоциация расширения файлов, в шинде инсталлятор питона делает это автоматом, если ты не убрал галочку.
Вроде не убирал ничего. Это можно как-то проверить?
>>1863096
> Все верно, программа в свободном ее виде запускается без костылей иде, которая тебе в помощь по окончанию тормозит окно

Получается он за секунду выводит мой hello word и тут же закрывает, так как программа выполнилась?
> то и тормозить окно тебе нужно самому, например через input
Как это использовать? Нашел в интернете только функцию input, в которую можно вводить информацию, это оно что ли?
Аноним 22/11/20 Вск 21:19:24 186311767
>>1863114
>Получается он за секунду выводит мой hello word и тут же закрывает, так как программа выполнилась?

yup

Как это использовать? Нашел в интернете только функцию input, в которую можно вводить информацию, это оно что ли?

yup
Аноним 22/11/20 Вск 21:21:18 186311868
>>1863114
>Вроде не убирал ничего. Это можно как-то проверить?

В винде это если по двойному клику на .py запускается программа и не появляется окно "открыть с помощью"
Аноним 22/11/20 Вск 21:22:23 186312169
>>1863117
Написал инпут, теперь окно висит и ждет пока я введу что нибудь. Спасибо.

Аноним 22/11/20 Вск 21:47:59 186314970
Ого, а чего уксус питона такой короткий?
Аноним 22/11/20 Вск 21:54:58 186315471
>>1862809
что нового в питоне 3.хх по сравнению с 2.7? Вижу, появилась огромная куча новых функций-методов. Немного поменялся синтаксис print. В остальном синтаксис совместим снизу вверх?
Аноним 22/11/20 Вск 22:23:37 186318672
1460914931Scree[...].png 638Кб, 822x665
822x665
>>1863149
Ну какой вырастил, такой и укус.
Аноним 22/11/20 Вск 22:50:43 186320673
Аноним 22/11/20 Вск 22:54:03 186321374
>>1861583 (OP)

Ну терь у питонистов из майкрософта яйки сжались, такой то рокстар подвалил
Аноним 23/11/20 Пнд 00:05:05 186328475
>>1863213
Можете объяснить в чем суть этого всего?
Аноним 23/11/20 Пнд 00:14:31 186329376
>>1863284

Ну вот ты такой важный синьер, а тут приходит буквально рокстар и тебя уже никто не слушает, а рокстар теперь улучшать начинает
Аноним 23/11/20 Пнд 01:31:51 186334577
Аноним 23/11/20 Пнд 01:37:46 186334678
>>1863109
Лучше просто прими то что ты пишешь скрипты а не «программы», принт выводит именно в консоль, можно выводить в файлы или куда-то еще, твой скрипт просто читается сверху вниз и все, если тебе gui нужен, то ищи tkinter для начала
Аноним 23/11/20 Пнд 01:39:47 186334879
>>1863114
Принт просто выводит надпись в консоль, если тебе нужна потом консоль, то и запускай скрипт в консоли
Аноним 23/11/20 Пнд 02:24:33 186336880
анон, я вот так понял, что вместо потоков нужно юзать процесса
Это вообще де факто и всегда так? или все же есть места, где НУЖНО потоки, и месте, где НУЖНО процессы?
Аноним 23/11/20 Пнд 02:26:32 186337281
вопрос, братва
я ведь могу ускорить программу путем введения с++ кода
в теории ведь, выходит, что я вообще могу через питон вызывать __только__ код с++?
Почему такой вопрос: есть проект на питоне, но его нужно постепенно переписывать на кресты. Имеет ли смысл начать вот с таких вставок и далее итеративно исключать питон код и врубать крестовый? или бред?
спасибо
Аноним 23/11/20 Пнд 02:44:13 186338182
>>1863368
>Это вообще де факто и всегда так? или все же есть места, где НУЖНО потоки, и месте, где НУЖНО процессы?
В идеале необходимости юзать процессы вообще не должно возникать, но питоне это приходится делать из-за ублюдочного GIL. В целом получается так.

Для веб-реквестов и прочих вещей, не требующих ресурсов процессора, нужно юзать асинхронность. Потоки нужно юзать при написании интерфейсов (где не требуются вычислительные мощности), или для ускорение задач, где основные вычисления выполняются внешней библиотекой, написанной на си. В таком случае GIL выключается, и потоки будут параллельно выполняться на разных ядрах процессора. Процессы нужно юзать во всех остальных случаях - когда необходимо ускорить вычисления, и главным ограничителем является питоновский код. Главные подводный камень - передача данных между процессами. При использовании потоков память общая, и ничего копировать не нужно. При использовании процессов, у каждого из них своя память, и любое общение между ними будет идти через жопу отдельный процесс-менеджер, что просто пиздец как медленно. Как итог, большое количество задач нельзя адекватно распараллелить используя процессы, поскольку копирование данных убьет весь прирост производительности. В таком случае остается только писать кусок кода на си.
Аноним 23/11/20 Пнд 02:45:12 186338283
>>1863368
У чего-то одного из двух общая память, у другого раздельная, гугли сам кароче и решай
Аноним 23/11/20 Пнд 06:33:48 186343684
Объясните по поводу аргументов в сортировке списка.

res = Counter(res).most_common()

res.sort(key=lambda x:(-x[1],x[0]))


собственно почему в л\мбда выражении после определения переменной х, нужно переменные вывода указывать явным кортежем.
еСЛИ НАПИСАТЬ ТАК lambda x:-x[1],x[0])
ругается на аргументы
res.sort(key=lambda x:-x[1],x[0])
^
SyntaxError: positional argument follows keyword argument
Аноним 23/11/20 Пнд 08:54:47 186346385
>>1863436
Питон не может или не желает парсить лямбду после того, как заметит запятую, то есть
res.sort(key=lambda x:-x[1],x[0])
читается как
res.sort(key=foo, bar)
но в питоне keyword аргументы должны идти в конце, поэтому тебе выдается ошибка:
SyntaxError: positional argument follows keyword argument

со скобками fоo становится lambda x: (-x[1], x[0]) и получаем
res.sort(key=foo)
Аноним 23/11/20 Пнд 09:14:43 186347286
Аноним 23/11/20 Пнд 09:16:42 186347787
>>1863372
>или бред?
Вот это вот.
Ну попробуй и поймёшь, что это бред.
Аноним 23/11/20 Пнд 09:55:23 186348488
>>1863368
Конкретно в питоне:

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

Треды для GUI и старых библиотек, которые не поддерживают asyncio, тут просто вариантов не остаётся.

Асинхронность (asyncio и может старые сторонние решения) для сети и управления внешними процессами.

В целом сейчас в первую очередь надо смотреть на asyncio, из asyncio ты можешь несложно вызывать пулы процессов и потоков по необходимости.
Аноним 23/11/20 Пнд 09:57:22 186348589
Аноним 23/11/20 Пнд 11:07:48 186350790

Подскажите как подсчитать количество нулей и единиц в двоичном числе, а потом вывести в ответ каких чисел больше ?
Аноним 23/11/20 Пнд 11:11:31 186351091
>>1863507
Быстрофикс: есть число, которое я перевел в двоичный код. И в нем-то и нужно посчитать
Аноним 23/11/20 Пнд 11:36:19 186353292
>>1863510
Переводи в строку и считай, поразрядно сдвигай и проверяй, куча вариантов.
Аноним 23/11/20 Пнд 11:43:26 186354293
В комнате таа холодно что даже нет желания кодить
Аноним 23/11/20 Пнд 11:47:35 186354694
Аноним 23/11/20 Пнд 12:28:43 186357495
>>1863507
from collections import Counter
Counter(f"{num:b}").most_common(1)[0][0]
Аноним 23/11/20 Пнд 12:35:16 186358196
изображение.png 50Кб, 1599x520
1599x520
Q all! Подскажите, что надо исправить, чтобы нормально спарсить табличку из Вики. Скрипт https://pastebin.com/bUBR8Z0Q
В результате отработки появляются ненужные символы. Еще желательно было бы как-то сохранить заголовки.

з.ы. а чо с идеоном? не могу зайти.
Аноним 23/11/20 Пнд 12:45:20 186358697
Screenshot298.jpg 90Кб, 1000x622
1000x622
>>1863581
хуй знает что там у тебя на ровном месте не парсится.
Аноним 23/11/20 Пнд 13:02:17 186359398
>>1861623
match = re.search('\.{1}([\w]+)&{1}', text)
print(match[1])

Аноним 23/11/20 Пнд 13:02:57 186359499
Screenshot299.jpg 69Кб, 589x622
589x622
>>1863581
вот как это делается нормально.
не благодари.
Аноним 23/11/20 Пнд 13:03:42 1863595100
>>1863507
ones = sum([int(i) for i in n])
zeros = len(n) - ones
ones if ones > zeros else zeros

Попробуй так.
Аноним 23/11/20 Пнд 13:05:42 1863598101
>>1863595
можно избавиться от квадратных скобок в sum(), но это заменит список на генератор
Аноним 23/11/20 Пнд 13:07:33 1863601102
>>1863595
count('1') же, оптимизатор.
Аноним 23/11/20 Пнд 13:25:32 1863616103
>>1863594
Спасибо. Не умею работать с pandas.
Аноним 23/11/20 Пнд 13:36:03 1863621104
>>1863598
>>1863601
Спасибо за поправки, аноны, сам не так давно начал изучать Пайтон, поэтому не серчайте сильно на меня.
Аноним 23/11/20 Пнд 14:04:51 1863636105
Я решил с работки инженегра 100к перекатываться в программирование. Учился на инженегра. 23ЛВЛ

За 3 месяца изучения питона по 8 часов в день можно вкатиться? Хочу датасаенс с рекомендательной системой, но готов и быть джанго-макакой.

Всё что я делал это писал небольшие скрипты (прочитать из файла, изменить, записать в файл).
Аноним 23/11/20 Пнд 14:11:20 1863640106
>>1863636
Как вы заебали, не сможешь ты его продуктивно учить по 8 часов.
Аноним 23/11/20 Пнд 14:19:12 1863645107
>>1863640
Свою предыдущую специальность смог же.

Написал, потому что не могу принять решение об увольнении. Правда, что есть программисты, которые работают 5 дней по 10 часов и получают 120к?
Аноним 23/11/20 Пнд 14:21:34 1863647108
>>1863645
Можно и меньше работать по времени за тот же прайс
Аноним 23/11/20 Пнд 14:23:56 1863651109
>>1863647
120к это вообще для человека без специального образования реально? Просто инженеграм даже с образованием для этого надо быть богом или как я - работать в заполярье
Аноним 23/11/20 Пнд 14:33:49 1863661110
Screenshot20200[...].jpg 47Кб, 1080x861
1080x861
>>1863651
Как бы тебе сказать
Работаю на удалёнке, ВО нет
Аноним 23/11/20 Пнд 14:36:15 1863666111
>>1863661
это что за хуйня на картинке? что за 1-7 и пр говнище?
Аноним 23/11/20 Пнд 14:37:39 1863667112
>>1863666
Траты за месяц, в основном все в наличке снимаю
1-7 это числа месяца
Аноним 23/11/20 Пнд 14:59:08 1863687113
>>1863661
Бля.
Хочешь я расскажу как я зарабатываю 120к все равно рассажу

Я работаю в Норильске.
В ночные смены
Без выходных (1 выходной в месяц, но последние 2 месяца не давали вообще)
В среднем по 12,5 часов в сутки
Имею какую-то ответсвенность и постоянные дэдлайны
Аноним 23/11/20 Пнд 15:01:58 1863693114
>>1863687
Ну и я имею крутое ВО, выигрывал оллимпиады по теории и мой дипломный проект оценила одна компания (и дала мне подачку в 100к рупий)
Аноним 23/11/20 Пнд 15:03:14 1863696115
>>1863687
пездос, как ты так живешь. Я 2 года работал 2x2 по 12 и ахуел. это же тупо работа-сон-работа, потому что после 12 часов сил нет ни на что. Сейчас работаю пятидневку по 8 и в пт еще на час раньше ухожу, каеф. но я получаю 48к
Аноним 23/11/20 Пнд 15:08:46 1863704116
>>1863696
А ты думаешь почему я хочу уволиться?
4 месяца так жил. Сейчас отпуск, вот на двощи зашел.
Встал в 19:00
Приготовил
Вызвал такси (ибо экономия 20 минут это важнее денег в моём случае)
На работе в 21:00
Отпахал. Нет дэдлайнов - ушел в 9:00. Есть - сидишь доделываешь.
Пришел - помылся или постирал, или убрался (можно выбрать только что-то одно).
Лёг спать.

Зато деньги большие для меня. В любом случае надо было заработать что-то для вката в прогерство. Да и я думал, что не зря же я ебашил в универе зря
Аноним 23/11/20 Пнд 15:25:23 1863720117
>>1863704
> отпуск, вот на двощи зашел.

в 2020 не дващевать прямо на работе
Аноним 23/11/20 Пнд 15:25:46 1863721118
>>1863636
Вполне реально, только искать будешь долго.
И тут я вспоминаю товарища одного, который "вкатился в МЛ" и сразу взяли на стажировку. Ну как вкатился, прошел 5-6 курсов. Высрал пару репозиториев с говнокодом на гитхабе. В этих репах запилил 2 парсера(объективно не готовых к продакшену) и одного ТГ бота(считывать параметры от юзера через кнопки и пошаговый ввод данных? Не. Парсить стену текста от юзер - наш путь). Ну и 4 проекта по МЛ. Ну как по МЛу. 2 проекта с юзанием готовых библиотек с распознаванием лиц - каскады Хаара и обученная модель для нейронки от кераса, а он только метод(найти_лицо) их дёргает да картинку выводит. 2 проекта в которых просто рисуются графики и диаграммы на основе данных из CSV файла. Больше нихуя и не знает.
Как так-то блять? Я искал работу бэкэндером 3 месяца, имея пару реальных проектов и почти год фриланса.
Аноним 23/11/20 Пнд 15:26:56 1863722119
Так, анон, подскажи, будь добр.
У меня есть PID процесса, как в питоне сделать окно этого процесса активным.
Например, запущено у меня 2 экселя. Excel.exe PID 1 и Excel.exe PID 2
вот как мне позвать по пиду 2 эксель, что бы он стал активным, и мог пиздить оттуда данные
Аноним 23/11/20 Пнд 15:28:16 1863724120
>>1863721
Я думал имея год опыта фриланса, тебя должны были с руками оторвать? Ты, видимо, не в ДСах искал?
Аноним 23/11/20 Пнд 15:39:24 1863733121
>>1863721
Ну и судя по твоему другу необходимо сразу стараться делать проекты. Нахуй эти алгоритмы и прочее.
Аноним 23/11/20 Пнд 16:13:12 1863765122
>>1863722
Почему бы не пиздить данные через библиотеку екселя, а не через библиотеки окон?
Аноним 23/11/20 Пнд 16:13:57 1863766123
>>1863733
Да, лучше начать делать минимальные апликухи, а потом додрачивать нужные знания
Аноним 23/11/20 Пнд 16:22:33 1863774124
>>1863765
ексель это просто пример
Аноним 23/11/20 Пнд 16:28:02 1863780125
>>1863640
>не сможешь ты его продуктивно учить по 8 часов
Kek, я как то начинал читать учебник кантора по js, думал за три месяца его осилю, в итоге сдался как помню на половине, а на днях сидя по 14 часов прошел учебник Ала швейгера про автоматизацию на питоне, с решением задач, вот щас буду полировать классы и наследование с помощью учебника питона с w3school и писать прогу на pyqt и делать экзешник на нуитке, потом сделаю для проги сайт на какой-нибудь джанге или фласке, еще не выбрал. Питон как язык лично мне кажется проще остальных которые учил и бросал до этого, а именно плюсы, жс, котлин.

Хотя в основном это зависит от мотивации, по питону у меня есть желание написать кое-какую прогу себе на комп и я понимаю что это будет бытрее за счет пропуска байтоебства, поэтому и бросил читать плюсы для кути но указатели таки же освоил, а когда читал про жс, то не было видения что с его помощью хочу сделать. Так что считаю что в обучении главное держать перед глазами результат, это может быть законченная программа (которой или будешь пользоваться сам или поместишь в свое именное потрфолио на гитхабе, если пишешь калькулятор в стол то ответственности не чувствуешь а чувствуешь бессмысленность и бросаешь) или тест на сертификат.
Аноним 23/11/20 Пнд 16:32:05 1863786126
>>1863774
Попробуй какую-нибудь библиотеку вроде pyautogui или pywinauto, там это говно все есть, хоть по пиду, хоть по заголовку окна.
Аноним 23/11/20 Пнд 16:33:44 1863789127
>>1863724
В местныз ДСах искал. Но у меня не было "комерческого" опыта, на их взгляд.
>>1863733
Безусловно, но надо делать хорошо, а не говно пилить без описания и прочего. Ну и если ты идешь в МЛшики но при этом у тебя примеры работ уровня "взял либу, применил, ничего не крутил в параметрах, вывел результат" - никто в зравом уме тебя не возьмет, ибо такое делается за пару часов изучения документаций opencv\numpy\matplotlib and etc.

Ладно, весь секрет знакомого был в том, что его взяли по знакомству, без собеса технического.
Аноним 23/11/20 Пнд 16:39:23 1863795128
Аноны, вопрос по pycharm

После того как я сделал локально гит пуш своих коммитов, есть ли какой-то способ прямо в коде видеть изменения с мастером? Т.е я создал ветку с мастера, сделал там свои изменения и локально запушил на удаленный сервак(затупил) в своей ветке.

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

Пока что просто локально делал git reset soft и только так в файлах посдсвечиваются последние изменения, очевидно, что потом пушить это дело будет не шибко удобно.
Аноним 23/11/20 Пнд 16:50:01 1863803129
>>1863667
проебал зп на три недели и доволен сидит
Аноним 23/11/20 Пнд 17:18:31 1863837130
>>1863803
Это я в наличку все перевел
Аноним 23/11/20 Пнд 17:43:19 1863855131
>>1863837
>в наличку
Нахуя? Отмывать собрался?
Аноним 23/11/20 Пнд 17:45:00 1863857132
>>1863855
Скажем так, когда я перевелся на удалёнку, то лишился ВНЖ, а этот банк требует европейского резидентства, которое по докам у меня заканчивается в следующем месяце и аккаунт могут заблокировать
Аноним 23/11/20 Пнд 17:48:00 1863862133
>>1863857
Европа загнивает походу, да?
Аноним 23/11/20 Пнд 18:14:16 1863905134
>>1863862
Не, просто понял, что большая часть профитов европы мне не особо нужно, а жить на даче рядом с родным городом гораздо дешевле
Аноним 23/11/20 Пнд 18:19:36 1863912135
Есть таблица А, она имеет строковое поле и внешний ключ к таблице Б.
Если в связанной записи из таблицы Б значение определённого поля равно определённой строке, то из таблицы В надо взять записи по айди, равному строковому полю из таблицы А.
Как это сделать в один запрос через SQLalchemy?
Аноним 23/11/20 Пнд 19:49:35 1863963136
>>1863912
Если запрс солжны, рекамендуйт тупо SQL вызыватъ через sqlalchemy.text (или как там оно).

select В.*
from В
join А on А.field = В.id
join Б on Б.id = А.fk
where Б.field = '<STRING>'

МОжно конешн переипсать через ОРМ если очень надо.
Аноним 23/11/20 Пнд 20:15:13 1863974137
Подскажите по регуляркам.
Как вытащить повторяющиеся фрагменты логов?

# ####
# DATA
# ####
{
_"request": {
_"build_time": 1.12,
_"request": {
__"base": "-",
__"body": {
____"arg": "arg",
____"name": "Kevin"
__},
....

И такие фрагменты повторяются много раз. Я вот хочу вытащить содержимое body. И причем не обязательно что будет именно 2 аргумента или что будут имена arg и name.

Пока допедрил до такого
^# DATA(\s+.+){5} - оно съедает всё, до строки body. Вот и весь словарь мне надо получить. Подскажите что дальше делать?
Аноним 23/11/20 Пнд 20:18:28 1863976138
>>1863974
ведь это же джейсон? зачем его регулярками-то? когда есть import json
Аноним 23/11/20 Пнд 20:20:01 1863978139
Аноним 23/11/20 Пнд 20:21:28 1863979140
>>1863976
Это кусок файла. В нём намешано много всего. Просто так в json его не прочитаешь. Нужно вычистить необходимое, а потом да, читать строчку в json
Аноним 23/11/20 Пнд 20:27:20 1863981141
Мужики. Слышал, что очень полезно было бы создать какой-то свой "мини-проект" для практики. Порекомендуйте что-то, если я совсем новичок.
Аноним 23/11/20 Пнд 20:29:16 1863983142
Аноним 23/11/20 Пнд 20:50:09 1864004143
>>1863979
Надо смотреть что и как намешано. Поубивать лишнее, но в джейсон фрагмент не влазит.
Например если есть строчки с комментами, можно просто поубирать их
'\n'.join(x for x in x.splitlines() if not x.lstrip().startswith('#'))
Аноним 23/11/20 Пнд 20:58:36 1864011144
>>1864004
Я вот скинул пример вышел. Там несколько тысяч фрагментов, которые извлечь надо. Это файл логов, там много чего есть. Есть и комментарии, которые не комментарии, а просто выделение участков лога. Есть и голый текст. Если и ненужные фрагменты json'a. Херачить всё, кроме нужного участка - такое себе. Но вот то, что есть что точно, так это следование нужного фрагмента после определённого блока. Поэтому и использую регулярки. Как-то помнил раньше, как взять первую пару скобок и вытащить всё до её закрытия.
Аноним 23/11/20 Пнд 21:02:04 1864019145
>>1863974
Если там нет дополнительной вложенности, то "body": {[^}]*}.
Если есть, то надо рекурсивность, искаробочный re её не поддерживает.
Аноним 23/11/20 Пнд 21:08:31 1864024146
>>1864019
Спасибо, добрый человек.
Аноним 24/11/20 Втр 05:38:33 1864271147
Аноны, вопрос по архитектуре приложений.
Что можно почитать по теме? Или это только с опытом приходит? Пока научился только разделять по отдельным файлам функции. Смотрю чужие проекты, там папки с handler's, middleware, tools, etc.
Аноним 24/11/20 Втр 07:21:26 1864290148
>>1864271
> Или это только с опытом приходит
This
Аноним 24/11/20 Втр 08:59:07 1864313149
>>1861583 (OP)
Всем привет. Есть небольшой репозиторий в котором нужно тесты из отдельных папок перекинуть в папку тесты. Можно ли как это в Пайчарме сделать по красоте? Там ведь импорты всякие и тд. Юнит тестов пара сотен, не хотелось бы вручную все делать. Спасибо.
Аноним 24/11/20 Втр 09:41:38 1864324150
Ньюфаг здесь. Какое лучше IDE взять? PyCharm опенсурсная версия сильно кастрирована?
Аноним 24/11/20 Втр 10:15:26 1864333151
image.png 6Кб, 640x243
640x243
image.png 56Кб, 580x452
580x452
Пытаюсь перечислить коды цветов, использованных в серой гифке с максимум 35 цветами. Вот такое мне выдаёт PIL (пик 1).
А вот такое - colorthief. Пик2.

Я не очень понимаю, что происходит. Анон, помоги, пожалуйста.
Аноним 24/11/20 Втр 10:21:15 1864334152
>>1864324
> опенсурсная версия сильно кастрирована?
Нет.
Аноним 24/11/20 Втр 10:47:05 1864346153
>>1864333
Попробовал png, все работает. Может PIL с гифками работать не умеет?
Аноним 24/11/20 Втр 10:49:41 1864347154
>>1864346
Понял принял, пойду конвертировать.
Алсо, colorthief сам по себе использует PIL емнип, так что разницу результатов я вообще понять не могу.
Аноним 24/11/20 Втр 11:01:24 1864348155
image.png 10Кб, 1920x293
1920x293
image.png 6Кб, 650x262
650x262
saaremaa.gif 96Кб, 1025x1025
1025x1025
>>1864346
Попробова с PNG, анон.

В colorthief получается всё та же картина, противоречащая колорпикеру Питона. А чисто через пил всё тот же бред, противоречащий здравому смыслу, который я вообще не понимаю, как интерпретировать. По идее должен был быть вывод типа
>defaultdict(<type 'int'>, {(00, 00, 00): 8, (125, 125, 125): и т.д.

Пик 3 - данные, с которыми работаю. Интересно, у тебя заработает?
Аноним 24/11/20 Втр 11:14:14 1864352156
image.png 77Кб, 1094x587
1094x587
>>1864348
Психанул и плюнул на питон, стал делать в Баше. Пикрилейтед. Похоже, ебучий Gimp пиздит. Как, впрочем, и ColorThief со своим Pillow.

А может пиздит imagemagick? Короче ад какой-то.
Аноним 24/11/20 Втр 11:16:01 1864353157
image.png 31Кб, 1157x102
1157x102
>>1864352
Сука, это ведь даже уже не смешно.
Аноним 24/11/20 Втр 11:34:26 1864355158
Подгрузил сторонний проект, смотрю его в IDE (Пайчарм), настроил интерпретатор из виртуальной среды, все работает однако периодически IDE не может найти некоторые референсы в импортах и подсвечивает их как "Unresolved reference" (сам код конечно же запускается и работает как надо без ошибок) - почему так происходит и как фиксить эти рефы?
Аноним 24/11/20 Втр 11:37:52 1864357159
>>1864355
В основном это происходит когда пытаемся ипортировать из "высшей директории", например:

/.venv
/higher_directory
----/source

То есть когда внутри py-файлов делаем импорт вроде from higher_directory.source.messages import Message
Аноним 24/11/20 Втр 11:39:37 1864358160
image.png 31Кб, 955x325
955x325
>>1864346
Ну вообще пиздец. Анон, посмотри, пожалуйста, вдруг у меня что-то просто с софтом не так.
Аноним 24/11/20 Втр 11:41:48 1864361161
hqdefault.jpg 9Кб, 480x360
480x360
>>1864358
Что пиздец-то, индекс в палитре 12, всё сходится.
Аноним 24/11/20 Втр 11:43:06 1864362162
1.PNG 32Кб, 1461x437
1461x437
>>1864348
Вот так получилось.
Аноним 24/11/20 Втр 11:45:14 1864363163
image.png 73Кб, 600x846
600x846
image.png 10Кб, 303x222
303x222
image.png 19Кб, 314x287
314x287
>>1864361
Ну в какой таблице, понь?

14 грей по таблице это 31,31,31 1F1F1F
21 грей по таблице это gray21 54,54,54 363636

По гимпу там пик2 и пик3 соответственно.
Аноним 24/11/20 Втр 11:49:35 1864364164
>>1864358
И этот пиксель у меня 949494, короче .convert('RGB') делай и всё будет.
Аноним 24/11/20 Втр 12:01:46 1864368165
Untitled.png 5Кб, 419x165
419x165
Аноним 24/11/20 Втр 12:08:35 1864370166
>>1864362
Ну нормально, спасибо.

Правда, немного другая кодировка, чем в imagemagick:
8,8,8 у тебя и
> (0.619195,0.619195,0.619195,255) #010101FF rgba(0.242822%,0.242822%,0.242822%,1)
в imagemagick.
15,15,15 у тебя и
> (1.21812,1.21812,1.21812,255) #010101FF rgba(0.477695%,0.477695%,0.477695%,1)
в imagemagick.

>>1864364
Хм, примерно понятно. Интересно, в каком формате было это "12"?
Если верить https://www.kite.com/python/answers/how-get-the-rgb-values-of-an-image-using-pil-in-python , там должно было RGB выводить

>>1864368
Ну вот я подозревал что-то такое, но думал в сторону таблиц цветов типа https://portal.tpu.ru/DITE/table_color/4?_piref1073_15345179_1073_1895249_15345176.tabstring=2

Это, я так понимаю, 8битная 256 цветовая greyscale палитра? Где-то есть такая таблица с позициями типа 12 и 21 и значениями RGB для них? Я пытался сейчас нагуглить, но что-то туплю.

Вообще с цветами впервые работаю, поэтому много тупки
Аноним 24/11/20 Втр 12:13:00 1864372167
>>1864370
Это, я так понимаю, 8битная 256 цветовая greyscale палитра? Где-то есть такая таблица с позициями типа 12 и 21 и значениями RGB для них? Я пытался сейчас нагуглить, но что-то туплю.
Да, у гифок фиксированная палитра с заранее определенными цветами.
Аноним 24/11/20 Втр 12:15:00 1864374168
>>1864372
Но не у всех гифок, а у каждой своя.
На всякий случай уточню, лол.
Аноним 24/11/20 Втр 12:20:04 1864377169
>>1864374
Так даже лучше. Моя конечная задача - нахождение разницы высоты двух точек. И поиск используемых кодов нужен был мне именно для этого, я хотел ступенчатую таблицу запилить. А получается, что она уже как бы есть и запиливать даже не надо, лол.
Аноним 24/11/20 Втр 12:22:32 1864382170
>>1864374
Неразгаданными для меня осталось два вопроса:
1. Почему у двух разных цветов (см. ниже) одно HEX-значение, а именно #010101FF ?
Это вообще законно?

2. Почему RGB так по-разному кодируется в PIL, GIMP с одной стороны, и Imagemagick - с другой?
8,8,8 у тебя и
> (0.619195,0.619195,0.619195,255) #010101FF rgba(0.242822%,0.242822%,0.242822%,1)
в imagemagick.
15,15,15 у тебя и
> (1.21812,1.21812,1.21812,255) #010101FF rgba(0.477695%,0.477695%,0.477695%,1)
в imagemagick.
Аноним 24/11/20 Втр 12:27:12 1864386171
animal-wildlife[...].jpg 208Кб, 1024x682
1024x682
Анончики - HELP me PLEASE

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

Ситуация: мне 27, я работаю начальником сервисной службы, зарплата в среднем 80-100к деревянных(пишу не для выебонов а что-бы вы понимали что речь дальше пройдет не про 300к наносек хочу)

Я начинаю выгорать на основной работе и хочу попробовать себя в программировании, для начала в качестве ХОББИ!

Но, поскольку я должен работать на основной работе, у меня в день есть максимум 2-3 часа свободного времени которое я могу ОСОЗНАННО, ВДУМЧИВО, выделить на своё ХОББИ.

А поэтому мне нужны максимально актуальные источники информации, как вкатится в Python, какие курсы купить, какие книги почитать, с чего начать?
Спрашиваю не потому-что не умею в гугл, а потому-что недавно обновили же Питона вашего и мне как новичку совершенно непонятно какая информация теперь является актуальной.
Пока юзаю Fructcode,но не уверен что это правильный выбор.

До этого ничего не программировал, немного умею в HTML CSS, английский на хорошем среднем уровне в технической области(так-как работаю с инструкциями на англ мове)

Пожалуйста, кому не лень проконсультируйте меня без рофлов.
Аноним 24/11/20 Втр 12:29:28 1864388172
>>1864386
Ну это же индивидуально. Я вкатываюсь по Automate Boring Stuff with Python (я пердолик и для меня это в целом актуально, постоянно скриптинговые задачи возникают), и через игроблядство (куча игр использует питон, плюс можно писать вспомогательные утилиты для игор на питоне, не связанные с кодбазой самой игры).
Аноним 24/11/20 Втр 12:29:47 1864389173
>>1864382
Подозреваю, что нужны какие-то дополнительные ключи для магика, чтобы он не дрочил картинку.
Аноним 24/11/20 Втр 12:36:48 1864394174
>>1864389
Это ты к первому или второму вопросу?

Алсо P.S. к первому вопросу: для сравнения, по Гимпу у 8,8.8 hex = 080808, а у 15,15,15 = 0f0f0f.
По imagemagick шо то, шо то = 010101.
Аноним 24/11/20 Втр 12:37:52 1864395175
11111.jpg 22Кб, 526x165
526x165
>>1864388
1)Пердолик? не уверен что понял о чем ты...
2)Понимаю что индивидуально, но в любой сфере есть какой-то базис и середина золотая с которой можно стартовать.

Вот книга которую ты назвал, я её видел в рекомендациях к изучению, вопрос - она подходит для совсем нубасов?
Аноним 24/11/20 Втр 12:38:48 1864396176
>>1864394
Ко всем, видимо он делает какие-то преобразования, так что цвета уже не строго оригинальные, нет смысла сравнивать.
Надо курить документацию.
Аноним 24/11/20 Втр 12:40:47 1864398177
>>1864386
Попробуй бесплатные курсы по Питону (начиная с курсов для кольников) на курсере, открытом образовании. Можно даже на степике, но там порядочно ерунды всякой. Проходишь одинаковые курсы ради решения задачек и набивания руки. Где больше задачек, там и хорошо. Понемногу задачки усложняешь. За 2-3 часа можно решить их с десяток. За год поднатаскаешься достаточно сильно.

А пока едешь с работы и на работу, в телефоне читай учебники по Питону. Накачать их можно на рутрекере. Какие понравятся. Тут задача не в том, чтобы прочесть объём материала или прорешать тысячу задач. А чтобы понимание возникло. Поэтому, иногда книку можно бросить читать и начать другую - не все книжки подходят всем. Единственное что, не читай ничего по 2-й ветке Питона, коли уже третья на исход идёт.
Аноним 24/11/20 Втр 12:44:29 1864403178
>>1864396
А, ну вот, если твой колорспейс ргб убрать из команды, то кажет нормально.
Аноним 24/11/20 Втр 12:47:20 1864404179
>>1864398
На какой исход, норкоман?
Алсо, 2 ещё долго будет в виде легаси, знать тоже надо, тем более, что там не так много отличий.
Аноним 24/11/20 Втр 12:48:48 1864406180
image.png 15Кб, 593x546
593x546
>>1864374
> Но не у всех гифок, а у каждой своя.
Оказывается, нет. Для всех гифок такой битности и гаммы.

Пикрил.
Аноним 24/11/20 Втр 12:49:18 1864407181
>>1864404
Второпитон новичку не нужен совсем.
Аноним 24/11/20 Втр 12:51:42 1864409182
>>1864406
Ну это какие-то часто используемые пресеты, а так есть возможность любые цвета вхуячить, только ограничение на 256 штук максимум.
Аноним 24/11/20 Втр 12:52:32 1864410183
>>1864404
>2 ещё долго будет в виде легаси
Те, кто не переписал свои проекты на тройку после прекращения поддержки двойки - шизы и ретарды
Аноним 24/11/20 Втр 12:53:55 1864411184
>>1864410
Легаси на то и легаси, что автор спился и утонул десять лет назад, а у нас всё работает, но надо добавить вот такую хуйню.
Аноним 24/11/20 Втр 12:55:59 1864414185
Правильно ли понимаю, что в питоне нет передачи по значению, а только по ссылке?
Аноним 24/11/20 Втр 12:56:24 1864416186
>>1864414
В питоне вообще нет значений, только ссылки.
Аноним 24/11/20 Втр 13:02:35 1864420187
>>1864395
> 1)Пердолик? не уверен что понял о чем ты...
Пользователь операционной системы GNU/Linux.

> вопрос - она подходит для совсем нубасов?
Думаю, подойдёт, попробуй отпишись.
Аноним 24/11/20 Втр 13:09:39 1864429188
>>1864398
спасибо большое, буду пробовать
Аноним 24/11/20 Втр 13:12:43 1864431189
>>1864420
спасибо.

сам пользователь линукса, не знал что их так называют)
Аноним 24/11/20 Втр 13:34:47 1864446190
Планирую изучать питон вместо подготовки к ЕГЭ, какие подводные?
Аноним 24/11/20 Втр 13:39:54 1864447191
>>1864446
Прососать письку с бесплатной вышкой.
Аноним 24/11/20 Втр 13:40:08 1864448192
image.png 601Кб, 810x474
810x474
>>1864386
Программирование и питон это разные вещи. Причем если ты выучишь питон раньше БАЗЫ программирования вроде принципов работы компьютера или любой платы, двоичной системы, блок-схем алгоритмов и пр, то станешь кодомакакой. Поэтому советую материалы от нашего соотечественника, они конечно не про питон, а про то без чего питон бы и не появился в этом мире, но после их усвоения тебе зайдет и питон и любой другой язык.
Аноним 24/11/20 Втр 13:49:45 1864452193
>>1864448
кстати слышал, что эти книги очень хвалят
спасибо, что очередной раз подтвердил мою уверенность в их приобретении
Аноним 24/11/20 Втр 13:50:04 1864453194
>>1864448
годный совет анон, спасибо.
первую книжку уже начал читать, вторую скачал но начну после первой.
Аноним 24/11/20 Втр 13:51:19 1864454195
>>1864453
а как читаются кстати? трудно-сложно или можно по пути на работу в метро почитать?
Аноним 24/11/20 Втр 13:54:14 1864456196
>>1864454
я именно по пути на работу читаю, в электричке в 6 утра очень даже заходит и не срубает - лично меня.
говорю про первую...может вторая сложнее я не начал еще
Аноним 24/11/20 Втр 13:55:33 1864458197
>>1864456
круто, спасибо
а то вот уже 3 год работаю и все ощущение, что я макака а не прогер.
вообще что отличает макаку питониста от тру прогера питониста, а? аноны?
Аноним 24/11/20 Втр 13:56:07 1864459198
>>1864448
Ну хуй знает, автор весьма упорот и не лечится.
Я бы поостерегся учится по этому, а для общего развития можно и читнуть что он там насочинял.
Аноним 24/11/20 Втр 13:56:37 1864460199
>>1864459
например? что насочинял?
Аноним 24/11/20 Втр 14:00:26 1864462200
Аноним 24/11/20 Втр 14:01:17 1864463201
>>1864460
Насочинял в смысле вообще, а не хуйню написал.
Аноним 24/11/20 Втр 14:05:01 1864468202
>>1864462
а кто-то читает sicp? лол
Аноним 24/11/20 Втр 14:40:57 1864477203
image.png 29Кб, 653x500
653x500
Анон, помоги с пучармом. Внезапно сбилась кодировка, в терминале пучармовском все работает, а вот в выводе run нет, вместо русских букв кракозябры, а раньше вообще при выводе русских букв писало ошибку и решилось только в run configurator простановкой кодировки, теперь оно хоть и выводит без тсключений, но распознает русские буквы неправильно, что еще изменить в настройках? Что в пучарме вообще отвечает за вывод в run?
Настройки X
Ответить в тред X
15000
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов