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

Ответить в тред Ответить в тред
Check this out!
Питон тред №121 /python/ Аноним 03/06/21 Чтв 16:46:05 20551361
pycon-guido.jpg 40Кб, 500x667
500x667
just-enough-pyt[...].jpg 53Кб, 750x422
750x422
Black-Headed-Py[...].jpeg 48Кб, 768x513
768x513
Тред, посвящённый языку программирования Питон, #121

Предыдущий: >>2037483 (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
Аноним 03/06/21 Чтв 17:21:07 20552102
В чем минусы VSCode'а?
Аноним 03/06/21 Чтв 18:02:23 20553263
yield
Аноним 03/06/21 Чтв 18:37:31 20553964
image.png 30Кб, 732x249
732x249
image.png 34Кб, 292x357
292x357
У меня есть два способа считать и сохранить изображение из интернета. На скрине.
Какие плюсы, минусы и подводные камни у них?
Вижу невооруженным глазом, что PIL шакалит картинки. Но и без него не могу обойтись, потому что большим картинкам я хочу делать resize.
Заранее благодарен за ответы.
Аноним 03/06/21 Чтв 18:43:26 20554035
>>2055396
В первом случае ты сохраняешь оригинальную картинку, во втором пережимаешь с потерями.
В чем вопрос я не понял. Если надо обрабатывать, то придется пережимать, хули делать. Можешь сохранять в пнг, но проебешься по размеру.
Аноним 03/06/21 Чтв 18:46:24 20554126
>>2055403
Вопрос, почему PIL пережимает? Можно его как-нибудь попросить не пережимать, а сохранять как есть? Не нашел в гугле, искал.
Аноним 03/06/21 Чтв 18:48:04 20554167
>>2055396
>Вижу невооруженным глазом, что PIL шакалит картинки.
Ты можешь выставить свой параметр компрессии, чтобы качество оставалось высоким. На память не помню каким ключом, смотри доку.
Аноним 03/06/21 Чтв 18:49:23 20554208
>>2055412
Потому что он загружает картинку и создает свой объект, потом этот объект надо сохранить в каком-то формате == пережать в случае лосси форматов.
В принципе, ты можешь загружать в pil и смотреть размеры, если большой, то ресайзить и пережимать, если нет, то сохранять файлом, а не через сам pil.
Аноним 03/06/21 Чтв 18:49:59 20554239
>>2055412
>Не нашел в гугле, искал.
Как это возможно?
google> pil image save quality
первая ссылка даёт тебе ответ
>The image quality, on a scale from 1 (worst) to 95 (best). The default is 75.
img.save('test.jpg', quality=95)
Аноним 03/06/21 Чтв 18:50:26 205542610
>>2055416
Даже при quality 100 проебывается качество у жпега.
Аноним 03/06/21 Чтв 18:53:43 205543111
>>2055423
А, ну я ничтожество тогда. Спасибо большое, c 95 качество как у исходного.
>>2055416
>>2055420
И всем спасибо за ответы.
Аноним 03/06/21 Чтв 19:05:56 205545312
>>2055210
У него нет плюсов, это главный минус.
Аноним 03/06/21 Чтв 20:01:09 205551913
>>2055431
Тебе ещё стоит глянуть на то, как выбирать разные алгоритмы для ресайза, от них очень сильно зависит итоговое качество, как разные мелкие детали будут ресайзиться. А так же посмотреть на решарпинг после того, как размер уменьшаешь.

Вот эти две вещи критически сказываются на том, какая у тебя картинка будет в итоге.

Это тоже всё есть в PIL. Алгоритмы смотри по ключевым словам BICUBIC и LANCZOS.
Аноним 03/06/21 Чтв 20:02:57 205552114
Аноним 03/06/21 Чтв 20:04:34 205552215
>>2055521
Надо, это откровенное говно мамонта. Но на что, есть варианты?
Аноним 03/06/21 Чтв 20:07:11 205552716
>>2055522
Я сам не питонист. Нужны питонисты для указания современных книг и курсов
Аноним 03/06/21 Чтв 20:11:12 205552817
>>2055527
Нужен джангист, чтобы актуализировать этот пункт:
> — А как учить джангу? Нахожу только книги по джанге 1.х
> У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать и для версий <2, это не проблема, т.к. принципы остаются теми же. Для переката на 2.х хватит changelog`a или тех же самых доков/статей. Начни изучать с разбора учебного приложения с голосовалкой из официальной документации.
Я сам давно джангу не трогал, 3-ю версию вообще не трогал, надо актуализировать с учётом, что сейчас 3-я версия.

>>2055527
>Нужны питонисты для указания современных книг и курсов
Я частично питонист и уже очень давно. Проблема в том, что за курсами не слежу, не актуально. Можно было бы составить FAQ, но это же надо на какой-то площадке делать, там аккаунт для этого заводить. Я бы составил что-то от себя по тем частям, которые знаю. Другие аноны может что-то ещё составили.
Аноним 03/06/21 Чтв 20:12:20 205553018
А сама шапка копи-паст по шаблону из 90-го треда, а уже 121-й.

Аноним 03/06/21 Чтв 20:12:47 205553119
>>2055528
Надо гугл-док составить с доступом по ссылке. Чтобы каждый мог добавить что-то свое.

Вопрос только кто возьмет к себе это на Гитхаб?
Аноним 03/06/21 Чтв 20:21:31 205553520
>>2054895 →
Почему ты не черный русский?
Аноним 03/06/21 Чтв 20:22:18 205553721
Аноним 03/06/21 Чтв 20:23:38 205553822
>>2055531
Лучше создать проект с readme на github (google doc не стоит)
Аноним 03/06/21 Чтв 20:25:08 205554123
>>2055538
Вопрос в том, что этот Гитхаб должен держать кто-то ответственный и активный. А я тут 2 тред сижу, сорре.
Аноним 03/06/21 Чтв 20:29:06 205554624
Аноним 03/06/21 Чтв 20:35:52 205554925
Я только что создал новый гитхаб аккаунт на новый ящик.

Ящик на рамблере, вроде не требует телефона даже для регистрации, гитхаб тоже только почту просит. Всё в традициях анонизма.

Можно расшарить доступ на несколько аккаунтов.
Аноним 03/06/21 Чтв 20:40:18 205555426
>>2055546
>Давай сделаем pull request с readme.md к предыдущему ЧаВо https://github.com/TheKnightsWhoSayNi/info
На аккаунте последняя активность 2015 года. Мёртвый акк, автор что-то сделал и забил.

Нужен аккаунт, чтобы к нему доступ у нескольких человек был.
Аноним 03/06/21 Чтв 20:52:58 205556727
91ABB4AA-3934-4[...].jpeg 582Кб, 1695x1950
1695x1950
Сразу извиняюсь за скрин с телефона.
Вопрос 1) Как правильно привязать y и n что бы при вводе строчной и прописной значений был одинаковый результат? 2) Как убрать изображения тех же y и n после ввода?
Можете гавном кидаться, совсем недавно начал изучать питон
Аноним 03/06/21 Чтв 20:53:05 205556928
>>2055549
Можешь создать репозиторий? Как думаешь лучше на wiki делать или в README.MD?
Аноним 03/06/21 Чтв 20:54:33 205557429
Аноним 03/06/21 Чтв 21:10:17 205559030
>>2055574
Отлично, помогло, запомню на будущее. Теперь буду разбираться как написать код так, что бы эти значение не были видны после ввода.
Аноним 03/06/21 Чтв 21:17:52 205559631
>>2055569
Короче вот такое создал
https://github.com/python-2ch/faq
там пока абсолютно ничего нет

Кто готов этим заниматься, можно в коллоборацию вступить, я открою доступ на влив.

Я может сегодня-завтра займусь тем, чтобы хотя бы самую базу составить.

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

Я думаю, что как-минимум нужен FAQ, и ещё можно репозиторий с демо-примерами сделать разных фишек.
Аноним 03/06/21 Чтв 21:18:59 205559732
Аноним 03/06/21 Чтв 21:19:28 205559833
Аноним 03/06/21 Чтв 21:40:50 205562334
Аноним 04/06/21 Птн 00:26:57 205577235
>>2055567
quit.lower() == 'y'
Так правильнее
Аноним 04/06/21 Птн 01:10:51 205579636
> Because we can’t remove items from a list or group within a for loop, we have to loop over a copy of the group.

Почему?
Аноним 04/06/21 Птн 01:22:58 205580037
>>2055796
Это специальные ограничения, чтобы избежать многих проблем и сделать возможными какие-то оптимизации.

Слишком много граблей может быть, вот и решили просто заблокировать такую возможность.
Аноним 04/06/21 Птн 06:09:22 205586738
Подскажите, пожалуйста, что в данном случае представляют собой x_test, y_test? x_train, y_train я понимаю, эта пара возвращаемых значений, но что значат скобки с еще парой значений?

(x_train, y_train), (x_test, y_test) = fashion_mnist.load_data()
Аноним 04/06/21 Птн 08:21:45 205590839
>>2055796
Потому что итератор не в курсе, что что-то меняется и ты получишь ебанутый результат. В некоторых случаях прокатит, а в некоторых нет, поэтому принято не рисковать, а явно работать с копиями или индексами.
https://ideone.com/vRgAXc
>>2055800
Норкоман.
Аноним 04/06/21 Птн 11:27:31 205605040
>>2055867
Каждое значение само по себе пара.
Аноним 04/06/21 Птн 14:54:04 205635341
Что означает r перед строкой пути к файлу в пайтоне?
r'path/to/file'
Я не питонист.
Аноним 04/06/21 Птн 14:57:38 205636042
>>2056353
Отключает бэкслеш, на котором висят всякие последовательности вроде \r \n и некоторые другие штуки. В случае шиндовс путей без этого надо эскейпить через \\.
Аноним 04/06/21 Птн 15:08:17 205638743
>>2055908
Получается если тебе нужно к примеру залупиться через лист и удалить какие-то объекты, то ты будешь это делать через копию, а внутри цикла пропишешь условие для удаления объекта из настоящего листа? Он получается на каждом проходе будет новую копию создавать?
И вообще не дает ли это лишней нагрузки, нужно же ведь копию создавать, хранить где-то?
Аноним 04/06/21 Птн 15:14:48 205639544
>>2056387
Ты просто проходишь по списку и создаёшь новый список, без удалённых значений из старого.

>И вообще не дает ли это лишней нагрузки, нужно же ведь копию создавать, хранить где-то?
Всё это работает быстро, если списки небольшие. При этом само по себе удаление операция дорогая, это O(N) в среднем, точнее чем ближе к началу, тем дольше. Если тебе надо несколько элементов удалить, то быстрее будет пересоздать список.
Аноним 04/06/21 Птн 15:15:47 205639845
>>2056387
Копия создается один раз на старте, а не на каждом проходе.
Оверхед есть по копии, да. Если у тебя реально большой список то есть другие способы. Можно итерироваться задом наперед, можно завернуть в компрехеншен или генераторное выражение.
Аноним 04/06/21 Птн 18:00:39 205667246
post-34719-1181[...].jpeg 22Кб, 370x369
370x369
Памаги, двач. Пытаюсь упаковать проек
python3 -m build

выдаёт ошибку

AttributeError: 'builtin_function_or_method' object has no attribute 'split'

Нихуя не понятно, Traceback возвращает залупу в рот ничего интересного, там вообще нет инфы о каких либо ошибках в конкретно моих исходниках, только длинющая проповедь с немоими файлами, типо _in_process.py или dist.py

Сама прога вроде пашет нормально.
Аноним 04/06/21 Птн 21:29:02 205698247
изображение.png 3Кб, 824x42
824x42
Как ловить хуй в рот исключение от библиотек типа пикрил? Оставлять except без аргумента не хочется, да и пучарм ругается "ловите конкретный хуй в рот, а не любой"
Аноним 04/06/21 Птн 21:38:28 205700648
>>2056672
UPD2 помогла замена в файле setup.py
with open("REAMDE.md", "r", encoding="utf-8") as f:
_____description = f.read()
setuptools.setup(
______ ...
______ long_description =description
______ ...
)
на
setuptools.setup(
_____...
_____long_description=open("README.md").read(),
_____...
)
Не знаю с чем это связано, буду рад услышать предположения
Аноним 04/06/21 Птн 21:40:44 205701249
>>2056982
Ну так лови конкретный епт
Че бухтеть-то?
Аноним 04/06/21 Птн 21:41:17 205701550
>>2056982
Так и лови.
except hui.pizda.HuiException
или
from hui.pizda import HuiException
except HuiException
Аноним 05/06/21 Суб 05:07:29 205755151
image.png 2415Кб, 958x963
958x963
шалом двач, надо сделать сервер который бы по очереди работал с двумя клиентами, пока придумал 2 варианта, через многопоточность и sock.accept() в бесконечном цикле, но не ебу как реализовать оба варианта, памагите
Аноним 05/06/21 Суб 06:42:45 205757352
Челы, если у меня есть цикл, который обрабатывает большое количество маленьких файлов, то насколько критично будет добавить несколько IF в него? Насколько сильно это ударит по производительности?
Аноним 05/06/21 Суб 08:21:15 205759353
>>2057573
if как правило на порядки быстрее файловых операций, так что никак не ударит

впрочем если ты прямо в выражении проверки условия в if будешь выполнять файловые операции...
Аноним 05/06/21 Суб 12:23:32 205780254
>>2057551
В каком смысле по очереди?
Пока может принимать что то отдного, не может от другого?
Аноним 05/06/21 Суб 12:47:03 205781355
image.png 5Кб, 321x146
321x146
Аноним 05/06/21 Суб 13:04:42 205782356
>>2055412
> почему PIL пережимает
потому-что шакал
Аноним 05/06/21 Суб 13:31:54 205784357
Анончик не шлите нахуй, пожалуйста. Как дела с работой обстоят? В дс 2.5 вакансии джуна на хх. Вкатиться вообще реально?
Аноним 05/06/21 Суб 14:02:26 205787558
>>2057843
Все вкатыши пошли на курсы с гарантией трудоустройства и трудоустроились, очевидно же.
Аноним 05/06/21 Суб 14:10:02 205788659
>>2057843
Так джунов никто и не ищет, смотри миддлов
Аноним 05/06/21 Суб 14:17:44 205789760
Как просто написать интерфейс для питон скрипта что запускаеться через строчку с аргументами? На телефон интерфейс.

Я запускаю питон через termux , но там еще нужно всякие библиотеки устанавливать и комадную строчку писать.


Как просто реализовать апкашку что бы был интерфейс для запуска + оно все библиотеки устанавливало?
Аноним 05/06/21 Суб 14:24:56 205790261
Аноним 05/06/21 Суб 14:29:29 205790662
>>2057902
Он в любом случае что то да будет принимать, если есть соединение.
Аноним 05/06/21 Суб 14:37:56 205791663
>>2057843
Джун по ХХ это "опыт работы 1-3 года". Таких вакансий много. Мало вакансий стажёров без опыта.

На ХХ надо выставлять опыт работы один из "без опыта", "1-3 года", "3-6 лет", "свыше 6 лет". "без опыта" никто не ставит, потому что заспамят совсем неадекваты, а нормальные люди как раз испугаются.

Когда хотят миддлов, ставят минимум 3 года.
Аноним 05/06/21 Суб 14:41:20 205791864
>>2057551
Есть вариант делать это через select'ы. Но в 2021 надо работать с asyncio, вот как раз для этого и предназначен в первую очередь, в кишках там те же select/epoll.
Аноним 05/06/21 Суб 14:54:56 205793365
>>2057918
так мне асинхронность не нужна, сервер по идее должен работать как-то так:
дельта1
дельта2
бесконечный цикл
____создание сокета первого клиента
____отправка дельт первому клиенту
____ожидание данных
____изменение дельта2
____закрытие сокета первого клиента
____создание сокета второго клиента
____отправка дельт второму клиенту
____ожидание данных
____изменение дельта1
____закрытие сокета второго клиента
Аноним 05/06/21 Суб 15:25:27 205796266
Screenshot from[...].png 57Кб, 808x308
808x308
>>2057933
Если последовательно, то в чём проблема? Пример из документации питона просто один-в один то, что тебе нужно
Аноним 05/06/21 Суб 15:41:31 205796767
>>2057933
Нахера ебать себе мозги низкоуровневой хуйней которую ты в любом случае - инфа 100% - не сделаешь как следует когда есть готовые варианты с fastapi, aiohttp или flask на худой конец
Аноним 05/06/21 Суб 15:47:07 205797068
>>2057967
Ему нужен не HTTP, а интерактивные сокеты.
Аноним 05/06/21 Суб 15:48:57 205797469
>>2057970
Ты же в курсе что можно послать HTTP запрос на другой сокет локалхоста вообще как нехуй? И это в целом норма для приложения которое разбито на сервисы
Аноним 05/06/21 Суб 16:27:10 205801370
Аноны, блин, разъясните мне, в чем смысл Setters и Getters в Питоне?

Да, понимаю, в Java, там создается ПРИВАТНАЯ переменная класса, и её задать/прочитать напрямую нельзя, только через геттер/сеттер. И это, чиорт возьми, понятно, мейкс сенс.

А в Питоне? Ок, создали в классе приватную переменную (self.__x) И что же, дальше объявляем через декоратор сеттер/геттер и получается, что можем обратиться к этой переменной, как если бы она была просто публичной. Типа: object.x = 5 (присвоили значение). В чем тогда смысл? Ведь можно просто сделать открытый self.x и точно так же обращаться к нему?
Аноним 05/06/21 Суб 16:28:20 205801471
>>2058013
А в чем смысл set и get в ЖС?

чтоб создать интерфейс для чтения/записи данных определенным образом
Аноним 05/06/21 Суб 16:31:21 205801972
>>2058013
Посмотри декоратор property в документации.
Там заодно обьяснется, зачем это нужно.
Аноним 05/06/21 Суб 16:52:19 205805173
>>2057974
Сокеты это протоколы низкого уровня. HTTP это относительно сложный высокоуровневый протокол с какими-то возможностями и большими ограничениями.

Если тебе нужен именно сокет, чтобы обменяться данными, то какое отношение к этому имеет http? Зачем нужны вот эти здоровенные обвязки, чтобы потом поверх них пытаться изобрести функционал обычного сокета?

Вот у анона задача >>2057933 . К нему коннектится клиент, он клиенту посылает данные, потом клиент что-то делает и посылает ответ. Для этого HTTP не подходит, потому что в HTTP клиент посылает данные, и потом уже от сервера ждёт ответ, при этом после получения данных с сервера клиент уже ничего не может послать, нужно новое соединение устанавливать.

В то время как на базе обычных сокетов и tcp это реализовать очень легко.
Аноним 05/06/21 Суб 16:58:39 205805874
>>2058013
>Ведь можно просто сделать открытый self.x
Поведение свойства x может быть достаточно сложным. Например, это может быть количество элементов с каким-то свойством в объекте, размер буфера и т.п.

Геттеры-сеттеры это не синтаксический сахар над
object.x
Это синтаксический сахар над
object.get_x()
object.set_x(value)

Они нужны, например, для того, чтобы можно было валидацию данных добавлять, чтобы ты не мог некорректное значение в переменную записать. Либо когда запись требует дополнительных действий, перестройки индексов, внутренних структур данных и т.п. При этом, чтобы для пользователя сохранился простой вид object.x, вместо object.set_x()
Аноним 05/06/21 Суб 16:59:46 205806075
>>2057962
проблема в том, что во всех примерах создают сервер для одного клиента, я не понимаю как нормально реализовать переключение между клиентами
Аноним 05/06/21 Суб 17:01:35 205806276
>>2058060
Отрываешь сокеты и пихаешь в лист, потом итерируешься по нему.
Аноним 05/06/21 Суб 17:08:47 205807177
>>2058060
В примере из доки клиенты подключаются последовательно. Сначала один, затем другой.

Если тебе нужно работать с несколькими сокетами, причём ты не знаешь, какой клиент подключится первым, или/и требуется работа с несколькими клиентами одновременно, то тут только вариант делать многопоточность или асинхронность. Или переизобретать кривым способом асинхронность.
Аноним 05/06/21 Суб 17:10:40 205807378
>>2058060
На самом деле тебе нужно выделить время, изучить, как работать с многопоточностью и/или асинхронность, и написать уже так. Потому что в любом случае понадобится.

Я бы советовал глянуть на asyncio подход, раз ты с сетями работаешь.
Аноним 05/06/21 Суб 17:10:43 205807479
>>2058051
>Для этого HTTP не подходит, потому что в HTTP клиент посылает данные, и потом уже от сервера ждёт ответ
...
Вообще-то нормальная практика это передача callback-url
Аноним 05/06/21 Суб 17:30:43 205809680
>>2057551
while True:
принимаешь подключение
создаешь поток для клиента
передаешь ему клиентский сокет
Аноним 05/06/21 Суб 17:31:49 205809781
>>2058071
sock.listen(2)
sock.accept()
сколько в таком случае вернется соединений при подключении двух клиентов и что изменится если будет sock.listen(1)? где должны находиться ацепт и листен в данном примере>>2057933?
Аноним 05/06/21 Суб 17:38:49 205810282
>>2058058
Спасибо добрый анон. Теперь вроде ясно.
Аноним 05/06/21 Суб 18:35:35 205815683
Что значит такое в питоне _, например for _ и тд, что это?
Аноним 05/06/21 Суб 18:36:53 205815784
>>2058156
Переменная
Так ее пишут как правило чтобы намекнуть что это хуйня и по факту она не используется:

for _ in range(10): print("hui sosi")
Аноним 05/06/21 Суб 18:58:32 205818785
>>2058156
Переменная, которая никак не используется. Это больше из традиций Go, где ты обязан использовать переменную, иначе не скомпилируется, и только для _ предусмотрено специальное исключение. В питоне как-то особо с этим и не сталкивался.
Аноним 05/06/21 Суб 19:12:41 205821686
xpyCjQmnVwE.jpg 76Кб, 720x711
720x711
Не знаю, куда с такими проблемами писать, напишу вам.

https://www.kaggle.com/sandorkonya/ct-lung-heart-trachea-segmentation [1]
https://www.kaggle.com/polomarco/chest-ct-segmentation [2]

Понадобился, значит, мне датасет [1] с разметкой лёгких. Открыла файлы в Jupyter через pynrrd, но нашла только маски. Самих ct-снимков обнаружено не было. Погуляла по окрестным ссылкам, нашла датасет [2] из слоёв-пронумерованных жипегов, и со снимками, и с масками.

В описании сказано, что датасет [2] был получен из [1], но, чёрт, откуда снимки?

Кто работал с .nrrd, помогите разобраться, прошу. D :
Аноним 05/06/21 Суб 19:32:48 205825187
изображение.png 302Кб, 458x344
458x344
>>2057015
>>2057012
Спасибо. Как обычно пытался первый раз, писал "нельзя ловить хуй из сторонних библиотек", второй раз попытался и получилось.

Почему нужно быть настойчивее даже в программировании?
Аноним 06/06/21 Вск 00:04:42 205864088
Челы, дайте рекомендацию по книжке для изучения пайтона, только не с основ проги. Спасибо
Аноним 06/06/21 Вск 00:07:21 205864189
>>2058640
А что ты умеешь? Пролистай этот тред и прошлый. Были рекомендации с обоснованием.
Аноним 06/06/21 Вск 00:31:52 205867090
Аноним 06/06/21 Вск 00:35:58 205867791
Сеньоры, мидлы уделите минутку
Какие пет проекты на питоне написать, чтобы вырости до junior'a на ту же самую удаленку?
Чтобы зацепить postgresql,celery, etc и в целом получить какой-то опыт
А не тупо писать всякие CRUD бложики
Спасибо
Аноним 06/06/21 Вск 00:41:07 205868592
854579600.jpg 34Кб, 600x400
600x400
>>2058677
>удалёнка
>джун
выкатывайся
Аноним 06/06/21 Вск 00:57:12 205869093
>>2058685
Нихуя, это уже квест масштаба не только работы но и жизни.
Буду рад любой инфе за пет проджект
Мимо опыт веб макакой/верстальщиком
Аноним 06/06/21 Вск 01:36:17 205872694
Ребят, кто за докер шарит? Хочу чтоб файлы, которые создаются в контейнере, так же создавались и в папке на хосте. Создаю volume, но он работает только в одну сторону. Тип файлы с хоста отображаются в контейнере, но не наоборот. Кто знает в чем проблема? Вот строчки из docker-compose:
volumes:
- ./img:/img
- ./img/products:/img/products
Аноним 06/06/21 Вск 01:36:45 205872895
Ребят, кто за докер шарит? Хочу чтоб файлы, которые создаются в контейнере, так же создавались и в папке на хосте. Создаю volume, но он работает только в одну сторону. Тип файлы с хоста отображаются в контейнере, но не наоборот. Кто знает в чем проблема? Вот строчки из docker-compose:
volumes:
- ./img:/img
- ./img/products:/img/products
Аноним 06/06/21 Вск 02:18:05 205875496
>>2058726
>Тип файлы с хоста отображаются в контейнере, но не наоборот.
Не очень понятно, что значит "наоборот".
По идее, если ты запускаешь контейнер с такими настройками, и после запуска пишешь в эти каталоги данные, то они должны сохраняться на хосте.

Если ты хочешь, чтобы уже существующие данные скопировались на хост, то это не сработает, конечно. Потому что поверх существующих данных ты монтируешь что-то.

Попробуй подключиться к работающему контейнеру и посмотреть, как изнутри каталог выглядит.
Аноним 06/06/21 Вск 10:31:28 205884397
>>2058216
ты тянка? что за котёнок на пике?
Аноним 06/06/21 Вск 10:44:25 205884998
image.png 23Кб, 521x328
521x328
Нужно переопределить присвоение атрибута, но всё равно присваивать его. Вопрос: как не уйти в рекурсию? Я сделал через обращение к методу суперкласса object, но помню что был другой вариант.
Аноним 06/06/21 Вск 11:22:37 205887799
23.png 539Кб, 406x600
406x600
Решал задачки и назрел концептуальный вопрос по проектированию классов. В принципе любой из перечисленных способов будет работать,но с точки зрения ООП , какой из подходов верный?


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

Вариант 1: Экземпляр класса - база. В класс отдаём весь массив паспортов.
Вариант 2: Экземпляр класса - парсер. Создаётся экземляр класса, и где-нибудь в цыкле вызывается метод класса для каждого паспорта.
Вариант 3: Экземпляр класса - паспорт. Для каждого паспорт из базы создаём свой экзепляр.

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


Что думаете аноны?
Аноним 06/06/21 Вск 11:22:59 2058878100
>>2058849
if key == "a":
___self.__dict__["a"] = value
Аноним 06/06/21 Вск 11:35:09 2058885101
Аноним 06/06/21 Вск 12:02:31 2058910102
Единственный способ - это учить по книгам?
Аноним 06/06/21 Вск 12:19:11 2058931103
>>2058910
Да
Минимум 10 книг надо
Аноним 06/06/21 Вск 12:41:27 2058951104
>>2058910
Да хоть по частушкам.
Пиздец вы безинициативные. Раньше босые десять километров через лес ходили в -40, чтобы почитать в сельской библиотеке лутца, а у вас мильйон курсов, книг, статей и презентаций, учи не хочу.
Аноним 06/06/21 Вск 13:45:32 2059018105
изображение.png 191Кб, 400x386
400x386
>>2058910
Если ты няшний можешь найти сеньёра в годах
Аноним 06/06/21 Вск 17:17:35 2059417106
>>2058910
Выбираешь конкретную задачу = > Идешь по курсам = > Полируешь 1000-страничными книгами и документацией
Аноним 06/06/21 Вск 17:50:40 2059491107
Есть у кого "лёгкий способ выучить python 3 ещё глубже"?
Аноним 06/06/21 Вск 18:04:44 2059524108
>>2059491
Это зед шоу? Вроде же говорят, что хуйня, ещё и переводное.
Аноним 06/06/21 Вск 18:16:03 2059544109
>>2058910
> Единственный способ - это учить по книгам?
Какие же вкатыши ебланоиды, я просто охуеваю от вас. Раньше не было вообще нихуя. НИ ХУ Я не было, сука. У тебя есть возможность не поднимая жопы написать: "как мне, ебаному дауну, выучить питон?" в любом поисковике интернета. И тебе выдадут гайды, курсы, бесплатные видосы, бесплатные сканы книг. СУКА ТЫ ЛЕНИВЫЙ ХУИЛА ПИЗДУЙ УЧИ УЧИ СУКА УЧИ
Аноним 06/06/21 Вск 18:17:39 2059546110
>>2058951
Вот этого двачую. Сейчас Войтивайти может буквально даже умственно отсталый ребенок который не умеет говорить, а вкатыши на харкаче ноют, что им, сука, КНИЖКИ НУЖНО ЧИТАТЬ.
Аноним 06/06/21 Вск 18:20:00 2059550111
>>2059524
>Это зед шоу?
Да.
>Вроде же говорят, что хуйня
Ну, я предпочитаю заценить сам. Скачал уже основную книгу, пока не заценил, но издание "ещё глубже" хотелось бы иметь просто на пк на случай если какая-то хуйня из разряда чебурнета случится, лол.
>ещё и переводное
В каком плане переводное?
Аноним 06/06/21 Вск 18:23:58 2059562112
> Напишите свой собственный генератор псевдослучайных чисел, если число выходит чётным, выведите "NUM", в остальном случае выведите число

Я не понимаю нахуя нужно такое решать в моей ебучей шараге + у меня ничего не получается. Что делать, анон?
Аноним 06/06/21 Вск 18:29:41 2059572113
Аноним 06/06/21 Вск 18:30:53 2059574114
>>2059572
Какое счастье, что мой провайдер забанил это говно.
Аноним 06/06/21 Вск 18:37:08 2059591115
>>2059574
> вкатыш не способен обойти пук ркн
Охуенные нынче погромеры
Аноним 06/06/21 Вск 18:42:19 2059612116
>>2059591
Могу. Но зачем мне обходить блок РКН ради сайта со статьями нытиков?
Аноним 06/06/21 Вск 19:39:30 2059717117
>>2059612
> обходить блок РКН
Потом ещё придётся мотоциклы на картинках выискивать, чтобы ПРОЧИТАТЬ это нытьё. Не написать что-то, а тупо прочитать. Совсем ебанулись они.
Аноним 06/06/21 Вск 19:43:56 2059725118
Аноним 06/06/21 Вск 19:57:09 2059743119
>>2059725
С первого взгляда смотрится как нормальная бизнес-модель. В тебя вроде как инвестируют, заинтересованы в твоём успехе, а получают процент только в том случае, если ты устроишься. Вроде как очень честно и адекватно.

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

Ты тупо читаешь книжки, которые тебе рекомендуют. Их затраты невелики. Пролетишь - ну и хуй с тобой. Если же устроишься после их курсов, или после того, как после их обучения будешь год учиться сам, или пройдёшь платные курсы - ты будешь им платить деньги.

В общем реально для них самая выгодная модель не в том, чтобы тебя учить, а в том, чтобы набрать много лохов, и не вкладывая толком ничего в них, стричь тех, кто всё-таки сможет сам устроиться.
Аноним 06/06/21 Вск 20:00:06 2059748120
>>2059743
Хотя нет, там наебательство ещё проще и такое более кондовое. В общем богата Россия на разводилово.
Аноним 06/06/21 Вск 20:01:10 2059752121
Аноним 07/06/21 Пнд 08:33:46 2060169122
Сап питонач
Кто-то встречал библиотеку нормальную для работы с инстограмом? Раньше был instabot но он вроде загнулся...
Или вы такими детскими хуйнями не занимаетесь и все тут большие дяди с интернет комерцией?
Аноним 07/06/21 Пнд 10:36:03 2060219123
>>2060169
так инстаграмм и есть интернет коммерция же, причем анальная
Аноним 07/06/21 Пнд 11:34:18 2060276124
>>2060219
получается я по адресу стучусь к вам ?
Аноним 07/06/21 Пнд 11:59:57 2060311125
>>2060276
ну тут уже мои полномочия все
Аноним 07/06/21 Пнд 12:07:25 2060323126
>>2060311
Понятно, спасибо тогда и на этом :)
Аноним 07/06/21 Пнд 12:35:26 2060374127
Есть ли сайт, где можно вбить библиотеки и их версии чтобы посмотреть, будут ли они работать с питоном нужной версии, и еще лучше, если будет показывать проблемы с зависимостями библиотек между собой.
Аноним 07/06/21 Пнд 13:28:34 2060469128
>>2060374
pypi.org. Вообще, pip сам ищет пакет подходящий для твоей версии питона по тегам(вот таким https://www.python.org/dev/peps/pep-0425/#details ), и если создатель пакета все указал правильно, то проблем быть не должно.
По разрешению конфликтов, значит, команда pip check должна находить конфликты, но разгребать самому придется. Автоматически разрешать конфликты должен уметь Pipenv, вроде еще Poetry, и что-то еще было, не помню. При том каждый из этих пакетных менеджеров (или как они там называются) использует свой файл зависимостей по типу requirments.txt, только другой. Я лично ничего из этого не использую, ничего конкретнее не подскажу.
Аноним 07/06/21 Пнд 16:01:13 2060699129
Сука, не могу решить эту задачу:
Write a function named x that takes a string as its only parameter. The function should cast its input parameter to an integer and add 3 to it. Don't forget to return the result.

For example, calling x("0") should return 3 and calling x("123") should return 126.

Hint: Use the int function to cast a string to an integer. For example:

int("123") == 123
You can store the result of the function call into a variable if you prefer:

result = int(string)
Then add 3 to the result before returning it.
Аноним 07/06/21 Пнд 16:03:30 2060703130
>>2060699
Что там решать, они уже сами решили.
Аноним 07/06/21 Пнд 16:05:51 2060707131
>>2060699
Ребенку с домашкой помогаешь?
Аноним 07/06/21 Пнд 16:07:26 2060712132
>>2060707
Ребенок - это я. Долгое время справлялся, но тут уперся в стену. И решений готовых нет, потому что сайт не очень популярный.
Аноним 07/06/21 Пнд 16:08:00 2060713133
Аноним 07/06/21 Пнд 16:11:18 2060718134
Аноним 07/06/21 Пнд 16:12:47 2060721135
>>2060718
Спасибо. Посмотрю потом что там за задачки. Эта уж слишком простая.
Аноним 07/06/21 Пнд 16:16:51 2060722136
>>2060699
def x(num):
add = int(num)
add += 3
return(add)
Аноним 07/06/21 Пнд 16:22:14 2060728137
>>2060722
Спасибо, хоть один нормальный человек.
Аноним 07/06/21 Пнд 16:42:20 2060743138
Без названия (2).jpg 57Кб, 585x680
585x680
Парни, как в Пистоне можно открыть несколько файлов с текстом сразу и, скажем, единым текстом парсить их?

пик_рандом
Аноним 07/06/21 Пнд 17:00:59 2060762139
Слушайте, а есть для питона такая прога, как Devel studio для PHP?
Аноним 07/06/21 Пнд 17:23:03 2060790140
>>2060743
Если я правильно понял, то просто заводишь одну переменную и по открытии каждого файла в нее добавляешь контент, в чем проблема?
Аноним 08/06/21 Втр 10:03:57 2061388141
kompik.png 30Кб, 1003x461
1003x461
Извиняюсь за тупой вопрос, но что я должен написать в функции чтобы появился метод show?
Аноним 08/06/21 Втр 10:05:33 2061392142
>>2060762
Какая такая? Что бы интерфейсы клепать?
Аноним 08/06/21 Втр 10:09:29 2061396143
>>2061388
что написать в методе чтобы появился атрибут

фикс
Аноним 08/06/21 Втр 10:18:16 2061405144
Аноним 08/06/21 Втр 10:18:39 2061407145
>>2061388
По смыслу всё ок, это ты где-то обосрался.
Судя по тому, что это ipython и отдельный файл, скорее всего ты импортировал много раз, но это не работает, надо делать importlib.reload.
Аноним 08/06/21 Втр 10:40:01 2061419146
Аноним 08/06/21 Втр 11:05:49 2061435147
image.png 35Кб, 959x286
959x286
Смотрите, что делаю.
Беру webm, конвертирую через ffmpeg в mp4, сохраняю во временный файл, отправляю этот файл в телегу, удаляю файл.
Есть ощущение, что как-то через жопу все. Вынужден создавать файл с параметром delete=False, потому что иначе будет ошибка при попытке открыть его в строке bot.send_... А так как delete=False, мне приходится после этих процедур удалять файл вручную через os.remove.
Можно как-нибудь красивее? В идеале вообще не создавать файл явно, но вроде как ffmpeg так не может делать.
Аноним 08/06/21 Втр 11:13:17 2061450148
>>2061435
Запускаешь через subprocess с пайпом и всасываешь в io.BytesIO
Аноним 08/06/21 Втр 12:50:01 2061580149
изображение.png 66Кб, 320x247
320x247
Здаров, питоняч. Имею файловую структуру проекта пик 1.
В папке с тестами в тесте test_cl_arguments пишу
from rss_reader.reader import main
Мне пишет NoModuleNamed rss_reader.reader
Сижу, не панятна, хули надо. Так же многие модули подключал и всё норм было. Подозреваю это потому что я ничего не прописывал в __init__.py
Аноним 08/06/21 Втр 12:52:11 2061581150
>>2061580
upd pycharm сам всё предложил
я пишу from rss_reader он сам отлично видит все нужные мне варианты. Но когда тест запускаю залупа вылазит
Аноним 08/06/21 Втр 13:00:52 2061588151
>>2061580
всё, сам разобрался, всем добра
Аноним 08/06/21 Втр 13:01:39 2061589152
>>2061580
При запуске модули ищутся в sys.path, текущая директория тоже там. В случае запуска из tests оно его не найдет, очевидно.
Аноним 08/06/21 Втр 13:47:32 2061667153
Аноним 08/06/21 Втр 14:37:17 2061713154
Сап, дорогие друзья
Короче говоря, учусь на 3ем курсе физмата на программёра с уклоном в матан, дали курсач, по незнанке сказал "дайте что-нибудь посчитать" (с надеждой на то, что дадут какую-то задачку, а не программирование), В ИТОГЕ
Тема "Аппроксимация кривых монотонными и выпуклыми кубическими сплайнами". Более-менее разобрался с темой, но реализовать кодом не могу. С монотонными кубическими сплайнами всё элементарно, это есть в scipy, тоси-боси и интерполянт найден, но с ВЫПУКЛЫМИ КУБИЧЕСКИМИ сплайнами дела обстоят более категорично...
В инете по теме ничего не нашёл, в библиотеке alglib даже намёков нет на эти выпуклости, помогите кто чем может
На вход: Координаты (в любом количестве, можно просто сразу массив прописать, чтобы ручками не вводить)
На выходе: Интерполянт (т.е. функция)
Аноним 08/06/21 Втр 16:19:18 2061845155
51864604-alekse[...].jpg 14Кб, 200x315
200x315
>>2061713
> Аппроксимация кривых монотонными и выпуклыми кубическими сплайнами

Сука лол. Ты рофл за чистую монету принял имхо.
Аноним 08/06/21 Втр 16:23:55 2061856156
Аноним 08/06/21 Втр 16:54:58 2061903157
>>2061713
Студенческие работы лучше без всяких scipy хуярить. А на голом языке самопис хуячить. Я так считаю!
Аноним 08/06/21 Втр 17:03:40 2061906158
Ш
Аноним 08/06/21 Втр 17:05:17 2061910159
Аноним 08/06/21 Втр 17:49:52 2061966160
>>2061388
У тебя на самом деле там в каждой строчке шедевр.

Но для начала сделай
def show(self)
и
show1 = ShowWorker().show()
Аноним 08/06/21 Втр 20:39:31 2062283161
2021-06-0820-35[...].png 125Кб, 1125x1332
1125x1332
Петухонисты, объясните, зачем вам 3 метода для создания обычной private переменной?
Аноним 08/06/21 Втр 21:18:55 2062332162
>>2062283
По моему, никаких private переменных в Питоне нет, а carA.__model прекрасно доступен как carA._Car__model. Хуйня на экране - синтаксический сахар, благодаря которому можно красивенько атрибут model изменять не через вызов метода carA.setCarModel(model), а через присваивание значения свойству model напрямую, да поправят меня знающие люди.
Аноним 08/06/21 Втр 21:38:30 2062360163
>>2062283
Что ты называешь приватной переменной и зачем они, по-твоему, нужны?

По определению приватная переменная не должна быть доступна со стороны, в том числе на чтение. В скрине у тебя "свойства", а не приватные переменные. Приватная переменная это __model.

Она именно приватная, ты не можешь снаружи достучаться к ней как к __model, равно как и в классе-наследнике ты её не перепишешь.

Аноним 08/06/21 Втр 21:45:04 2062366164
>>2062283
Плохой учебник, неграмотный. Архитектура неграмотная.

Там уничтожение данных, ты перезаписываешь год. Более грамотный подход в том, чтобы хранить оригинальный год внутри, но для пользователя сделать геттер, который будет лимитировать показаный год в соответствии с линией партии.
Аноним 08/06/21 Втр 22:14:31 2062410165
>>2062366
>лимитировать показаный год в соответствии с линией партии
Кошка жена?
Аноним 08/06/21 Втр 22:14:45 2062411166
>>2062332
Даже если сделать настоящие приватные атрибуты, то никто не отменял setattr и прочие патчи благодаря чему в питоне легко замокать сетевые вызовы для тестов например. Главное правильно настроить линтеры в репозитории чтобы запретить откровенно говнокодить и нарушать принятые на проекте правила.
Аноним 08/06/21 Втр 23:00:54 2062453167
Сап. Появилась задача переписать чатбот для групп в ВК с ноды на питон. Вопрос - какую либу под это дело использовать? В питоне не шарю, использую его чисто для аналитики и автоматизаций. Судя по быстром гуглежу, пацаны советуют использовать асинхронные библиотеки, но какую выбрать? С документацией, если что, разобраться смогу.

Алсо где/как это все хостить?
Аноним 09/06/21 Срд 00:05:18 2062515168
>>2061713
напиши без библиотек.
есть формула как это говно находить?
ну так подставь ее в питон и пидорни.
по сути тебе дали легкую тему, тебе не нужно же пилить это например в виде сайта или программы с графической оболочкой?
Аноним 09/06/21 Срд 00:13:11 2062529169
image.png 24Кб, 542x270
542x270
>>2061450
Спасибо за ответ, но я поебался и ничего не вышло.
Аноним 09/06/21 Срд 00:15:17 2062530170
>>2062453
>Алсо где/как это все хостить?
А как это написано и работает сейчас, в версии на noje.js? Питон в этом плане не отличается от ноды. Как хостишь ноду, примерно так можешь хостить и питон.

Я про чатботы конкретно ничего сказать не могу, не понимаю в них совсем.
Аноним 09/06/21 Срд 00:21:23 2062537171
>>2062530
>А как это написано и работает сейчас, в версии на noje.js?
Как полный пиздец, за который я оторвал руки предыдущему горе-разработчику. Бот буквально хостится на домашнем компе для аудитории в лям пользователей,
Аноним 09/06/21 Срд 00:26:30 2062544172
>>2062529
Блин, я тупой, в том же посте на stackoverflow написано, что нужно добавить ffmpeg флаг "-movflags empty_moov" и все будет хорошо. Еще раз спасибо, работает.
Аноним 09/06/21 Срд 00:29:14 2062547173
Аноним 09/06/21 Срд 00:46:03 2062563174
>>2062537
Писать ботов - это одна тема, хостинг - это другая тема.

Можно хостить на сервере примерно так же, как ты хостишь на компе. Просто запускаешь задание в фоне с перенаправлением вывода куда-нибудь и забываешь. Это колхоз, но я сам так иногда делаю. Аптайм сервера может быть месяцы и годы легко. Что нода, что питон работают надёжно.

Более правильно поднимать process manager'ы, к которым будет веб-интерфейс управления, которые смогут авторестарт делать и т.п.

Или, альтернативно можно поднимать через докер и использовать опцию --restart=always

Через докер в целом более правильно разрабатывать.

А с ботом, надо на логику самого бота смотреть, боюсь что переписать скорее всего означает "написать заново". Разве что внятное ТЗ есть, понятно, как этот бот должен работать. Но в ботов я не умею.
Аноним 09/06/21 Срд 10:38:10 2062758175
Как в питоне узнать текущее потребление ОЗУ скриптом?
Аноним 09/06/21 Срд 11:57:10 2062813176
>>2060743
filenames=['file1.txt','file2.txt']
text=''

for filename in filenames:
__with open(filename) as f:
____text+=f.read()

parsing_all(text)
Аноним 09/06/21 Срд 17:03:39 2063238177
>>2060169
Я пишу асинхронные многопоточные проги.
Инстаботов в рот ебал.
Аноним 09/06/21 Срд 17:51:36 2063308178
Какой иде лучше для питона ? Pycharm неудбоен, а visual studiо слишком громоздкий.
Аноним 09/06/21 Срд 17:52:36 2063309179
>>2063308
Никакой. Консоль. Но вообще ты зажравшийся уебок.
Аноним 09/06/21 Срд 17:57:52 2063326180
Аноним 09/06/21 Срд 18:00:21 2063334181
>>2063309
> Но вообще ты зажравшийся уебок.
Есть такое, да.
В консоле дебажить неудобно. Ну или я тупой.
Аноним 09/06/21 Срд 18:44:27 2063416182
>>2063308
>а visual studiо слишком громоздкий.
В каком смысле?

Я пользуюсь или vim, или VS, когда как.
Аноним 09/06/21 Срд 18:45:02 2063418183
Не понимаю как практиковаться и что писать чтобы был опыт а не только теория. Вот знаю я кое что на базовом-среднем уровнем про питон. А что делать то теперь с этими знаниями?
Аноним 09/06/21 Срд 18:46:14 2063421184
>>2063418
Упражняшки ебош с утра до вечера. И сделай какой-нибудь проект. Полностью.
Аноним 09/06/21 Срд 18:50:03 2063431185
>>2063418
>Вот знаю я кое что на базовом-среднем уровнем про питон
Скорее всего это на предбазовом или начально-базовом.

Язык программирования это лишь часть программирования. Попробуй что-нибудь сделать практичное. Это смотря какое направление ты смотрел. Там что-нибудь вроде сайта, скраппера данных из сайтов, игрушки, распознавалки картинок (если ты в CV/AI полез), и т.п.

Если просто учишь язык-программирование, то решай задачи на литкоде.
Аноним 09/06/21 Срд 19:32:50 2063532186
Кроме pycharm и vscode вообще есть годные ide?
Аноним 09/06/21 Срд 19:33:36 2063534187
>>2063532
1. Хуй сосешь?
2. Пидарас?
3. Линуксоид?
Аноним 09/06/21 Срд 19:34:46 2063536188
>>2063532
Почему всем норм, а тебе нет?
Аноним 09/06/21 Срд 20:32:45 2063621189
>>2063534
> 1. Хуй сосешь?
да
> 2. Пидарас?
нет
> 3. Линуксоид?
нет
>>2063536
Да мне тоже норм, просто хотел еще что нибудь попробовать. Да и интересно почему обсуждение других иде вообще нет

Аноним 09/06/21 Срд 20:46:00 2063634190
>>2063621
>почему обсуждение других иде вообще нет
Потому что мужики код пишут, а не на свистоперделки дрочат.
Аноним 09/06/21 Срд 20:48:36 2063635191
Аноним 09/06/21 Срд 20:59:13 2063644192
19345011.jpg 117Кб, 792x595
792x595
Аноним 09/06/21 Срд 21:05:33 2063646193
Аноним 09/06/21 Срд 21:07:57 2063649194
Я считаю новичку нужен юпитер ноутбук. Он помогает "раскладывать все по полочкам".
Аноним 09/06/21 Срд 21:09:22 2063652195
>>2063649
Там внутри ipython, его достаточно. Но это репл, у него совсем другие задачи.
Аноним 09/06/21 Срд 21:17:43 2063659196
>>2063649
?
Где там дебагер?
Как на модули код разбивать?

нахуй это говно трогать вообще, только bad practises прививает
Аноним 09/06/21 Срд 21:19:54 2063662197
А через что у вас код расшаривают? В шапке посмотрел все говно какое-то.
Аноним 09/06/21 Срд 21:22:15 2063665198
>>2063659
Я же про новичков. Охуенная тема наглядно решать задачи.
Аноним 09/06/21 Срд 21:27:29 2063669199
Аноним 09/06/21 Срд 23:29:27 2063778200
Посоветуйте проект на джанго который может показать мои навыки для позиции Джуниора
Аноним 09/06/21 Срд 23:57:56 2063814201
>>2063778
Заебень интернет магаз.
Аноним 10/06/21 Чтв 00:12:02 2063829202
изображение.png 142Кб, 1843x1200
1843x1200
Чего этот ваш питухон хочет?
Аноним 10/06/21 Чтв 00:13:42 2063830203
>>2063829
1. Почему работаешь с винды?
2. Почему ты бля работаешь из диры TEMP?
3. Гугли код ошибки. Чисто виндосовская херня какая-то
Аноним 10/06/21 Чтв 00:15:21 2063831204
>>2063830
Работает с винды а для установки pip-а юзает терминал и какие-то идиотские команды
ебанутый
Аноним 10/06/21 Чтв 00:17:10 2063832205
>>2063829
Нахуй ты это делаешь, у тебя уже есть пип искаропки.
Аноним 10/06/21 Чтв 00:25:40 2063840206
изображение.png 198Кб, 1903x1560
1903x1560
Аноним 10/06/21 Чтв 00:30:07 2063842207
>>2063840
Питон ты тоже как-то через жопу ставил?
Аноним 10/06/21 Чтв 00:35:02 2063847208
>>2063842
Хз. Инсталляшка с оффсайта.
Аноним 10/06/21 Чтв 00:36:49 2063850209
Аноним 10/06/21 Чтв 00:41:03 2063851210
изображение.png 10Кб, 1900x60
1900x60
Аноним 10/06/21 Чтв 00:58:29 2063865211
>>2063851
В python39\scripts должен быть
Аноним 10/06/21 Чтв 01:11:25 2063875212
изображение.png 8Кб, 751x314
751x314
>>2063865
Кто? pip.exe или .py .pyc? Не разбираюсь в питухоне просто.
Папка пустая
Аноним 10/06/21 Чтв 01:18:12 2063878213
изображение.png 15Кб, 913x161
913x161
Аноним 10/06/21 Чтв 01:22:57 2063883214
>>2063878
Удаляй нахуй и ставь ещё раз, только смотри там всякие опции теперь.
Аноним 10/06/21 Чтв 01:26:45 2063884215
>>2063830
В винде пип как-то сильно проще ставится. Нет вот таких вот проблем.

Виндовый комп сейчас неохота включать.

У тебя какая версия питона?
набери python --version
и потом
python -m pip
Аноним 10/06/21 Чтв 01:28:34 2063885216
>>2063878
А, у тебя 3.9
По идее, там pip идёт в комплекте.
Ты можешь просто с ним работать как python -m pip. Так грамотнее всего работать.
Аноним 10/06/21 Чтв 01:49:07 2063893217
изображение.png 7Кб, 840x387
840x387
изображение.png 40Кб, 1897x372
1897x372
изображение.png 49Кб, 1901x495
1901x495
Аноним 10/06/21 Чтв 02:30:40 2063897218
Снимок экрана ([...].png 521Кб, 1366x768
1366x768
Снимок экрана ([...].png 520Кб, 1366x768
1366x768
Снимок экрана ([...].png 523Кб, 1366x768
1366x768
Снимок экрана ([...].png 330Кб, 1366x768
1366x768
>>2063893
не понимаю, что у тебя за проблемы. Включил комп с виндой. Снёс питон, перезапустил, скачал последний, ставлю
Выбираю custom install, хотя это не обязательно. Выбираю для всех пользователей и выбираю добавить в PATH, по-умолчанию этого нет. pip включён по-умолчанию, tcl/tk тоже включены по умолчанию, но проверь. Сколько-то времени ставится, предкомпиляция стандартных библиотек и всё такое, это лучше сделать.

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

Короче заново поставь вот как я описал.
Аноним 10/06/21 Чтв 07:01:41 2063926219
>>2063238
твои многопоточные ассинхронные проги связаны с инстой? Если да, то какие хэдеры и к каким ЕП обращаются? Если нет, то спасибо за то что уделили нам время :)
Аноним 10/06/21 Чтв 09:25:50 2063957220
>>2063926
Ой, да нахуй кому твоя инста уперлась.
Сборище гламурных шлюх.
Аноним 10/06/21 Чтв 11:53:38 2064059221
>>2063957
Там и петровичи сидят ваще то...
Так или иначе что то что другое отличная клиентская аудитория
Аноним 10/06/21 Чтв 12:02:24 2064077222
image.png 724Кб, 786x438
786x438
>>2063957
Ты из 2010 вылупился что ли?
Аноним 10/06/21 Чтв 14:16:25 2064221223
изображение.png 79Кб, 666x410
666x410
изображение.png 79Кб, 666x410
666x410
изображение.png 80Кб, 666x410
666x410
изображение.png 13Кб, 852x457
852x457
>>2063897
Не могу воспроизвести
Аноним 10/06/21 Чтв 14:18:42 2064231224
>>2064221
Это знак, что тебе не нужно вкатываться в бидон.
Аноним 10/06/21 Чтв 14:23:44 2064241225
Аноним 10/06/21 Чтв 14:41:41 2064270226
изображение.png 35Кб, 570x292
570x292
>>2064231
Вкатываться мне и не нужно. Я хотел некоторый софт потрогать. Похоже придётся на сервере, но рабочие файлы туда-сюда гонять я рехнусь...
Аноним 10/06/21 Чтв 14:43:30 2064274227
>>2064270
Ну попробуй какую-то анаконду тогда, хули.
Аноним 10/06/21 Чтв 14:45:17 2064276228
>>2062411
Кокой хитрый халявщик
Аноним 10/06/21 Чтв 22:47:29 2064735229
Как в вашем питухоне создать список из ебаных массивов? Когда я гуглю мне всякая хуйня вылезает типо x = [[1,2,3], [1,2,3]], видимо питухонщики не различают список и статический массив или лезет просто, как блять создать список из массива, ну ахуеть блять, вы мне скажите еще как переменную x = 1 объявить, когда я хочу вычислить определитель матрицы.
Аноним 10/06/21 Чтв 23:05:52 2064756230
>>2064735
collections.deque - список
[] - массив

Хуль тебе надо?
(нахуя тебе список-то?)
Аноним 10/06/21 Чтв 23:08:31 2064761231
>>2064756
>Deprecated since version 3.3, will be removed in version 3.10: Moved Collections Abstract Base Classes to the collections.abc module. For backwards compatibility, they continue to be visible in this module through Python 3.9.
Аноним 10/06/21 Чтв 23:09:52 2064762232
>>2064761
Это не абстрактный класс. Ты что-то не то смотришь
Аноним 10/06/21 Чтв 23:11:24 2064764233
Аноним 10/06/21 Чтв 23:12:42 2064765234
>>2064735
>вычислить определитель матрицы
Это тебе в numpy.
Аноним 10/06/21 Чтв 23:14:30 2064768235
image.png 3Кб, 334x198
334x198
Аноним 10/06/21 Чтв 23:16:08 2064771236
>>2064768
Значит оно.
Забавно что я не успел дойти до них, а теперь будет не нужно. Лол.
Аноним 10/06/21 Чтв 23:17:25 2064772237
>>2064771
Ты так и не объяснил, нахера тебе списки
Единственное годное применение для них это двусторонние очереди, все остальное скорее всего байтоебство и нинужно
Аноним 10/06/21 Чтв 23:18:44 2064774238
Аноним 10/06/21 Чтв 23:22:05 2064782239
>>2064761 лишь значит, что вынесли абстрактные классы в отдельный модуль, сами коллекции никто не трогал. А то не первый раз вижу, что подобные замечания воспрнимают неправильно.
Аноним 11/06/21 Птн 01:17:47 2064907240
>>2064735
>Как в вашем питухоне
Рано тебе ещё в питон. Вот как ты в Си двумерный массивов создаёшь, точнее не двумерный массив, а массив указателей на массивы?
Вот и в питоне примерно так же создавай.
Аноним 11/06/21 Птн 01:23:09 2064909241
>>2064772
>Ты так и не объяснил, нахера тебе списки
Мне показалось, что ему нужно создание двумерных массивов, то есть двумерных матриц.

Что тривиально, но реально если в матрицы лезть, то надо сразу разбираться с numpy. Ну или/и в какие-нибудь специфичные модули вроде array.
Аноним 11/06/21 Птн 01:48:07 2064930242
image.png 4Кб, 383x59
383x59
Это pandas DataFrame, задача добавить столбец, который является логарифмом другого.
Почему никто не делает так, как делаю я, а все делают через numpy?
Аноним 11/06/21 Птн 06:16:01 2064987243
Бамп
Аноним 11/06/21 Птн 06:40:26 2064997244
как господь.jpg 9Кб, 190x213
190x213
Аноним 11/06/21 Птн 14:51:36 2065359245
>>2064930
Так быстрее: https://pastebin.com/hQXiDBRi

Можно добавить дежурную фразу о том, что внутренний движок numpy, написанный на C, оптимизирован под векторизованные операции. pandas.Series.map в данном случае, видимо, сводится к вызову обычного map для numpy.ndarray.

https://github.com/pandas-dev/pandas/blob/05552d354a430f17a45b5fda8a1fd417f4c60c2e/pandas/core/base.py#L848
Аноним 11/06/21 Птн 15:33:57 2065433246
>>2065359
Спасибо за ответ, ты очень крут!
Аноним 11/06/21 Птн 19:47:19 2065739247
Аноним 11/06/21 Птн 19:54:39 2065748248
>>2065739
Ну игрульки какие-то, чтобы заинтересовать жеребенка и научить каким-то базовым вещам. Вряд ли там чего толкового научат, чего нет в любой нубской книге или курсе.
Аноним 11/06/21 Птн 19:57:02 2065751249
>>2065748
Куда интереснее, чем ковыряться в нубской книге, между прочим.
Аноним 11/06/21 Птн 19:58:29 2065752250
>>2065751
фор хум хау, как грится.
Аноним 11/06/21 Птн 20:03:31 2065758251
>>2065752
Тоже верно. Но если ты не привык учиться по книгам, то пожалуй игрушка более подходящий вариант.
Аноним 11/06/21 Птн 20:53:27 2065787252
Анончики, запускаете Джангу в Юпитере? Какие подводные?
Аноним 11/06/21 Птн 22:01:34 2065814253
Установил поддержку gpu на своем компьютере, увеличения производительности нет. Хотя у меня стоит дерьмовая видюха и нормальный проц, но думал все равно разница минимум в два раза будет.
Аноним 11/06/21 Птн 22:01:58 2065815254
Аноним 11/06/21 Птн 22:36:08 2065844255
Аноним 12/06/21 Суб 01:40:08 2065990256
Как после питона изучать джаваскрикт и реакт, когда там такой пиздец с синтаксисом?
Аноним 12/06/21 Суб 01:43:22 2065992257
Аноним 12/06/21 Суб 01:48:06 2065994258
Аноним 12/06/21 Суб 09:41:26 2066067259
>>2065990
Кстати, частенько вижу как хаят использование на сайтах джаваскрипта, особенно на других бордах. Что в нем плохого? Думал свой сайт пилить, но теперь вот думаю стоит ли пытаться избежать использование джаваскрипта или всё это какие-то надуманные бредни анонов с мелкоборд?
Аноним 12/06/21 Суб 10:13:38 2066075260
>>2066067
да похуй что ты используешь, главное чтобы это хорошо работало
Объекты в Python Аноним 12/06/21 Суб 12:40:14 2066120261
изображение.png 9Кб, 739x225
739x225
изображение.png 14Кб, 727x320
727x320
изображение.png 30Кб, 940x590
940x590
Сап, аноны.
Я вот решил потестировать списки в Python и нашёл забавную вещь, объяснение для которой я пока что не нахожу

Я знаю, что в питоне нет переменных, как таковых, у них у всех ссылки на объекты.

Но вот этот прикол меня убил
В Python есть разница между
A += D and A = A + D


Самое забавное, что с кортежами всё ок.

Аноны, поясните
Аноним 12/06/21 Суб 12:57:39 2066130262
>>2066120
В первом случае ты изменяешь список, во втором создаешь новый и присваиваешь его A.
Тупли иммутабельны, поэтому в случае += тоже неявно создается новая, хотя это не слишком очевидно, да.
Аноним 12/06/21 Суб 13:18:21 2066140263
Аноним 12/06/21 Суб 13:33:03 2066153264
Аноним 12/06/21 Суб 16:45:46 2066302265
Увидел вот такую конструкцию:

z+=all([n in m for m in s])


Не пойму как это работает. Нельзя сделать z+=True, а в вышеописанном варианте плюсует. Может кто-нибудь объяснить, почему так?
Аноним 12/06/21 Суб 16:51:07 2066307266
>>2058754
>По идее, если ты запускаешь контейнер с такими настройками, и после запуска пишешь в эти каталоги данные, то они должны сохраняться на хосте.
в том то и дело, что ничего не сохраняется. В моем случае скрипт скачивает картинки и сохраняет их в папку, но в папке на хосте они не появляются
Аноним 12/06/21 Суб 16:51:38 2066308267
>>2066302
>Нельзя сделать z+=True
Можно. bool наследуется от int, так что он имеет свойства числа.
Аноним 12/06/21 Суб 18:15:17 2066379268
>>2065739
Попробовал этот сайт вчера и сегодня.
Почти прошёл второй остров на этом сайте и поделюсь впечатлениями: играть довольно интересно, но большинство квестов тебе комментариями прямо говорят, что делать. По сути дают не только готовый алгоритм программы - половина программы зачастую уже сделана.
Для детей и желающих попинать программинг чтобы понять каков процесс программирования вообще - сойдёт.
В целом, я думаю, что это меня подтолкнуло к полноценному изучению в целом. Сам до этого кроме Hello world ничего не писал.
Обязательно допройду её до конца и если будет что-то добавить к этому посту - напишу.
Аноним 12/06/21 Суб 18:28:46 2066384269
>>2066302
>z+=True
Можно, потому что True это реально просто 1, но очень грязно.

И ещё, если используется all, то не нужно сначала получать список. Вместо all([...]) лучше написать просто all(...)

Аноним 12/06/21 Суб 18:34:31 2066392270
>>2066379
p.s. говорю о бесплатной версии, подписка стоит 4 бакса, открывает дополнительные уровни и снарягу(как я понимаю нужную для этих уровней).
Где-то половина уровней только по подписке. Вероятно, там и есть нормальная практика где за тебя не строят алгоритмы и прочее.
Аноним 12/06/21 Суб 18:44:17 2066403271
>>2066392
Мне из игровых хуиток понравилось только это https://vim-adventures.com/
Можно реально задрочить миллион этих моушенов и прочих действий. Когда-то прикуплю и возьмусь за это дело, лол.
Аноним 12/06/21 Суб 18:50:36 2066414272
>>2066403
>Мне из игровых хуиток понравилось только это https://vim-adventures.com/
Открыл сайт, запустил уровень и так и не понял что от меня там требуется. Какую клавишу не нажму - ничего не происходит.
Алсо, разве есть другие более-менее приемлимые игровые хуитки?
Аноним 12/06/21 Суб 18:51:39 2066415273
>>2066414
hjkl для движения, а дальше будут открываться новые фичи.
Аноним 12/06/21 Суб 18:57:54 2066422274
>>2066415
Не работает. Вероятно у меня браузер устаревший, как-нибудь попробую в свежей версии попозже.
Спасибо за рекомендацию.
Аноним 12/06/21 Суб 19:36:00 2066474275
Аноны, помогите, пожалуйста. Как в Джанге чекать данные которые вводит юзер? У меня тема чекать показатели и если данные превышают норму то выдавать False, если все норм то тру. Я соответственно создаю модель типа булиан, но а как именно чекать данные не ебу. Как вообще реализовать это, помогите плиз? мимо нуб
Аноним 12/06/21 Суб 20:00:31 2066490276
>>2066414
Сам не пробовал, но видел рогалик HackNet. Там на си пишут.
Аноним 12/06/21 Суб 20:03:11 2066494277
Аноним 12/06/21 Суб 20:21:40 2066501278
Аноним 12/06/21 Суб 21:36:54 2066555279
image.png 33Кб, 565x625
565x625
>>2055136 (OP)
Сап шипящие, помогите пожалуйста.
Суть проблемы такова, дана система уравнений с кучей переменных вся хуйня это не так важно, по условиям одна из переменных дана в виде
z = tan(b*x)
b и x естественно уже введены и вот при выполнении функции он ругается что я должен ввести число а не строку а как это исправить я хуй знает, может вы подскажете если что, знаний питона у меня, 15 лекций тимофея хирьянова
Аноним 12/06/21 Суб 21:41:33 2066560280
>>2066555
Пиздец, ну написано прямым текстом в чем проблема.
Аноним 12/06/21 Суб 21:42:58 2066563281
>>2066560
Я вижу что написано прямым текстом, я не понимаю как исправить и поэтому пишу сюда в поисках помощи, типа как заставить еще высчитывать тангенс когда ему уже даны переменные
Аноним 12/06/21 Суб 21:54:25 2066575282
>>2066560
ладно я сделяль, мог бы и не ругаться так
Аноним 12/06/21 Суб 23:14:39 2066639283
Обязатльно ли вообще создавать отдельные среды под каждый более менее крупный проект?
Аноним 12/06/21 Суб 23:22:08 2066644284
>>2066639
Да и под каждый пет надо, тем более, IDE за тебя все это сделает и будет менеджить
Аноним 12/06/21 Суб 23:23:08 2066646285
>>2066639
Смысл в незасирании системного питона и отслеживании зависимостей, так что надо исходить из этого.
Аноним 12/06/21 Суб 23:33:18 2066657286
изображение.png 6Кб, 508x127
508x127
Что-то не могу понять в каких случаях нужно в классе писать что-то сразу после двоеточия как на скрине, а в каких нужно __init__ использовать.
Просто до этого в уроке всегда __init__ использовали, а тут вдруг написали сразу после двоеточия
Аноним 12/06/21 Суб 23:34:34 2066659287
>>2066644
Она автоматически всё это будет делать при создании проекта и ничего самому делать не надо? Просто я через консоль создавал сейчас отдельную среду
Аноним 12/06/21 Суб 23:39:19 2066664288
изображение.png 8Кб, 500x180
500x180
>>2066657
Подождите, я затупил кажется. Тут стр вместо инит получается, да? А вообще первая функция всегда будет выполнять роль __init__ и неважно какое имя дать?
Аноним 12/06/21 Суб 23:41:15 2066667289
>>2066657
>>2066664
Почитай про ооп, нет смысла обьяснять. Хули ты вообще полез в эти ваши джанги без базового питона?
Аноним 12/06/21 Суб 23:43:02 2066670290
>>2066659
Да, можешь даже выбирать какую именно, virtualenv, pipenv, poetry (с плагином в пайчарме) и т.д.
Аноним 13/06/21 Вск 06:58:59 2066767291
>for i,n in b,b2:
Что если массивы разной длины? Обработает ли всё, нужно ли проверять if n is None?
Аноним 13/06/21 Вск 07:03:07 2066768292
>>2066767
вот как я сейчас эту возможность обрабатываю
try:
# тут мержим два массива если надо
except IndexError:
try: ret.append(i)
except IndexError: ret.append(n)
Аноним 13/06/21 Вск 07:45:20 2066773293
>>2066768
бля туплю, он же не ходит так - это просто вызывает распаковку элементов массива
Аноним 13/06/21 Вск 08:42:52 2066784294
>>2066773
я вот и не понял, что ты хотел.

вообще смотри на zip и на модуль itertools. Ты найдёшь много чего полезного на разные случаи жизни
Аноним 13/06/21 Вск 08:44:36 2066785295
Питоновская штука в курсе (линтер?) выдает вот такое:

"'Consider using enumerate instead of iterating with range and len'"

В этом коде:

n = input()
sum_of_digits = 0
for i in range(0, len(n)):
sum_of_digits += int(n)
print(sum_of_digits)

На 3 строке. Что оно от меня хочет?
Аноним 13/06/21 Вск 09:14:56 2066789296
>>2066785
Понять бы, чего хочешь ты. То есть очевидно, что ты хочешь посчитать сумму цифр в введённом числе. Интуитивно очевидно. Твой код, однако, считает значение числа умноженное на количество цифр в нём.

А enumerate так работает
for index, symbol in enumerate(n):
____print(index, n)

Но тебе это не нужно. Тебе нужно
for symbol in n:
____sum_of_digest += int(symbol)


Аноним 13/06/21 Вск 12:53:42 2066887297
Всем привет, нужно ли добавлять site_packages в .gitingnore? Вместо него если поставить requirements.txt.
Аноним 13/06/21 Вск 12:58:54 2066894298
>>2066887
Нужно добавлять venv/
И делать requirements.txt, да.
Аноним 13/06/21 Вск 15:59:26 2067028299
Помогите пожалуйста, учу питон, появился вопрос после просмотра видеоурока на ютуб. Если кто-то может/хочет помочь- отвечайте)
Аноним 13/06/21 Вск 16:05:39 2067032300
Аноны, помогите, учу питон и после просмотра видеоурока возник вопрос ответ на который найти не могу, может кто подсказать?
Аноним 13/06/21 Вск 16:08:29 2067034301
Аноним 13/06/21 Вск 16:11:37 2067037302
>>2067034
Нет, я просто не часто сюда пишу и сразу не понял что первое уже отправилось.
Если ты о том что я задал глупый вопрос то я его задал потому что больше не знаю куда обратиться
Аноним 13/06/21 Вск 16:14:54 2067040303
>>2067037
На стаковерфлоу почитай, это имелось в виду. Типа если гипотетически(нет) ты устроишься на работу связанную с питоном и возникнет такая же ситуация, то что ты начальнику скажешь? "Щас у посонов с двача спрошу, погоди пару дней" ?
Если у тебя код 1в1 с примера, ты перепробовал все вариации со стак оверфлоу и у тебя не работает то что работает у большого количества людей - тогда неси проблему, возможно ты где-то настроил что-то не так, или версия питона у тебя какая-то всратая поставилась, или банально ты list через хохлятскую i написал и тупишь, я хз.
И почему ты просто не задал вопрос сразу?
Аноним 13/06/21 Вск 16:21:30 2067050304
>>2067040
Ого ты объясняешь, уже и пробил меня походу. Спасибо, за такую конкретику но я вот только начал учить и вопрос обстоит очень просто и банально: есть видеоурок на ютуб где я не понял о чем идет речь в определенном временном промежутке и в теории я хочу кинуть тебе ссылку на видос (куда удобно) с таймкодом, после чего ты глянешь этот отрезок и ответишь мне на мой вопрос, если захочешь, разумеется
Аноним 13/06/21 Вск 16:24:02 2067054305
Nrcx44cEBhU.jpg 51Кб, 448x482
448x482
Аноним 13/06/21 Вск 16:28:55 2067057306
>>2067040
Действия происходят с 32:44 по 36:05 как у него получилось сделать так что прога ему ответила "Привет, Тимофей Федорович"?
https://www.youtube.com/watch?v=us7y0UhTq0s&ab_channel=%D0%A5%D0%B0%D1%83%D0%B4%D0%B8%D0%A5%D0%BE%E2%84%A2-%D0%9F%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%BE%D0%BC%D0%B8%D1%80%D0%B5IT%21%D0%A5%D0%B0%D1%83%D0%B4%D0%B8%D0%A5%D0%BE%E2%84%A2-%D0%9F%D1%80%D0%BE%D1%81%D1%82%D0%BE%D0%BE%D0%BC%D0%B8%D1%80%D0%B5IT%21%D0%9F%D0%BE%D0%B4%D1%82%D0%B2%D0%B5%D1%80%D0%B6%D0%B4%D0%B5%D0%BD%D0%BE
Аноним 13/06/21 Вск 16:48:42 2067068307
9cd5b63c2b69469[...].jpg 15Кб, 300x220
300x220
>>2067057
Чувак, ты точно уверен что это твое вообще?
Ну ладно
1)Он делает x(как на уроке математики, икс, типа икс равно 2, буква чтобы в нее записать что-то) = input('Как тебя зовут? '). Только его икс называется name, но я дальше буду писать x.
Инпут это такая хуитка в которую вводятся данные с клавиатуры, можно не писать в кавычки ничего, тогда просто будет моргать курсор, но он ввел Как тебя зовут? чтобы "понять" что программа спрашивает. В больших программах может быть много вопросов, поэтому он туда написал вопрос Как тебя зовут.
2)Потом он пишет print(f"Привет, {х} !")
Принт печатает что-то на экран. В данном случае используется так называемая F-строка(от английского Fuck you, leather man), если перед кавычками поставить f букву, то потом ты можешь в {} такие скобочки засовывать свой икс или любые другие буковки к которым привязаны какие-нибудь слова или циферки.
3)Он запускает это как скрипт, программа спрашивает у него тот самый input, на экране вопрос из кавычек Как тебя зовут? Он пишет Тимовей Баранович, в икс записывается строчечка текста "Тимофей Баранович" и теперь х == "Тимофей Баранович"(два равно это такая магия означающая охуенно сильно равно которое показывает что это намного равнее чем просто равно, либо равно либо ты идешь нахуй)
Следующая строчка программы это print, она печатает то что там в кавычках, Привет, ... вместо этих трех точечек она подставляет х, потому что он был в {} скобочках и находился в Fстроке, а икс у нас как мы уже запомнили равно тому что он ввел с клавиатуры, а именно "Тимофей Баранович", в итоге получается "Привет, Тимофей Баранович!"
Ну как-то так, удачного тебе путешествия в мир программирования чтоли.
покормил
Аноним 13/06/21 Вск 17:10:51 2067090308
>>2067068
Чтобы это понимать, нужно математику уровня 2-3 (для моих лет 3-5) класса пройти, тут даже как такокого программирования нет (ну под самим капотом есть, но за тебя уже всё реализовано). Если чел сидит на двоще, но не понимает этого, то я не представляю, как он смог на сам двощ, и тем более в /pt/ зайти. Это же надо на кнопочки набивать что-то с клавиатуры, а браузер это как-то магически понимает и тебя в тред телепортирует.
Аноним 13/06/21 Вск 17:16:06 2067093309
Как удалить одинаковые строки из файла?
Аноним 13/06/21 Вск 17:16:32 2067094310
>>2067090
Я попробовал, сири на запрос "Двач программирование питон тред" выдает ссылку почему-то на 99й тред кек. Так что да, это загадка, может он догадался как в конце нажимать на перекат? Работают ли вообще перекаты в архиваче?
Аноним 13/06/21 Вск 17:19:15 2067095311
>>2067093
Читаешь построчно, пишешь построчно. Заводишь сет для строчек и добавляешь в него прочитанное, а если уже есть, то пропускаешь запись.
Аноним 13/06/21 Вск 17:23:23 2067100312
>>2067093
Они же у тебя не соседние?
Берешь форлупом первую и сравниваешь ее со всеми, стрипуешь если совпадает, добавляешь i+1 и дальше погнал вторую и т.д. Все это с with open('zaloopa.huy') as file:
         
Аноним 13/06/21 Вск 17:33:07 2067110313
Аноним 13/06/21 Вск 17:38:02 2067114314
>>2067110
Неплохое решение, хотя с rstrip обосрались, он все вайтспейсы сожрет.
Аноним 13/06/21 Вск 18:02:48 2067149315
>>2067068
Хоть и с подъебами, но спасибо.
А вот " == " это то же самое что и " is "?
Аноним 13/06/21 Вск 18:09:19 2067158316
>>2067149
Смотри, просто = это присвоение, т.е. если сделаешь
х = 5
то он будет равен 5
Но если ты потом в программе сделаешь
х = 10
То икс теперь будет равен 10, ты перепишешь значение
Если же тебе надо спросить у программы РАВЕН ЛИ ИКС 10, то делаешь
x == 10
И комп тебе ответит TRUE, т.е. да, а если ты не делал х=10, и икс у тебя равен 5, то комп ответит FALSE. Таким образом ты можешь делать так
if name == "Вася":
  print("Привет, Вася!")
else:
  print("Я знаю только Васю, пиздуй отседова, незнакомец")
Т.е. если name == "Вася" выдает True, то условие первое выполняется и программа здоровается с Васей, но если name не равно "Вася", т.е. False, то программа посылает не-Васю к хуям. Так же ты можешь использовать != это тоже самое только НЕ РАВНО, ну там еще больше, меньше, больше и равно, меньше и равно и еще ряд сравнений.
Аноним 13/06/21 Вск 19:06:33 2067192317
>>2067095
>>2067100
>>2067110
Я забыл уточнить что строк около 50к в тестовом файле, в рабочем +- 1кк
Аноним 13/06/21 Вск 19:13:45 2067200318
>>2067192
Для варианта с хешированием это не особо критично.
Аноним 13/06/21 Вск 19:22:34 2067205319
>>2067158
Спасибо, все предельно ясно)
Аноним 13/06/21 Вск 21:33:43 2067349320
>>2066789
Задание такое было:

"На вход программе подается одна строка состоящая из цифр. Напишите программу, которая считает сумму цифр данной строки".

Задание выполнено. Мне просто интересно на что у меня линтер ругается.
Аноним 13/06/21 Вск 21:44:55 2067363321
>>2067349
Потому что это не питоник цикл, а кривое подобие фор из си.
Вместо for n in range(len(lst))
val = lst[n]
делается for val in lst
или for n, val in enumerate(lst), если нужны индексы.
Аноним 13/06/21 Вск 22:25:49 2067414322
>>2067363
Consider using enumerate instead of iterating with range and len

Это как раз про это? Разница между enumerate и iterating?
Аноним 13/06/21 Вск 22:31:40 2067426323
Аноним 13/06/21 Вск 22:40:24 2067437324
Аноним 13/06/21 Вск 22:43:40 2067442325
>>2066667
Да я вроде читал про классы и подобное, но тут что-то понять не могу этот момент
Аноним 14/06/21 Пнд 11:26:03 2067671326
Насколько реально на джанго сделать кинотеатр?
Аноним 14/06/21 Пнд 14:46:26 2067809327
>>2067057
О, этого чувака знаю, он в мфти вроде преподает
Аноним 14/06/21 Пнд 14:53:30 2067815328
>>2055136 (OP)
Как вообще этот ваш питон работает? Из него можно сделать exe'шник?
Аноним 14/06/21 Пнд 16:07:36 2067860329
Аноним 14/06/21 Пнд 17:03:08 2067903330
image.png 3Кб, 289x213
289x213
Почему так?
Аноним 14/06/21 Пнд 17:13:08 2067912331
>>2067903
В функции ты просто переназначаешь arr в локальном скоупе.
Аноним 14/06/21 Пнд 17:14:35 2067915332
>>2067903
Присваивание с таким же именем создает новую переменную внутри функции, старая не используется, что бы она изменялась нужно юзать global
Аноним 14/06/21 Пнд 17:36:33 2067936333
image.png 8Кб, 416x185
416x185
>>2055136 (OP)
Как в блядском списке от 0 до 700 , выести нечетные сотни, я блять не могу ебучее условие проверки придумать, пиздец блять отупел
просто надо вывести на экран 100 300 500 700.
Я могу сделать как в списке от 0 до 7 вывести 1 3 5 7 , а как это сделать для 700 я хуй знает сука, помогите пожалуйста
пример взят из интернетов
Аноним 14/06/21 Пнд 17:39:58 2067940334
>>2067936
Тебе можно в range прописать шаг в сотню, чтобы у тебя список был не 0,1,2,3,......,699,700, а просто 0,100,200...,600,700?
Или тебе нужен именно полный список в котором 700 элементов?
Аноним 14/06/21 Пнд 17:40:29 2067941335
>>2067936
if n % 100 == 0 and (n // 100) % 2 != 0
Аноним 14/06/21 Пнд 17:44:16 2067943336
111111.png 3Кб, 405x282
405x282
>>2067940
Потому что если так можно это будет самым не фимозным решением
Аноним 14/06/21 Пнд 17:44:41 2067944337
>>2067943
Я не сделал нечетность, ну ты понял о чем я
Аноним 14/06/21 Пнд 17:45:12 2067945338
>>2067943
Сотни все делятся на 2, норкоман.
Аноним 14/06/21 Пнд 17:45:57 2067946339
>>2067940
Можно и как ты говоришь
>>2067941
Блядь ты ебаный гений храни тебя абу
сука ведь это реально очевидная хуйня, серьезно большое спасибо
Аноним 14/06/21 Пнд 17:46:05 2067947340
>>2067945
Я блин спросил можно ли ему использовать step в range в принципе взяв его код и добавив степ
Аноним 14/06/21 Пнд 19:41:55 2068090341
Аноним 14/06/21 Пнд 19:43:05 2068093342
Ебучая макака

>>2067671
Зависит от того, что ты подразумеваешь под кинотеатром. В том, что я понимаю под кинотеатром - реально.
Аноним 14/06/21 Пнд 19:47:49 2068105343
>>2058685
Ну я джун на удаленке, чего хотел?
Аноним 14/06/21 Пнд 20:23:20 2068145344
image.png 3Кб, 493x52
493x52
Аноним 14/06/21 Пнд 20:51:04 2068193345
>>2067943
Если тебе нужны нечётные сотни, то можно сделать такую проверку
if i % 200 == 100:
___print(i)
Аноним 14/06/21 Пнд 20:55:32 2068204346
r102813Wx1Vb.jpg 27Кб, 500x483
500x483
Аноним 14/06/21 Пнд 21:02:42 2068214347
>>2068193
Ну и как ты случай 100 таким кодом обработаешь?
Аноним 14/06/21 Пнд 21:05:45 2068221348
>>2068214
100 % 200 = 100
В чём проблема?
Аноним 14/06/21 Пнд 21:15:08 2068238349
но ведь там человек уже выложил идеальное решение с двойным условием...
Аноним 14/06/21 Пнд 21:15:18 2068239350
>>2067903
Тебе внутри функции надо не
arr = [3, 4]
делать, а
arr[:] = [3,4]

Аноним 14/06/21 Пнд 21:17:17 2068245351
>>2067860
Работает, просто съезди за границу и попробуй оттуда зайти. Ну ты понял.
Аноним 14/06/21 Пнд 21:21:17 2068252352
>>2068238
Да, несколько вариантов с двумя проверками и ни одного очевидного. Вот это и называется "вышка нинужна". Потому что если такие понятия, как "кольца вычетов" знакомы, просто слишком очевидно решение с одной проверкой, что не понятно, как можно придумать вариант с двумя.

Аноним 14/06/21 Пнд 21:29:40 2068264353
>>2068252
Ну вот зато тебе вышка пригодилась вместе с кольцами вычетов.
Можешь теперь на вопросы анонов в /зк/аче отвечать.
Аноним 14/06/21 Пнд 21:35:46 2068277354
>>2068264
Вообще я попросил бы не осуждать, я так тешу свое самолюбие в аниму тредах когда речь заходит за споры по квантовой физике
Аноним 14/06/21 Пнд 23:04:27 2068397355
>>2068277
Как пропатчить KDE под FreeBSD?
Аноним 14/06/21 Пнд 23:08:03 2068400356
>>2068397
сыендук разлогинься
Аноним 15/06/21 Втр 00:08:26 2068508357
image.png 130Кб, 1838x647
1838x647
Эксперт, ебать. А я думал подучить чего.
Хотя несколько секций есть интересных.
Новый ньюфаг итт Аноним 15/06/21 Втр 01:51:40 2068586358
16008522623750.png 581Кб, 1180x1200
1180x1200
Решил учить питон, погряз в информации пиздец, дайте общих советов плиз, а то чувствую что сейчас полезу не туда. Что я понял: рот ебал этого ютуба, нужно читать книжки и только книжки. Потому что либо там вроде нормальная информация типа для совсем новеньких с какими-то небольшими упущениями, либо какой-то ебучий хауди хо со своми "питон за 1 час", где не понятно вообще нихуя как он работает с терминалами. Собственно хочу начать с питона для детей, норм для того кто вообще никак не связан с программированием? Ютуб не смотреть вообще, чтоб не ёбнуться и не обосраться раньше времени. Хотя мб на ангельском есть что-то годное?
Ну и тупой вопрос: а что на питоне-то делают и какие перспективы для меня? Ну я понял, что бэкэнд джанго и всё остальное, короче типа делают сайты. Если ещё и фронтенд учить, то смогу делать сайты и зарабатывать как бы. Что-то слышал про нейросети, но нихуя не понял. И вроде всё, больше никто не заикается. Вроде есть какие-то фреймворки для игр, вроде есть для приложений, но даже в шапке написано, что лучше не надо. Можно каких-нибудь примеров того, что питон не только бэкенд? Я полюбому буду учить питон, потому что для новичков и я хочу вкатиться в программирование, но хочется понять что я учу ёпт
Аноним 15/06/21 Втр 02:22:44 2068590359
40490.jpg 79Кб, 398x561
398x561
>>2068586
Тебе реально не стоит учить питон(да и вообще кодинг)
>нужно читать книжки и только книжки.
Зачем? Тебе надо на 50 страниц описание что такое цикл?
>нихуя как он работает с терминалами.
У тебя IDE в видео вызывает тупняки?
>Хотя мб на ангельском есть что-то годное?
Нет, хуйня идея, вообще за пределами рашки о Питоне не слышали, там куцые какие-то недогайды по еще второму питону, нерекомендую
>а что на питоне-то делают и какие перспективы для меня?
Все делают, но в других языках это делать лучше
>Если ещё и фронтенд учить, то смогу делать сайты и зарабатывать как бы
Не сможешь
>Что-то слышал про нейросети, но нихуя не понял.
Вот тут никакого подъеба, все верно
>Можно каких-нибудь примеров того, что питон не только бэкенд?
Ну это еще графики и таблички.
>полюбому буду учить питон, потому что для новичков
Пизда

А вообще представь если бы ты заинтересовался, например, свифтом, у тебя бы ни одного вопроса не возникло, ни про книжки, ни про применение, ни про деньги во фронте, ни даже про игры. Он такой же "простой", я тебе больше скажу - там даже двоеточие не надо ставить, вообще легкота, рикамендую. И гайдов много на английском, эпол же популярная фирма.
Аноним 15/06/21 Втр 03:44:30 2068595360
>>2068586
Учи по Степику. Видосики для зумеров, книги для опытных уже.
Аноним 15/06/21 Втр 04:44:14 2068602361
Ппп
Аноним 15/06/21 Втр 05:06:54 2068605362
Аноним 15/06/21 Втр 10:07:57 2068669363
>>2068590
>Тебе реально не стоит учить питон(да и вообще кодинг)
Да ладно, будет на говнокодера больше. И не такие долбоёбы вкатывались.
>Зачем? Тебе надо на 50 страниц описание что такое цикл?
Чтоб мне как дауну объясняли на пальцах. У меня информатика была на уровне "напишите текст в word".
>У тебя IDE в видео вызывает тупняки?
Тупняки - нет, непонимание того что он делает - да. Ну типа он говорит, что нужно установить джанго, лезет на сайт, копирует какую-то непонятную строчку, запускает и говорит, что джанго установился. А мне нихуя не понятно как он его установил, если в скопированной ссылке нет никакого адреса, а какие-то команды. Откуда он ёпт установил его? Для меня сейчас установить что-то, это скачать и запустить инсталлятор. Это мелочи которые мне вообще непонятны, а тупо повторять путь в никуда.
>Все делают, но в других языках это делать лучше
Это все говорят, что делают. Только чёт инфы нихуя нет толком кто и что делают.
>И гайдов много на английском, эпол же популярная фирма.
Толку-то со свифта, если у меня из техники яблочных только древний айпод?


Аноним 15/06/21 Втр 10:35:47 2068693364
Аноним 15/06/21 Втр 11:38:58 2068746365
>>2068669
Учись работать с консолью, лучше в линукс. Если сидишь на винде-10, то там можно виртуальный линукс запистить, если только у тебя не home edition. Версии pro, edu, entertrise умеют. Можно и лучше даже сразу докер поставить.

В консоли разберись с файловыми операциями всякими.

Дальше научить запускать питон из консоли, запускать питон-консоль, создавать витруальные окружения и ставить что-то через pip. На самом деле это очень просто, если консоль не пугает.

Можно быстро разобраться, что происходит при установке пакетов и т.п.

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

Если хочешь в бэкенд, то без этого делать там нечего, подразумевается просто. Даже в вакансиях обычно прописывают, что надо уметь с линуксом работать.
Аноним 15/06/21 Втр 12:53:54 2068797366
image.png 21Кб, 413x347
413x347
>>2055136 (OP)
Сап програмач, есть вот такой код на пикриле, вроде все нормально, но преподша заеба тредует чтобы я ввел z как переменную
>переменная z меняется также, как и переменные a и b, т.е. должна быть переменной вашей функции var14
ее слова, но как это сделать если z от варианта к варианту меняется и его надо каждый раз расчитывать? Типа сделать какое то обращение, но звучит бредово как то, типа брать в переменную то что уже посчитано , мб вы подскажете
Аноним 15/06/21 Втр 13:00:34 2068802367
>>2068797
Твой код вообще не должен работать.
У тебя функция просит 6 аргументов. При этом когда ты вызываешь, ты передаёшь только три. Уже исключение будет.

При этом ты эти агрументы не используешь, а перезаписываешь.

С математической точки зрения и в плане внутренних переменных тоже не всё понятно.
Аноним 15/06/21 Втр 13:03:04 2068804368
>>2068802
Оно все работает, могу скрин предоставить, да и в принципе мне больше надо сделать что просит это пизданутая чтобы отъебаться
Она еще одно более ебанутое задание дала которое вообще составлено так что ты должен сам понять что она имела ввиду.
Помоги пожалуйста если знаешь как осуществить задуманное ею
Аноним 15/06/21 Втр 13:04:16 2068806369
>>2068802
>>2068804
А ты про начало, там на z1 z2 z3 в самом начале не обращай внимание, я их просто так написал эксперементирую, там просто a, b, x
Аноним 15/06/21 Втр 13:06:55 2068809370
image.png 18Кб, 342x353
342x353
>>2068802
Вот оно как по нормальному выглядит
Аноним 15/06/21 Втр 13:07:50 2068810371
>>2068806
Дай скрин кода, который ты хотел бы сдать. Либо срин кода в том состоянии, когда твоя преподша претензии выкатила.

Аноним 15/06/21 Втр 13:08:23 2068814372
Аноним 15/06/21 Втр 13:09:14 2068815373
image.png 60Кб, 674x122
674x122
>>2068810
а который хотел бы сдать
>>переменная z меняется также, как и переменные a и b, т.е. должна быть переменной вашей функции var14
А пикрил само задание как выглядит
Аноним 15/06/21 Втр 13:19:31 2068828374
>>2068815
Задание смотрится так, что у тебя z это функция, которую ты должен передать в твою функцию в качестве аргумента, наравне с a и b

То есть ты z должен не вычислять внутри, а получать снаружи.

Аноним 15/06/21 Втр 13:23:12 2068835375
>>2068828
Верно, но как ее получить снаружи? и как передать? я вот этого нихуя не понял
Аноним 15/06/21 Втр 13:28:28 2068839376
>>2068835
Ты должен или сначала определить как функцию, и передать
def z(a, x):
____return math.exp(a∗x)

или через лямбда-функции

def var14(a, b, z, x):
......

вызов:
var14(0.5, 4.5, lambda a, x: math.exp(a∗x), x=c)

Кстати, у тебя баг, твоя функция не обрабатывает вариант
x = 5∗a

И ещё, вместо math.e ∗∗ (something) лучше делай
math.exp(something)
Аноним 15/06/21 Втр 13:34:03 2068843377
Питоноаноны, что еще нужно маст хэв, что бы наконец зарядить резюмеху, по которой всё таки кинут тестовое задание, если условно я знаю синтаксис, ооп, SQL и немного HTML+CSS+JS (чисто на уровне спиздить платный шаблон и запустить на нём свой красивый сайт-визитку-резюме)? Я готов к собесам?
Аноним 15/06/21 Втр 13:38:21 2068848378
>>2068843
Очевидно нужны конкретные фреймворки, django/flask/aiohttp/fastapi

Наверное это у тебя есть, иначе не понятно, как на питоне что-то делать для веб, но ты не написал.
Аноним 15/06/21 Втр 13:40:58 2068853379
>>2068839
>вызов:
>var14(0.5, 4.5, lambda a, x: math.exp(a∗x), x=c)
Вот этот способ мне больше нравится, но теперь он вызывает

TypeError: unsupported operand type(s) for *: 'float' and 'function'
типа он z распознает как функцию и не хочет работать
Аноним 15/06/21 Втр 13:41:59 2068856380
>>2068853
Поменяй на обычную звезду
Я использовал левую юникод-звезду, потому что обычные двач проглатывает.
Аноним 15/06/21 Втр 13:43:55 2068858381
>>2068853
А, другое, в коде используй не
y = x∗z
а
y = x∗z(a, x)
ты ведь функцию в своём коде вызываешь
Аноним 15/06/21 Втр 13:46:16 2068859382
>>2068848
Я не говорил про веб. Я в целом и общем знаю питон и SQL (условно). С таким багажом разве только в веб дорога? я без прретензии, просто интересно.

>django/flask/aiohttp/fastapi
Все 4 сразу или имеется ввиду по отдельности что то одно?
Джангу ковырял, суть и цели джанги понял, надо, я так понимаю основные классы выучить, подразумевается это? или пройти пройти один пиздатый курс по настройке джанги достаточно?
Что подразумевается под знанием фрэймворка? Понятно, что всякие мелкие пакостные хитрости я и питоновские все никогда не выучу, но парсер например написать могу или бота для телеги поднять.
Аноним 15/06/21 Втр 13:51:03 2068865383
image.png 10Кб, 492x106
492x106
>>2068858
>>2068856
Бля анонче спасибо тебе огромное, прям вышло, щас надеюсь она отъебется от меня наконец
Аноним 15/06/21 Втр 13:59:59 2068874384
>>2068859
>С таким багажом разве только в веб дорога?
Нет, тебе очень пригодится хтмл в байтоебстве с робо-руками на заводе.
Обычно идет что-то одно, но ты никогда не угадаешь, они все применяются на разных сервисах и по своему уровню "крепкости жопы" и по желанию юзать то или иное у главного. И будут сайты-визитки на джанге и кинотеатры с базами данных и мл моделями на фласке. Энивей они примерно одинаковые, это все REST, графен, и дроч sql, отличаются только названия команд для этого всего.
Аноним 15/06/21 Втр 14:01:02 2068877385
>>2068093
Обычный где можно смотреть кино. Такое можно сделать на заказ, там еще замутить видобалансер и прочее. Я подумал, что можно на джанге сделать. Можно ли?) Делают на wp потом юзают видеобалансеры и статьи к фильмам.
Аноним 15/06/21 Втр 14:05:39 2068881386
>>2068859
>Все 4 сразу или имеется ввиду по отдельности что то одно?
Зачем нужны веб-технологии вроде html/css/js, если ты не можешь их применить?

С фреймворками уметь работать надо. Тем более, что ты назвал только те технологии, которые близки к web.

Но в любом случае очень полезно. Вот с какими именно, зависит от направления.

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

flask/aiohttp хороши для прикручивания веб-морд к каким-то сервисам.
Аноним 15/06/21 Втр 14:08:18 2068886387
>>2068877
Как представляю, от джанги тут будет самый минимум, основная работа это бэкенд по хранению видео и балансировке нагрузки, фронтенд для реализации плеера и т.п.

Тебе надо расписать задачу, функционал, а уже потом думать, какую часть фунционала можно на каком-то фреймворке сделать.

Аноним 15/06/21 Втр 14:31:12 2068920388
>>2068886
Да готовых решений куча, включая сделать кинотеатр под ключ, на питоне такого не видел. Знаю только его, подумал, что бесплатно сделал бы такое сам. А там, все как обычно, трафик.
Аноним 15/06/21 Втр 19:37:44 2069434389
У меня есть подключение по websoket, по которому постоянно принимаются данные. Как я могу получить к ним доступ из других функций?
Аноним 15/06/21 Втр 20:10:07 2069483390
>>2069434
Делать или многопоточное приложение, или асинхронное. Есть несколько способов, как это делается.

Что за вебсокет, через какую библиотеку?

Аноним 15/06/21 Втр 20:18:03 2069492391
>>2069483
websokets Первый раз с таким работаю.

То есть получается нужно будет взять asyncio:
Добавить в луп функцию, которая обрабатывает получение данных по вэбсокету, указать в ней, чтобы записала данные к примеру в файл или глобальную переменную,
Добавить в в луп еще одну функцию, для обработки уже самих данных
И гонять это все в цикле?
Аноним 15/06/21 Втр 20:27:31 2069503392
>>2069492
Ты оформляешь фунцию чтения данных из вебсокета в отдельную задачу. Тут надо оговаривать, у тебя один вебсокет или много, что происходит в случае обрыва соединения и прочие моменты.

Создаёшь очередь asyncio.Queue()
передаёшь ещё в задачу, что работает с вебсокетом, и в задачу, где функции крутятся, которым надо с данными работать.

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

Это самый общий подход, очереди сообщений, каналы передачи данных и т.п.

Аноним 15/06/21 Втр 20:35:33 2069509393
>>2069503
Ок, буду копать в этом направлении, спасибо.
Аноним 15/06/21 Втр 21:04:03 2069533394
Сап, вкатился где-то пол года назад. Сейчас работаю на проекте с довольно серьёзными технологиями для джуна - кубер, асинхронные фреймворки, nosql хранилища и тд. Я смогу ещё через пол года вкатиться на миддла с таким стеком или пойду нахуй? Вот просто интересно, удавалось ли местным антуа за максимально короткие сроки перекатиться в мидлы/сеньоры? Просто ебал ещё несколько лет батрачить за ебаные копейки и ждать, когда кабан рассщедрится на +10к к зп.
Аноним 15/06/21 Втр 21:15:06 2069541395
>>2069533
Просто через полгода идешь искать новую работу и смотришь на то, что тебе предлагают
Аноним 15/06/21 Втр 23:03:04 2069672396
>>2069533
пиздец, как ты так быстро вкатился и как так быстро взяли на работу??
поясни
Аноним 15/06/21 Втр 23:11:25 2069681397
Я не понимаю лямбда-функции. Я вообще блядь их не понимаю. Мб есть у кого-нибудь хорошие материалы по ним для совсем тупороидов?
Аноним 15/06/21 Втр 23:15:37 2069687398
>>2069681
Я только начал, что такое лямбда функции и зачем они могут быть нужны? Попробуй мне объяснить.
Аноним 15/06/21 Втр 23:18:46 2069690399
>>2069681
Что там понимать?
Функции это объекты в питоне, их можно передавать, возвращать и хранить в структурах.
И если тебе нужна такая передаваемая функция на один раз, то вместо определения с def ты можешь захуярить лямбду прямо на месте.
Аноним 15/06/21 Втр 23:19:47 2069691400
>>2069687
Это ещё один способ объявления функций, как def, только их ещё можно использовать сразу по необходимости. Нужны они когда сама функция настолько незначительна, что создавать через def ее не имеет особого смысла, например, когда в сортировке указываешь функцию, которая преобразовывает элемент прежде чем приступать к сравнению.
Аноним 15/06/21 Втр 23:20:20 2069692401
>>2069687
Я так понимаю, что лямбда-функция - это укороченный вариант обычной функции, который используется когда нужно быстро въебать какую-то функцию посреди кода, и которая будет использована однажды и не будет занимать память. Еще помню, что ее иначе называют анонимной, т.к. ее не надо объявлять.
Аноним 15/06/21 Втр 23:20:47 2069694402
Аноним 15/06/21 Втр 23:22:32 2069696403
>>2069690
>>2069694
Я не понимаю, почему мне может хотеться использовать лямбда-функции. Почему я не могу обойтись например list comprehension или циклом каким-нибудь? Мне ж все равно эту операцию один раз провернуть.
Аноним 15/06/21 Втр 23:22:53 2069697404
>>2069692
Хорошо. А когда это может пригодиться?
Аноним 15/06/21 Втр 23:25:30 2069702405
>>2069697
Хз, с этим трудности, я понимаю только на словах.
Я помню, когда-то давно писал простой гуй на pyQt, и там нажатие на кнопку делалось через лямбды в этом треде так подсказали - я так и не понял, почему. И в общем-то это единственный пример, который я помню.
Аноним 15/06/21 Втр 23:28:38 2069704406
>>2069696
>Мне ж все равно эту операцию один раз провернуть.
Но есть же случаи, когда операцию проворачиваешь несколько раз, просто делаешь одно и то же. Когда передаёшь фнкцию другой функции, например, как для map() или filter().

Или в пайплайн встроить, например, хочешь обработать строчку
''.join().strip().(тут делаешь какую-нибудь необычную операцию, например, тЕкСт ЗаБоРчИкОм)()
Аноним 15/06/21 Втр 23:29:42 2069705407
>>2069704
>''.join().strip().(тут делаешь какую-нибудь необычную операцию, например, тЕкСт ЗаБоРчИкОм)().(и тут можно продолжать обрабатывать, сделать текст жирным, к примеру)()
Аноним 15/06/21 Втр 23:31:01 2069707408
>>2069704
>операцию проворачиваешь несколько раз, просто делаешь одно и то же
Так это обычная функция, а не лямбда.
Аноним 15/06/21 Втр 23:32:15 2069710409
>>2069697
Нужно отсортировать массив кортежей по второму элементу

a = [(1, 2), (2,0)]
a.sort(key=lambda x: x[1])
Аноним 15/06/21 Втр 23:33:59 2069712410
>>2069707
Можно сделать обычной функцией, но тогда её нужно будет придумать название, объявить её где-то в другом месте, потом привести в скоп, передать её все нужные параметры, и потом применить. А нужна она только здесь. Не лучше ли её прямо здесь и объявить?
Аноним 15/06/21 Втр 23:35:25 2069714411
>>2069712
Не знаю, может, мы друг друга не понимаем.
Если я делаю что-то один раз, то это лямбда в моем понимании.
Если я делаю что-то несколько раз
>операцию проворачиваешь несколько раз
То это обычная функция, которую надо объявлять.
Аноним 15/06/21 Втр 23:36:35 2069715412
>>2069714
Но когда ты используешь map() эта функция применяется к каждому элементу, поэтому
>несколько раз
Аноним 15/06/21 Втр 23:41:25 2069721413
Вы неправильно обьясняете.
Надо понять, что такое функции первого класса и как они применяются.
Лямбды это просто частный их случай, когда имя такой функции просто не требуется, т.к. используется в одном выражении.
Аноним 15/06/21 Втр 23:43:27 2069723414
>>2069721
>Вы неправильно обьясняете.
Если бы существовал правильный способ объяснять, то его бы уже всем объяснили, и все бы его знали.
Данил 15/06/21 Втр 23:45:25 2069724415
Есть связной список(linked list), как он работает?
вот допустима фрагмент кода, я обьясню, а вы скажите прав или нет.

Я вроде прошел весь основной синтаксис питона немного ООП затронул, но бывает берешься за что-то новое связанное с алгоритмами или куда-то углубляешься в какой-то фреймворк, то абсолютно ничего не понимаешь.

Вот тут мы создаем экземпляр класса связного списка, где при инициализации мы привязываем голову к Node, то есть каждый экземпляр будет иметь в себе голову(или же узел), но как оно ходит по этим узлам? Next это ссылка же на следующей элемент, в каждом узле ее в начале нет, но как только мы добавлям новый узел Node, то мы с прошлого узла переходим на этот новый, где ссылки тоже нет, и так мы идем сколько нам надо
1 - Есть узел, в нем нет ссылки, создаем новый в старом узле, указываем в старом узле ссылку на новый узел, переходим, а в следующем узле не будет ссылки пока не проделаем такую-же операцию, верно?

# class Node:
# def __init__(self,data=None):
# self.data = data
# self.next = None
#
# class LinkedList:
# def __init__(self):
# self.head = Node()
#
# def append(self,data):
# new_node = Node(data)
# cur = self.head
# while cur.next != None:
# cur = cur.next
# cur.next = new_node

Аноним 15/06/21 Втр 23:46:46 2069725416
>>2069724
Поэтому первым языком надо учить С.
Аноним 15/06/21 Втр 23:50:22 2069728417
>>2069724
Я бы не пытался реализовать линкед лист на языке, где нет явных указателей, это смотрится крайне потешно.
Аноним 15/06/21 Втр 23:51:32 2069729418
>>2069724
Голова это первый элемент, она известна, потом хуяришь по некстам, пока не будет None, это хвост.
В целом, этого достаточно для итерации и добавления элементов как в конце, так и в любой другой позиции, просто манипулируя этими некстами, в этом и суть линкед листа.
Аноним 15/06/21 Втр 23:51:57 2069730419
>>2069728
Да я знаю что есть вроде deque в collections и он может использоваться в таких-же целях, просто разбираюсь в алгоритмах и хотелось бы понять как это все работает, тяжеловато дается.
Аноним 15/06/21 Втр 23:54:04 2069732420
>>2069730
Лучше на сишке ебош или на ГОвне, значительная часть классических структур требует адресных полей
Аноним 15/06/21 Втр 23:55:33 2069734421
>>2069728
В питоне каждая переменная по сути хранит в себе указатель на значение, кроме самых примитивных вроде чисел
Аноним 15/06/21 Втр 23:59:14 2069736422
>>2069734
Да, ещё и строки, но ты указателями явно не можешь распоряжаться и к классическим структурам приходится ебошить костыли. Если бы хотя бы по Id() можно было объект получить, то можно было бы потренироваться в этом.
Аноним 16/06/21 Срд 00:01:12 2069738423
>>2055136 (OP)
Вот вы говорите пет-прожекты.
А хуй написал кривую лапшу, вся суть которой сводится к портянке из пост запросов и убогой обвязочки и набрал дохуя звезд на гитхабе и ореол кулхацкера. Учитесь.
https://github.com/FSystem88/spymer/blob/master/spammer.py
Аноним 16/06/21 Срд 00:06:21 2069740424
Аноним 16/06/21 Срд 00:06:42 2069741425
>>2069736
> указателями явно не можешь распоряжаться
Например считать разницу или прибавлять к указателю целое число? Так для классических структур такое и не надо особо.
Аноним 16/06/21 Срд 00:08:04 2069742426
>>2069738
Посмотрим, что скажет гитхаб насчет спам-бота
Аноним 16/06/21 Срд 00:12:50 2069744427
>>2069740
Для шутеек это стандартно на любой платформе, а так смотртят.

>>2069742
Это детский лепет, там и не такое хостится. Под всякую политоту с радостью прогибаются, это да.
Аноним 16/06/21 Срд 00:50:02 2069756428
>>2069696
>Я не понимаю, почему мне может хотеться использовать лямбда-функции. Почему я не могу обойтись например list comprehension или циклом каким-нибудь?
Потому что тебе может потребоваться передать функцию куда-то в качестве аргумента. Вот для таких целей и нужны лямбда-функции, чтобы код был компактным.

На самом деле можешь сильно не заморачиваться, главное примерно понимать, что это такое. Когда будешь сталкиваться с передачей функций на практике, будешь и лямбда-функциями пользоваться.

Например, у тебя есть список сложных объектов и ты хочешь отсортировать их как-то. Ты используешь для этого функцию sort, один из аргументов которой это "ключевая функция", которая преобразует твой объект во что-то сортируемое стандартным образом, так определяя "отношение порядка".

Куча других примеров есть.

Аноним 16/06/21 Срд 04:08:13 2069804429
Всем привет! Нужно запилить на фронт таблицу состоящую из Kibana логов на каждый веб сервис. Имею доступ к Amazon аккаунт и собственно кибану. С чего начать? Я сам джун, погуглил ничего не понятно пока.
Получается что нужно:
1. Достать логи с кибаны или Амазона
2. Обработать их в одну базу.
3. Запилить фронт с таблицей и уложить туда базу.
4. Разместить где-то на хосте.
Что упустил?
Спасибо за внимание.
Аноним 16/06/21 Срд 05:24:00 2069808430
Аноним 16/06/21 Срд 06:23:21 2069813431
>>2069808
Спасибо. Но питон я знаю уже. Мне именно по кибаны.
Аноним 16/06/21 Срд 07:42:51 2069819432
Где почитать про отличия списков в Питоне от массивов в нем же и от массивов в других языках?
Аноним 16/06/21 Срд 08:10:31 2069822433
>>2069819
Список это массив ссылок на объекты, а массив это массив, но он может только в примитивные типы.
Аноним 16/06/21 Срд 08:14:27 2069826434
>>2069434
threading.Thread(target=websocket_function)

ну и данные передавать через Queue
Аноним 16/06/21 Срд 08:15:46 2069827435
>>2069822
Я вот такое нашел

"Во 1 массивы хранят данные лишь 1 типа данных, во 2 хранят если не ошибаюсь только простые типы данных, в 3 хранятся в разных частях памяти, в 4 все элементы массива расположены в ячейках памяти, которые идут друг за другом, а со списками история в точности противоположная.
В общем различия есть и их море".

https://www.cyberforum.ru/python-beginners/thread1618708.html

Думал может где-то статья есть на эту тему.
Аноним 16/06/21 Срд 08:35:31 2069833436
>>2069827
Я так понимаю, что на практике оно в основном применяется для взаимодействия с компилированным кодом, в самом питоне их молотить смысла мало, т.к. при извлечении придется создавать объекты.
Аноним 16/06/21 Срд 08:44:08 2069838437
>>2069833
То есть до уровня байтоебства списки == массивы, а как дойдешь до уровня байтоебства, то сам все поймешь.
Аноним 16/06/21 Срд 09:12:33 2069848438
А как в вашей хуйней можно сделать что-то вроде вебпаковского watch'a или live server'a? Чтобы по изменению скрипта или его зависимостей перезапускать прогу автоматически, а не в ручную.
Аноним 16/06/21 Срд 10:10:10 2069880439
Screenshot from[...].png 47Кб, 1025x406
1025x406
>>2069838
В питоне просто тип данных list назван не очень корректно, на самом деле это аналог массивов-"векторов" в других языках.

Модуль array позволяет создавать массивы, где данные будут храниться компактно. Наверное это иногда актуально, если очень большие данные. Но при этом работать с этой структурой дольше, каких-то внутренних оптимизаций нет.

Вот для теста создаю список из 10 миллионов целых чисел и array аналогичный, со значениями от 0 до 9999999. Делаю поиск, это работает как полный перебор. Штатный list работает в два раза быстрее.

То есть оптимизаций нет. Гипотетически подобные операции можно было бы вынести в бинарный код библиотеки и там проводить очень быстро, но этого нет.

Поэтому мне кажется, что очень ограниченная область применения.

Аноним 16/06/21 Срд 10:16:44 2069883440
>>2069880
Ограниченная область применения у массивов по сравнению со списками?
Данил 16/06/21 Срд 10:17:02 2069884441
Хай, пытаюсь вьехать в эти две темы, немного не понимаю.

Поток это подпрограмма в программе, мы их можем запустить N количество, это как 2 синхронные программы, они выполняются одновременно, верно?
А асинхронность это когда мы говорим программе пока ты ждешь, сделай эту или эту функцию, верно?

Я сам на практике пока не использовал их, в теорию вьезжаю
Аноним 16/06/21 Срд 10:25:27 2069892442
>>2069883
Штатные структуры для питона это list, dict, set. В меньшей степени bytes/bytearray

Модули array и struct нужны в первую очередь для двоичных API, чтобы ты мог пересылать данные между приложениями, в том числе написанными не на питоне. Вот для этих задач они необходимы. Но это всё-таки очень редкие задачи, особенно для array, struct более частая вещь для парсинга бинарных пакетов каких-нибудь.

При этом мне кажется, что array и для бытовых задач может быть востребован, если тебе надо хранить в памяти очень большие объёмы данных, на десятки и сотни миллионов элементов. С обычным списком на 100+ миллионов элементов уже будут проблемы из-за расхода памяти. Но всё-таки это какие-то очень редкие задачи.

Надо просто помнить, что такая возможность в принципе есть.
Аноним 16/06/21 Срд 10:29:25 2069897443
>>2069892
Оке, спасибо. Вот такого в шапке не хватает. В шапке в смысле на Гитхабе.
Аноним 16/06/21 Срд 10:38:51 2069901444
>>2069884
>Поток это подпрограмма в программе, мы их можем запустить N количество, это как 2 синхронные программы, они выполняются одновременно, верно?
Нет, особенно в случае питона с его GIL. Потоки придумывали не для этого, они появились ещё тогда, когда процессоры были одноядерные. Возможность одновременной работы это побочный эффект, но на питон он не распространяется.

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

Это нужно для того, чтобы твоя программа могла делать одновременно несколько действий. Например ждать, когда пользователь что-то нажмёт, при этом обрабатывать персонажа игры, скачивать-отправлять данные и др. В общем это многозадачность.

Разница между многопоточностью и асинхронностью в том, как происходит механизм переключения потоков. В первом случае независимо от кода подпрограммы, во втором случае в коде подпрограммы только на операторах await. Но более оптимально, если у тебя код ждёт данные, то ты в этот поток не вернёшься, пока данные не получишь, ресурсы оптимальнее используются.
Аноним 16/06/21 Срд 13:21:06 2070061445
>>2055136 (OP)
s = {'1', '2', '3'}
''.join(s)

Почему у меня при перебирании этого множества значения выходят именно в такомпорядке: 2 1 3
Всегда именно так. Пачему?
Аноним 16/06/21 Срд 14:45:30 2070191446
>>2070061
Порядок не гарантируется, хранится как удобнее вм.
Раньше такое было и для словарей, потом с какой-то версии к ним прикрутили порядок вставки.
Аноним 16/06/21 Срд 17:02:57 2070392447
image.png 30Кб, 1138x171
1138x171
image.png 2Кб, 647x51
647x51
Всем привет, не могу понять, django3.1 когда я добавил choices в форму, то она их использует для валидации? Или этот список теряется? Потому что уже дня 2-3 не могу починить ошибку на 2 пике. В документации написано, что используется, но проверить бы хотелось.
Аноним 16/06/21 Срд 17:05:58 2070398448
>>2070392
Давно к джанге не притрагивался
Но у тебя хуйня какое-то на первый взгляд, нахера ты choices внутри класса определил?
Аноним 16/06/21 Срд 17:11:27 2070407449
>>2070398
В init изначально было, это уже от бессилия делал, все варианты возможные перепробовал.
Аноним 16/06/21 Срд 17:20:11 2070416450
16079274854530.mp4 738Кб, 540x960, 00:00:09