Двач.hk не отвечает.
Вы видите копию треда, сохраненную 1 августа 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Питон тред №121 /python/ 2055136 В конец треда | Веб
Тред, посвящённый языку программирования Питон, #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
2 2055210
В чем минусы VSCode'а?
3 2055326
yield
4 2055396
У меня есть два способа считать и сохранить изображение из интернета. На скрине.
Какие плюсы, минусы и подводные камни у них?
Вижу невооруженным глазом, что PIL шакалит картинки. Но и без него не могу обойтись, потому что большим картинкам я хочу делать resize.
Заранее благодарен за ответы.
5 2055403
>>55396
В первом случае ты сохраняешь оригинальную картинку, во втором пережимаешь с потерями.
В чем вопрос я не понял. Если надо обрабатывать, то придется пережимать, хули делать. Можешь сохранять в пнг, но проебешься по размеру.
6 2055412
>>55403
Вопрос, почему PIL пережимает? Можно его как-нибудь попросить не пережимать, а сохранять как есть? Не нашел в гугле, искал.
7 2055416
>>55396

>Вижу невооруженным глазом, что PIL шакалит картинки.


Ты можешь выставить свой параметр компрессии, чтобы качество оставалось высоким. На память не помню каким ключом, смотри доку.
8 2055420
>>55412
Потому что он загружает картинку и создает свой объект, потом этот объект надо сохранить в каком-то формате == пережать в случае лосси форматов.
В принципе, ты можешь загружать в pil и смотреть размеры, если большой, то ресайзить и пережимать, если нет, то сохранять файлом, а не через сам pil.
9 2055423
>>55412

>Не нашел в гугле, искал.


Как это возможно?
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)
10 2055426
>>55416
Даже при quality 100 проебывается качество у жпега.
11 2055431
>>55423
А, ну я ничтожество тогда. Спасибо большое, c 95 качество как у исходного.
>>55416
>>55420
И всем спасибо за ответы.
12 2055453
>>55210
У него нет плюсов, это главный минус.
13 2055519
>>55431
Тебе ещё стоит глянуть на то, как выбирать разные алгоритмы для ресайза, от них очень сильно зависит итоговое качество, как разные мелкие детали будут ресайзиться. А так же посмотреть на решарпинг после того, как размер уменьшаешь.

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

Это тоже всё есть в PIL. Алгоритмы смотри по ключевым словам BICUBIC и LANCZOS.
14 2055521
Можете обновить ЧаВо https://github.com/TheKnightsWhoSayNi/info/wiki/Hat? Оно 2015 года
15 2055522
>>55521
Надо, это откровенное говно мамонта. Но на что, есть варианты?
16 2055527
>>55522
Я сам не питонист. Нужны питонисты для указания современных книг и курсов
17 2055528
>>55527
Нужен джангист, чтобы актуализировать этот пункт:

> — А как учить джангу? Нахожу только книги по джанге 1.х


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


Я сам давно джангу не трогал, 3-ю версию вообще не трогал, надо актуализировать с учётом, что сейчас 3-я версия.

>>55527

>Нужны питонисты для указания современных книг и курсов


Я частично питонист и уже очень давно. Проблема в том, что за курсами не слежу, не актуально. Можно было бы составить FAQ, но это же надо на какой-то площадке делать, там аккаунт для этого заводить. Я бы составил что-то от себя по тем частям, которые знаю. Другие аноны может что-то ещё составили.
18 2055530
А сама шапка копи-паст по шаблону из 90-го треда, а уже 121-й.
19 2055531
>>55528
Надо гугл-док составить с доступом по ссылке. Чтобы каждый мог добавить что-то свое.

Вопрос только кто возьмет к себе это на Гитхаб?
20 2055535
>>2054895 →
Почему ты не черный русский?
21 2055537
>>55326
brake
22 2055538
>>55531
Лучше создать проект с readme на github (google doc не стоит)
23 2055541
>>55538
Вопрос в том, что этот Гитхаб должен держать кто-то ответственный и активный. А я тут 2 тред сижу, сорре.
24 2055546
>>55541
Давай сделаем pull request с readme.md к предыдущему ЧаВо https://github.com/TheKnightsWhoSayNi/info
25 2055549
Я только что создал новый гитхаб аккаунт на новый ящик.

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

Можно расшарить доступ на несколько аккаунтов.
26 2055554
>>55546

>Давай сделаем pull request с readme.md к предыдущему ЧаВо https://github.com/TheKnightsWhoSayNi/info


На аккаунте последняя активность 2015 года. Мёртвый акк, автор что-то сделал и забил.

Нужен аккаунт, чтобы к нему доступ у нескольких человек был.
91ABB4AA-3934-4D00-9202-46FC4749D2C1.jpeg582 Кб, 1695x1950
27 2055567
Сразу извиняюсь за скрин с телефона.
Вопрос 1) Как правильно привязать y и n что бы при вводе строчной и прописной значений был одинаковый результат? 2) Как убрать изображения тех же y и n после ввода?
Можете гавном кидаться, совсем недавно начал изучать питон
28 2055569
>>55549
Можешь создать репозиторий? Как думаешь лучше на wiki делать или в README.MD?
29 2055574
>>55567
quit == 'Y' or quit == 'y'
30 2055590
>>55574
Отлично, помогло, запомню на будущее. Теперь буду разбираться как написать код так, что бы эти значение не были видны после ввода.
31 2055596
>>55569
Короче вот такое создал
https://github.com/python-2ch/faq
там пока абсолютно ничего нет

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

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

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

Я думаю, что как-минимум нужен FAQ, и ещё можно репозиторий с демо-примерами сделать разных фишек.
32 2055597
>>55596
Спасибо
34 2055623
>>55537
Сууука!
35 2055772
>>55567
quit.lower() == 'y'
Так правильнее
36 2055796

> Because we can’t remove items from a list or group within a for loop, we have toloopovera copy of the group.



Почему?
37 2055800
>>55796
Это специальные ограничения, чтобы избежать многих проблем и сделать возможными какие-то оптимизации.

Слишком много граблей может быть, вот и решили просто заблокировать такую возможность.
38 2055867
Подскажите, пожалуйста, что в данном случае представляют собой x_test, y_test? x_train, y_train я понимаю, эта пара возвращаемых значений, но что значат скобки с еще парой значений?

(x_train, y_train), (x_test, y_test) = fashion_mnist.load_data()
39 2055908
>>55796
Потому что итератор не в курсе, что что-то меняется и ты получишь ебанутый результат. В некоторых случаях прокатит, а в некоторых нет, поэтому принято не рисковать, а явно работать с копиями или индексами.
https://ideone.com/vRgAXc
>>55800
Норкоман.
40 2056050
>>55867
Каждое значение само по себе пара.
41 2056353
Что означает r перед строкой пути к файлу в пайтоне?
r'path/to/file'
Я не питонист.
42 2056360
>>56353
Отключает бэкслеш, на котором висят всякие последовательности вроде \r \n и некоторые другие штуки. В случае шиндовс путей без этого надо эскейпить через \\.
43 2056387
>>55908
Получается если тебе нужно к примеру залупиться через лист и удалить какие-то объекты, то ты будешь это делать через копию, а внутри цикла пропишешь условие для удаления объекта из настоящего листа? Он получается на каждом проходе будет новую копию создавать?
И вообще не дает ли это лишней нагрузки, нужно же ведь копию создавать, хранить где-то?
44 2056395
>>56387
Ты просто проходишь по списку и создаёшь новый список, без удалённых значений из старого.

>И вообще не дает ли это лишней нагрузки, нужно же ведь копию создавать, хранить где-то?


Всё это работает быстро, если списки небольшие. При этом само по себе удаление операция дорогая, это O(N) в среднем, точнее чем ближе к началу, тем дольше. Если тебе надо несколько элементов удалить, то быстрее будет пересоздать список.
45 2056398
>>56387
Копия создается один раз на старте, а не на каждом проходе.
Оверхед есть по копии, да. Если у тебя реально большой список то есть другие способы. Можно итерироваться задом наперед, можно завернуть в компрехеншен или генераторное выражение.
post-34719-1181321481.jpeg22 Кб, 370x369
46 2056672
Памаги, двач. Пытаюсь упаковать проек
python3 -m build

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

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

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

Сама прога вроде пашет нормально.
изображение.png3 Кб, 824x42
47 2056982
Как ловить хуй в рот исключение от библиотек типа пикрил? Оставлять except без аргумента не хочется, да и пучарм ругается "ловите конкретный хуй в рот, а не любой"
48 2057006
>>56672
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(),
_____...
)
Не знаю с чем это связано, буду рад услышать предположения
49 2057012
>>56982
Ну так лови конкретный епт
Че бухтеть-то?
50 2057015
>>56982
Так и лови.
except hui.pizda.HuiException
или
from hui.pizda import HuiException
except HuiException
image.png2,4 Мб, 958x963
51 2057551
шалом двач, надо сделать сервер который бы по очереди работал с двумя клиентами, пока придумал 2 варианта, через многопоточность и sock.accept() в бесконечном цикле, но не ебу как реализовать оба варианта, памагите
52 2057573
Челы, если у меня есть цикл, который обрабатывает большое количество маленьких файлов, то насколько критично будет добавить несколько IF в него? Насколько сильно это ударит по производительности?
53 2057593
>>57573
if как правило на порядки быстрее файловых операций, так что никак не ударит

впрочем если ты прямо в выражении проверки условия в if будешь выполнять файловые операции...
54 2057802
>>57551
В каком смысле по очереди?
Пока может принимать что то отдного, не может от другого?
image.png5 Кб, 321x146
55 2057813
>>56387
Везде так
56 2057823
>>55412

> почему PIL пережимает


потому-что шакал
57 2057843
Анончик не шлите нахуй, пожалуйста. Как дела с работой обстоят? В дс 2.5 вакансии джуна на хх. Вкатиться вообще реально?
58 2057875
>>57843
Все вкатыши пошли на курсы с гарантией трудоустройства и трудоустроились, очевидно же.
59 2057886
>>57843
Так джунов никто и не ищет, смотри миддлов
60 2057897
Как просто написать интерфейс для питон скрипта что запускаеться через строчку с аргументами? На телефон интерфейс.

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

Как просто реализовать апкашку что бы был интерфейс для запуска + оно все библиотеки устанавливало?
61 2057902
62 2057906
>>57902
Он в любом случае что то да будет принимать, если есть соединение.
63 2057916
>>57843
Джун по ХХ это "опыт работы 1-3 года". Таких вакансий много. Мало вакансий стажёров без опыта.

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

Когда хотят миддлов, ставят минимум 3 года.
64 2057918
>>57551
Есть вариант делать это через select'ы. Но в 2021 надо работать с asyncio, вот как раз для этого и предназначен в первую очередь, в кишках там те же select/epoll.
65 2057933
>>57918
так мне асинхронность не нужна, сервер по идее должен работать как-то так:
дельта1
дельта2
бесконечный цикл
____создание сокета первого клиента
____отправка дельт первому клиенту
____ожидание данных
____изменение дельта2
____закрытие сокета первого клиента
____создание сокета второго клиента
____отправка дельт второму клиенту
____ожидание данных
____изменение дельта1
____закрытие сокета второго клиента
Screenshot from 2021-06-05 15-24-36.png57 Кб, 808x308
66 2057962
>>57933
Если последовательно, то в чём проблема? Пример из документации питона просто один-в один то, что тебе нужно
67 2057967
>>57933
Нахера ебать себе мозги низкоуровневой хуйней которую ты в любом случае - инфа 100% - не сделаешь как следует когда есть готовые варианты с fastapi, aiohttp или flask на худой конец
68 2057970
>>57967
Ему нужен не HTTP, а интерактивные сокеты.
69 2057974
>>57970
Ты же в курсе что можно послать HTTP запрос на другой сокет локалхоста вообще как нехуй? И это в целом норма для приложения которое разбито на сервисы
70 2058013
Аноны, блин, разъясните мне, в чем смысл Setters и Getters в Питоне?

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

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

чтоб создать интерфейс для чтения/записи данных определенным образом
72 2058019
>>58013
Посмотри декоратор property в документации.
Там заодно обьяснется, зачем это нужно.
73 2058051
>>57974
Сокеты это протоколы низкого уровня. HTTP это относительно сложный высокоуровневый протокол с какими-то возможностями и большими ограничениями.

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

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

В то время как на базе обычных сокетов и tcp это реализовать очень легко.
74 2058058
>>58013

>Ведь можно просто сделать открытый self.x


Поведение свойства x может быть достаточно сложным. Например, это может быть количество элементов с каким-то свойством в объекте, размер буфера и т.п.

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

Они нужны, например, для того, чтобы можно было валидацию данных добавлять, чтобы ты не мог некорректное значение в переменную записать. Либо когда запись требует дополнительных действий, перестройки индексов, внутренних структур данных и т.п. При этом, чтобы для пользователя сохранился простой вид object.x, вместо object.set_x()
75 2058060
>>57962
проблема в том, что во всех примерах создают сервер для одного клиента, я не понимаю как нормально реализовать переключение между клиентами
76 2058062
>>58060
Отрываешь сокеты и пихаешь в лист, потом итерируешься по нему.
77 2058071
>>58060
В примере из доки клиенты подключаются последовательно. Сначала один, затем другой.

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

Я бы советовал глянуть на asyncio подход, раз ты с сетями работаешь.
79 2058074
>>58051

>Для этого HTTP не подходит, потому что в HTTP клиент посылает данные, и потом уже от сервера ждёт ответ


...
Вообще-то нормальная практика это передача callback-url
80 2058096
>>57551
while True:
принимаешь подключение
создаешь поток для клиента
передаешь ему клиентский сокет
81 2058097
>>58071
sock.listen(2)
sock.accept()
сколько в таком случае вернется соединений при подключении двух клиентов и что изменится если будет sock.listen(1)? где должны находиться ацепт и листен в данном примере>>57933?
82 2058102
>>58058
Спасибо добрый анон. Теперь вроде ясно.
83 2058156
Что значит такое в питоне _, например for _ и тд, что это?
84 2058157
>>58156
Переменная
Так ее пишут как правило чтобы намекнуть что это хуйня и по факту она не используется:

for _ in range(10): print("hui sosi")
85 2058187
>>58156
Переменная, которая никак не используется. Это больше из традиций Go, где ты обязан использовать переменную, иначе не скомпилируется, и только для _ предусмотрено специальное исключение. В питоне как-то особо с этим и не сталкивался.
xpyCjQmnVwE.jpg76 Кб, 720x711
86 2058216
Не знаю, куда с такими проблемами писать, напишу вам.

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 :
изображение.png302 Кб, 458x344
87 2058251
>>57015
>>57012
Спасибо. Как обычно пытался первый раз, писал "нельзя ловить хуй из сторонних библиотек", второй раз попытался и получилось.

Почему нужно быть настойчивее даже в программировании?
88 2058640
Челы, дайте рекомендацию по книжке для изучения пайтона, только не с основ проги. Спасибо
89 2058641
>>58640
А что ты умеешь? Пролистай этот тред и прошлый. Были рекомендации с обоснованием.
90 2058670
>>57551
Читай тут https://realpython.com/python-sockets/
Там есть примеры с мультиклиентами
91 2058677
Сеньоры, мидлы уделите минутку
Какие пет проекты на питоне написать, чтобы вырости до junior'a на ту же самую удаленку?
Чтобы зацепить postgresql,celery, etc и в целом получить какой-то опыт
А не тупо писать всякие CRUD бложики
Спасибо
854579600.jpg34 Кб, 600x400
92 2058685
>>58677

>удалёнка


>джун


выкатывайся
93 2058690
>>58685
Нихуя, это уже квест масштаба не только работы но и жизни.
Буду рад любой инфе за пет проджект
Мимо опыт веб макакой/верстальщиком
94 2058726
Ребят, кто за докер шарит? Хочу чтоб файлы, которые создаются в контейнере, так же создавались и в папке на хосте. Создаю volume, но он работает только в одну сторону. Тип файлы с хоста отображаются в контейнере, но не наоборот. Кто знает в чем проблема? Вот строчки из docker-compose:
volumes:
- ./img:/img
- ./img/products:/img/products
95 2058728
Ребят, кто за докер шарит? Хочу чтоб файлы, которые создаются в контейнере, так же создавались и в папке на хосте. Создаю volume, но он работает только в одну сторону. Тип файлы с хоста отображаются в контейнере, но не наоборот. Кто знает в чем проблема? Вот строчки из docker-compose:
volumes:
- ./img:/img
- ./img/products:/img/products
96 2058754
>>58726

>Тип файлы с хоста отображаются в контейнере, но не наоборот.


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

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

Попробуй подключиться к работающему контейнеру и посмотреть, как изнутри каталог выглядит.
97 2058843
>>58216
ты тянка? что за котёнок на пике?
image.png23 Кб, 521x328
98 2058849
Нужно переопределить присвоение атрибута, но всё равно присваивать его. Вопрос: как не уйти в рекурсию? Я сделал через обращение к методу суперкласса object, но помню что был другой вариант.
23.png539 Кб, 406x600
99 2058877
Решал задачки и назрел концептуальный вопрос по проектированию классов. В принципе любой из перечисленных способов будет работать,но с точки зрения ООП , какой из подходов верный?

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

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

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

Что думаете аноны?
100 2058878
>>58849
if key == "a":
___self.__dict__["a"] = value
101 2058885
>>58878
Точно! Спасибо.
102 2058910
Единственный способ - это учить по книгам?
103 2058931
>>58910
Да
Минимум 10 книг надо
104 2058951
>>58910
Да хоть по частушкам.
Пиздец вы безинициативные. Раньше босые десять километров через лес ходили в -40, чтобы почитать в сельской библиотеке лутца, а у вас мильйон курсов, книг, статей и презентаций, учи не хочу.
изображение.png191 Кб, 400x386
105 2059018
>>58910
Если ты няшний можешь найти сеньёра в годах
106 2059417
>>58910
Выбираешь конкретную задачу = > Идешь по курсам = > Полируешь 1000-страничными книгами и документацией
107 2059491
Есть у кого "лёгкий способ выучить python 3 ещё глубже"?
108 2059524
>>59491
Это зед шоу? Вроде же говорят, что хуйня, ещё и переводное.
109 2059544
>>58910

> Единственный способ - это учить по книгам?


Какие же вкатыши ебланоиды, я просто охуеваю от вас. Раньше не было вообще нихуя. НИ ХУ Я не было, сука. У тебя есть возможность не поднимая жопы написать: "как мне, ебаному дауну, выучить питон?" в любом поисковике интернета. И тебе выдадут гайды, курсы, бесплатные видосы, бесплатные сканы книг. СУКА ТЫ ЛЕНИВЫЙ ХУИЛА ПИЗДУЙ УЧИ УЧИ СУКА УЧИ
110 2059546
>>58951
Вот этого двачую. Сейчас Войтивайти может буквально даже умственно отсталый ребенок который не умеет говорить, а вкатыши на харкаче ноют, что им, сука, КНИЖКИ НУЖНО ЧИТАТЬ.
111 2059550
>>59524

>Это зед шоу?


Да.

>Вроде же говорят, что хуйня


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

>ещё и переводное


В каком плане переводное?
112 2059562

> Напишите свой собственный генератор псевдослучайных чисел, если число выходит чётным, выведите "NUM", в остальном случае выведите число



Я не понимаю нахуя нужно такое решать в моей ебучей шараге + у меня ничего не получается. Что делать, анон?
113 2059572
Вкатыши, ваше будущее
https://ebanoe.it/2020/08/26/junior-for-500-dollars/
114 2059574
>>59572
Какое счастье, что мой провайдер забанил это говно.
115 2059591
>>59574

> вкатыш не способен обойти пук ркн


Охуенные нынче погромеры
116 2059612
>>59591
Могу. Но зачем мне обходить блок РКН ради сайта со статьями нытиков?
117 2059717
>>59612

> обходить блок РКН


Потом ещё придётся мотоциклы на картинках выискивать, чтобы ПРОЧИТАТЬ это нытьё. Не написать что-то, а тупо прочитать. Совсем ебанулись они.
119 2059743
>>59725
С первого взгляда смотрится как нормальная бизнес-модель. В тебя вроде как инвестируют, заинтересованы в твоём успехе, а получают процент только в том случае, если ты устроишься. Вроде как очень честно и адекватно.

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

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

В общем реально для них самая выгодная модель не в том, чтобы тебя учить, а в том, чтобы набрать много лохов, и не вкладывая толком ничего в них, стричь тех, кто всё-таки сможет сам устроиться.
120 2059748
>>59743
Хотя нет, там наебательство ещё проще и такое более кондовое. В общем богата Россия на разводилово.
121 2059752
>>59612
ВРЕТИИИИ
122 2060169
Сап питонач
Кто-то встречал библиотеку нормальную для работы с инстограмом? Раньше был instabot но он вроде загнулся...
Или вы такими детскими хуйнями не занимаетесь и все тут большие дяди с интернет комерцией?
123 2060219
>>60169
так инстаграмм и есть интернет коммерция же, причем анальная
124 2060276
>>60219
получается я по адресу стучусь к вам ?
125 2060311
>>60276
ну тут уже мои полномочия все
126 2060323
>>60311
Понятно, спасибо тогда и на этом :)
127 2060374
Есть ли сайт, где можно вбить библиотеки и их версии чтобы посмотреть, будут ли они работать с питоном нужной версии, и еще лучше, если будет показывать проблемы с зависимостями библиотек между собой.
128 2060469
>>60374
pypi.org. Вообще, pip сам ищет пакет подходящий для твоей версии питона по тегам(вот таким https://www.python.org/dev/peps/pep-0425/#details ), и если создатель пакета все указал правильно, то проблем быть не должно.
По разрешению конфликтов, значит, команда pip check должна находить конфликты, но разгребать самому придется. Автоматически разрешать конфликты должен уметь Pipenv, вроде еще Poetry, и что-то еще было, не помню. При том каждый из этих пакетных менеджеров (или как они там называются) использует свой файл зависимостей по типу requirments.txt, только другой. Я лично ничего из этого не использую, ничего конкретнее не подскажу.
129 2060699
Сука, не могу решить эту задачу:
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.
130 2060703
>>60699
Что там решать, они уже сами решили.
131 2060707
>>60699
Ребенку с домашкой помогаешь?
132 2060712
>>60707
Ребенок - это я. Долгое время справлялся, но тут уперся в стену. И решений готовых нет, потому что сайт не очень популярный.
133 2060713
>>60712
А что за сайт?
134 2060718
>>60713
Python Principles - Challeneges 3
135 2060721
>>60718
Спасибо. Посмотрю потом что там за задачки. Эта уж слишком простая.
136 2060722
>>60699
def x(num):
add = int(num)
add += 3
return(add)
137 2060728
>>60722
Спасибо, хоть один нормальный человек.
Без названия (2).jpg57 Кб, 585x680
138 2060743
Парни, как в Пистоне можно открыть несколько файлов с текстом сразу и, скажем, единым текстом парсить их?

пик_рандом
139 2060762
Слушайте, а есть для питона такая прога, как Devel studio для PHP?
140 2060790
>>60743
Если я правильно понял, то просто заводишь одну переменную и по открытии каждого файла в нее добавляешь контент, в чем проблема?
kompik.png30 Кб, 1003x461
141 2061388
Извиняюсь за тупой вопрос, но что я должен написать в функции чтобы появился метод show?
142 2061392
>>60762
Какая такая? Что бы интерфейсы клепать?
143 2061396
>>61388
что написать в методе чтобы появился атрибут

фикс
144 2061405
>>61388
def show(self)
145 2061407
>>61388
По смыслу всё ок, это ты где-то обосрался.
Судя по тому, что это ipython и отдельный файл, скорее всего ты импортировал много раз, но это не работает, надо делать importlib.reload.
146 2061419
>>61405
self не работает

>>61407
importlib.reload тоже
image.png35 Кб, 959x286
147 2061435
Смотрите, что делаю.
Беру webm, конвертирую через ffmpeg в mp4, сохраняю во временный файл, отправляю этот файл в телегу, удаляю файл.
Есть ощущение, что как-то через жопу все. Вынужден создавать файл с параметром delete=False, потому что иначе будет ошибка при попытке открыть его в строке bot.send_... А так как delete=False, мне приходится после этих процедур удалять файл вручную через os.remove.
Можно как-нибудь красивее? В идеале вообще не создавать файл явно, но вроде как ffmpeg так не может делать.
148 2061450
>>61435
Запускаешь через subprocess с пайпом и всасываешь в io.BytesIO
изображение.png66 Кб, 320x247
149 2061580
Здаров, питоняч. Имею файловую структуру проекта пик 1.
В папке с тестами в тесте test_cl_arguments пишу
from rss_reader.reader import main
Мне пишет NoModuleNamed rss_reader.reader
Сижу, не панятна, хули надо. Так же многие модули подключал и всё норм было. Подозреваю это потому что я ничего не прописывал в __init__.py
150 2061581
>>61580
upd pycharm сам всё предложил
я пишу from rss_reader он сам отлично видит все нужные мне варианты. Но когда тест запускаю залупа вылазит
151 2061588
>>61580
всё, сам разобрался, всем добра
152 2061589
>>61580
При запуске модули ищутся в sys.path, текущая директория тоже там. В случае запуска из tests оно его не найдет, очевидно.
153 2061667
>>61588
Молодец!
154 2061713
Сап, дорогие друзья
Короче говоря, учусь на 3ем курсе физмата на программёра с уклоном в матан, дали курсач, по незнанке сказал "дайте что-нибудь посчитать" (с надеждой на то, что дадут какую-то задачку, а не программирование), В ИТОГЕ
Тема "Аппроксимация кривых монотонными и выпуклыми кубическими сплайнами". Более-менее разобрался с темой, но реализовать кодом не могу. С монотонными кубическими сплайнами всё элементарно, это есть в scipy, тоси-боси и интерполянт найден, но с ВЫПУКЛЫМИ КУБИЧЕСКИМИ сплайнами дела обстоят более категорично...
В инете по теме ничего не нашёл, в библиотеке alglib даже намёков нет на эти выпуклости, помогите кто чем может
На вход: Координаты (в любом количестве, можно просто сразу массив прописать, чтобы ручками не вводить)
На выходе: Интерполянт (т.е. функция)
51864604-aleksey-gordovskiy-kak-nakachat-press.jpg14 Кб, 200x315
155 2061845
>>61713

> Аппроксимация кривых монотонными и выпуклыми кубическими сплайнами



Сука лол. Ты рофл за чистую монету принял имхо.
156 2061856
>>61845
В плане?
157 2061903
>>61713
Студенческие работы лучше без всяких scipy хуярить. А на голом языке самопис хуячить. Я так считаю!
158 2061906
Ш
159 2061910
>>61903
Че еще спизданешь?
160 2061966
>>61388
У тебя на самом деле там в каждой строчке шедевр.

Но для начала сделай
def show(self)
и
show1 = ShowWorker().show()
2021-06-0820-35-31.png125 Кб, 1125x1332
161 2062283
Петухонисты, объясните, зачем вам 3 метода для создания обычной private переменной?
162 2062332
>>62283
По моему, никаких private переменных в Питоне нет, а carA.__model прекрасно доступен как carA._Car__model. Хуйня на экране - синтаксический сахар, благодаря которому можно красивенько атрибут model изменять не через вызов метода carA.setCarModel(model), а через присваивание значения свойству model напрямую, да поправят меня знающие люди.
163 2062360
>>62283
Что ты называешь приватной переменной и зачем они, по-твоему, нужны?

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

Она именно приватная, ты не можешь снаружи достучаться к ней как к __model, равно как и в классе-наследнике ты её не перепишешь.
164 2062366
>>62283
Плохой учебник, неграмотный. Архитектура неграмотная.

Там уничтожение данных, ты перезаписываешь год. Более грамотный подход в том, чтобы хранить оригинальный год внутри, но для пользователя сделать геттер, который будет лимитировать показаный год в соответствии с линией партии.
165 2062410
>>62366

>лимитировать показаный год в соответствии с линией партии


Кошка жена?
166 2062411
>>62332
Даже если сделать настоящие приватные атрибуты, то никто не отменял setattr и прочие патчи благодаря чему в питоне легко замокать сетевые вызовы для тестов например. Главное правильно настроить линтеры в репозитории чтобы запретить откровенно говнокодить и нарушать принятые на проекте правила.
167 2062453
Сап. Появилась задача переписать чатбот для групп в ВК с ноды на питон. Вопрос - какую либу под это дело использовать? В питоне не шарю, использую его чисто для аналитики и автоматизаций. Судя по быстром гуглежу, пацаны советуют использовать асинхронные библиотеки, но какую выбрать? С документацией, если что, разобраться смогу.

Алсо где/как это все хостить?
168 2062515
>>61713
напиши без библиотек.
есть формула как это говно находить?
ну так подставь ее в питон и пидорни.
по сути тебе дали легкую тему, тебе не нужно же пилить это например в виде сайта или программы с графической оболочкой?
image.png24 Кб, 542x270
169 2062529
>>61450
Спасибо за ответ, но я поебался и ничего не вышло.
170 2062530
>>62453

>Алсо где/как это все хостить?


А как это написано и работает сейчас, в версии на noje.js? Питон в этом плане не отличается от ноды. Как хостишь ноду, примерно так можешь хостить и питон.

Я про чатботы конкретно ничего сказать не могу, не понимаю в них совсем.
171 2062537
>>62530

>А как это написано и работает сейчас, в версии на noje.js?


Как полный пиздец, за который я оторвал руки предыдущему горе-разработчику. Бот буквально хостится на домашнем компе для аудитории в лям пользователей,
172 2062544
>>62529
Блин, я тупой, в том же посте на stackoverflow написано, что нужно добавить ffmpeg флаг "-movflags empty_moov" и все будет хорошо. Еще раз спасибо, работает.
173 2062547
>>62529
Там на пару минут погуглить же, всё работает замечательно.
https://ideone.com/gpGXK3
174 2062563
>>62537
Писать ботов - это одна тема, хостинг - это другая тема.

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

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

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

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

А с ботом, надо на логику самого бота смотреть, боюсь что переписать скорее всего означает "написать заново". Разве что внятное ТЗ есть, понятно, как этот бот должен работать. Но в ботов я не умею.
175 2062758
Как в питоне узнать текущее потребление ОЗУ скриптом?
176 2062813
>>60743
filenames=['file1.txt','file2.txt']
text=''

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

parsing_all(text)
177 2063238
>>60169
Я пишу асинхронные многопоточные проги.
Инстаботов в рот ебал.
178 2063308
Какой иде лучше для питона ? Pycharm неудбоен, а visual studiо слишком громоздкий.
179 2063309
>>63308
Никакой. Консоль. Но вообще ты зажравшийся уебок.
180 2063326
181 2063334
>>63309

> Но вообще ты зажравшийся уебок.


Есть такое, да.
В консоле дебажить неудобно. Ну или я тупой.
182 2063416
>>63308

>а visual studiо слишком громоздкий.


В каком смысле?

Я пользуюсь или vim, или VS, когда как.
183 2063418
Не понимаю как практиковаться и что писать чтобы был опыт а не только теория. Вот знаю я кое что на базовом-среднем уровнем про питон. А что делать то теперь с этими знаниями?
184 2063421
>>63418
Упражняшки ебош с утра до вечера. И сделай какой-нибудь проект. Полностью.
185 2063431
>>63418

>Вот знаю я кое что на базовом-среднем уровнем про питон


Скорее всего это на предбазовом или начально-базовом.

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

Если просто учишь язык-программирование, то решай задачи на литкоде.
186 2063532
Кроме pycharm и vscode вообще есть годные ide?
187 2063534
>>63532
1. Хуй сосешь?
2. Пидарас?
3. Линуксоид?
188 2063536
>>63532
Почему всем норм, а тебе нет?
189 2063621
>>63534

> 1. Хуй сосешь?


да

> 2. Пидарас?


нет

> 3. Линуксоид?


нет
>>63536
Да мне тоже норм, просто хотел еще что нибудь попробовать. Да и интересно почему обсуждение других иде вообще нет
190 2063634
>>63621

>почему обсуждение других иде вообще нет


Потому что мужики код пишут, а не на свистоперделки дрочат.
191 2063635
>>63621
Notepad++
19345011.jpg117 Кб, 792x595
192 2063644
193 2063646
>>63308
Wing для новичков.
194 2063649
Я считаю новичку нужен юпитер ноутбук. Он помогает "раскладывать все по полочкам".
195 2063652
>>63649
Там внутри ipython, его достаточно. Но это репл, у него совсем другие задачи.
196 2063659
>>63649
?
Где там дебагер?
Как на модули код разбивать?

нахуй это говно трогать вообще, только bad practises прививает
197 2063662
А через что у вас код расшаривают? В шапке посмотрел все говно какое-то.
198 2063665
>>63659
Я же про новичков. Охуенная тема наглядно решать задачи.
199 2063669
>>63649
А что он делает?
200 2063778
Посоветуйте проект на джанго который может показать мои навыки для позиции Джуниора
201 2063814
>>63778
Заебень интернет магаз.
изображение.png142 Кб, 1843x1200
202 2063829
Чего этот ваш питухон хочет?
203 2063830
>>63829
1. Почему работаешь с винды?
2. Почему ты бля работаешь из диры TEMP?
3. Гугли код ошибки. Чисто виндосовская херня какая-то
204 2063831
>>63830
Работает с винды а для установки pip-а юзает терминал и какие-то идиотские команды
ебанутый
205 2063832
>>63829
Нахуй ты это делаешь, у тебя уже есть пип искаропки.
изображение.png198 Кб, 1903x1560
206 2063840
>>63831
Команды с оффсайта
https://pip.pypa.io/en/stable/installing/

>>63832
Этот чтоли? (пик)
207 2063842
>>63840
Питон ты тоже как-то через жопу ставил?
208 2063847
>>63842
Хз. Инсталляшка с оффсайта.
209 2063850
>>63847
Проебал PATH походу
изображение.png10 Кб, 1900x60
210 2063851
>>63850
Вроде нет
211 2063865
>>63851
В python39\scripts должен быть
изображение.png8 Кб, 751x314
212 2063875
>>63865
Кто? pip.exe или .py .pyc? Не разбираюсь в питухоне просто.
Папка пустая
изображение.png15 Кб, 913x161
213 2063878
>>63875
Хз вобщем
214 2063883
>>63878
Удаляй нахуй и ставь ещё раз, только смотри там всякие опции теперь.
215 2063884
>>63830
В винде пип как-то сильно проще ставится. Нет вот таких вот проблем.

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

У тебя какая версия питона?
набери python --version
и потом
python -m pip
216 2063885
>>63878
А, у тебя 3.9
По идее, там pip идёт в комплекте.
Ты можешь просто с ним работать как python -m pip. Так грамотнее всего работать.
217 2063893
>>63883
Уже перетыкал. Сейчас переткнул ещё раз в другую папку.

>>63884
Версия последняя. Вот прямо сейчас качнул https://www.python.org/ftp/python/3.9.5/python-3.9.5-amd64.exe

>>63885
...
218 2063897
>>63893
не понимаю, что у тебя за проблемы. Включил комп с виндой. Снёс питон, перезапустил, скачал последний, ставлю
Выбираю custom install, хотя это не обязательно. Выбираю для всех пользователей и выбираю добавить в PATH, по-умолчанию этого нет. pip включён по-умолчанию, tcl/tk тоже включены по умолчанию, но проверь. Сколько-то времени ставится, предкомпиляция стандартных библиотек и всё такое, это лучше сделать.

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

Короче заново поставь вот как я описал.
219 2063926
>>63238
твои многопоточные ассинхронные проги связаны с инстой? Если да, то какие хэдеры и к каким ЕП обращаются? Если нет, то спасибо за то что уделили нам время :)
220 2063957
>>63926
Ой, да нахуй кому твоя инста уперлась.
Сборище гламурных шлюх.
221 2064059
>>63957
Там и петровичи сидят ваще то...
Так или иначе что то что другое отличная клиентская аудитория
image.png724 Кб, 786x438
222 2064077
>>63957
Ты из 2010 вылупился что ли?
223 2064221
>>63897
Не могу воспроизвести
224 2064231
>>64221
Это знак, что тебе не нужно вкатываться в бидон.
225 2064241
>>64221
Ты тупой.
изображение.png35 Кб, 570x292
226 2064270
>>64231
Вкатываться мне и не нужно. Я хотел некоторый софт потрогать. Похоже придётся на сервере, но рабочие файлы туда-сюда гонять я рехнусь...
227 2064274
>>64270
Ну попробуй какую-то анаконду тогда, хули.
228 2064276
>>62411
Кокой хитрый халявщик
229 2064735
Как в вашем питухоне создать список из ебаных массивов? Когда я гуглю мне всякая хуйня вылезает типо x = [[1,2,3], [1,2,3]], видимо питухонщики не различают список и статический массив или лезет просто, как блять создать список из массива, ну ахуеть блять, вы мне скажите еще как переменную x = 1 объявить, когда я хочу вычислить определитель матрицы.
230 2064756
>>64735
collections.deque - список
[] - массив

Хуль тебе надо?
(нахуя тебе список-то?)
231 2064761
>>64756

>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.

232 2064762
>>64761
Это не абстрактный класс. Ты что-то не то смотришь
234 2064765
>>64735

>вычислить определитель матрицы


Это тебе в numpy.
image.png3 Кб, 334x198
235 2064768
236 2064771
>>64768
Значит оно.
Забавно что я не успел дойти до них, а теперь будет не нужно. Лол.
237 2064772
>>64771
Ты так и не объяснил, нахера тебе списки
Единственное годное применение для них это двусторонние очереди, все остальное скорее всего байтоебство и нинужно
238 2064774
>>64772
Сори, я >>64761, мимо проходил.
239 2064782
>>64761 лишь значит, что вынесли абстрактные классы в отдельный модуль, сами коллекции никто не трогал. А то не первый раз вижу, что подобные замечания воспрнимают неправильно.
240 2064907
>>64735

>Как в вашем питухоне


Рано тебе ещё в питон. Вот как ты в Си двумерный массивов создаёшь, точнее не двумерный массив, а массив указателей на массивы?
Вот и в питоне примерно так же создавай.
241 2064909
>>64772

>Ты так и не объяснил, нахера тебе списки


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

Что тривиально, но реально если в матрицы лезть, то надо сразу разбираться с numpy. Ну или/и в какие-нибудь специфичные модули вроде array.
image.png4 Кб, 383x59
242 2064930
Это pandas DataFrame, задача добавить столбец, который является логарифмом другого.
Почему никто не делает так, как делаю я, а все делают через numpy?
243 2064987
Бамп
как господь.jpg9 Кб, 190x213
244 2064997
245 2065359
>>64930
Так быстрее: 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
246 2065433
>>65359
Спасибо за ответ, ты очень крут!
247 2065739
Что думаете о https://codecombat.com/?
248 2065748
>>65739
Ну игрульки какие-то, чтобы заинтересовать жеребенка и научить каким-то базовым вещам. Вряд ли там чего толкового научат, чего нет в любой нубской книге или курсе.
249 2065751
>>65748
Куда интереснее, чем ковыряться в нубской книге, между прочим.
250 2065752
>>65751
фор хум хау, как грится.
251 2065758
>>65752
Тоже верно. Но если ты не привык учиться по книгам, то пожалуй игрушка более подходящий вариант.
252 2065787
Анончики, запускаете Джангу в Юпитере? Какие подводные?
253 2065814
Установил поддержку gpu на своем компьютере, увеличения производительности нет. Хотя у меня стоит дерьмовая видюха и нормальный проц, но думал все равно разница минимум в два раза будет.
254 2065815
>>65814
бля не тот тред
255 2065844
>>65814
Блендер?
256 2065990
Как после питона изучать джаваскрикт и реакт, когда там такой пиздец с синтаксисом?
258 2065994
>>65990
Не изучай.
259 2066067
>>65990
Кстати, частенько вижу как хаят использование на сайтах джаваскрипта, особенно на других бордах. Что в нем плохого? Думал свой сайт пилить, но теперь вот думаю стоит ли пытаться избежать использование джаваскрипта или всё это какие-то надуманные бредни анонов с мелкоборд?
260 2066075
>>66067
да похуй что ты используешь, главное чтобы это хорошо работало
Объекты в Python 261 2066120
Сап, аноны.
Я вот решил потестировать списки в Python и нашёл забавную вещь, объяснение для которой я пока что не нахожу

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

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

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

Аноны, поясните
262 2066130
>>66120
В первом случае ты изменяешь список, во втором создаешь новый и присваиваешь его A.
Тупли иммутабельны, поэтому в случае += тоже неявно создается новая, хотя это не слишком очевидно, да.
263 2066140
Ага, вот. https://docs.python.org/3/reference/datamodel.html#object.__iadd__
Если iadd для += не определен, то он использует просто add.
Так что для иммутабельных структур a += b превращается в a = a + b.
264 2066153
>>66140 >>66130
Спасибо!
265 2066302
Увидел вот такую конструкцию:

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

Не пойму как это работает. Нельзя сделать z+=True, а в вышеописанном варианте плюсует. Может кто-нибудь объяснить, почему так?
266 2066307
>>58754

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


в том то и дело, что ничего не сохраняется. В моем случае скрипт скачивает картинки и сохраняет их в папку, но в папке на хосте они не появляются
267 2066308
>>66302

>Нельзя сделать z+=True


Можно. bool наследуется от int, так что он имеет свойства числа.
268 2066379
>>65739
Попробовал этот сайт вчера и сегодня.
Почти прошёл второй остров на этом сайте и поделюсь впечатлениями: играть довольно интересно, но большинство квестов тебе комментариями прямо говорят, что делать. По сути дают не только готовый алгоритм программы - половина программы зачастую уже сделана.
Для детей и желающих попинать программинг чтобы понять каков процесс программирования вообще - сойдёт.
В целом, я думаю, что это меня подтолкнуло к полноценному изучению в целом. Сам до этого кроме Hello world ничего не писал.
Обязательно допройду её до конца и если будет что-то добавить к этому посту - напишу.
269 2066384
>>66302

>z+=True


Можно, потому что True это реально просто 1, но очень грязно.

И ещё, если используется all, то не нужно сначала получать список. Вместо all([...]) лучше написать просто all(...)
270 2066392
>>66379
p.s. говорю о бесплатной версии, подписка стоит 4 бакса, открывает дополнительные уровни и снарягу(как я понимаю нужную для этих уровней).
Где-то половина уровней только по подписке. Вероятно, там и есть нормальная практика где за тебя не строят алгоритмы и прочее.
271 2066403
>>66392
Мне из игровых хуиток понравилось только это https://vim-adventures.com/
Можно реально задрочить миллион этих моушенов и прочих действий. Когда-то прикуплю и возьмусь за это дело, лол.
272 2066414
>>66403

>Мне из игровых хуиток понравилось только это https://vim-adventures.com/


Открыл сайт, запустил уровень и так и не понял что от меня там требуется. Какую клавишу не нажму - ничего не происходит.
Алсо, разве есть другие более-менее приемлимые игровые хуитки?
273 2066415
>>66414
hjkl для движения, а дальше будут открываться новые фичи.
274 2066422
>>66415
Не работает. Вероятно у меня браузер устаревший, как-нибудь попробую в свежей версии попозже.
Спасибо за рекомендацию.
275 2066474
Аноны, помогите, пожалуйста. Как в Джанге чекать данные которые вводит юзер? У меня тема чекать показатели и если данные превышают норму то выдавать False, если все норм то тру. Я соответственно создаю модель типа булиан, но а как именно чекать данные не ебу. Как вообще реализовать это, помогите плиз? мимо нуб
276 2066490
>>66414
Сам не пробовал, но видел рогалик HackNet. Там на си пишут.
277 2066494
>>66490
NetHack
быстрофикс
278 2066501
>>66490
Сяпочки.
image.png33 Кб, 565x625
279 2066555
>>55136 (OP)
Сап шипящие, помогите пожалуйста.
Суть проблемы такова, дана система уравнений с кучей переменных вся хуйня это не так важно, по условиям одна из переменных дана в виде
z = tan(b*x)
b и x естественно уже введены и вот при выполнении функции он ругается что я должен ввести число а не строку а как это исправить я хуй знает, может вы подскажете если что, знаний питона у меня, 15 лекций тимофея хирьянова
280 2066560
>>66555
Пиздец, ну написано прямым текстом в чем проблема.
281 2066563
>>66560
Я вижу что написано прямым текстом, я не понимаю как исправить и поэтому пишу сюда в поисках помощи, типа как заставить еще высчитывать тангенс когда ему уже даны переменные
282 2066575
>>66560
ладно я сделяль, мог бы и не ругаться так
283 2066639
Обязатльно ли вообще создавать отдельные среды под каждый более менее крупный проект?
284 2066644
>>66639
Да и под каждый пет надо, тем более, IDE за тебя все это сделает и будет менеджить
285 2066646
>>66639
Смысл в незасирании системного питона и отслеживании зависимостей, так что надо исходить из этого.
изображение.png6 Кб, 508x127
286 2066657
Что-то не могу понять в каких случаях нужно в классе писать что-то сразу после двоеточия как на скрине, а в каких нужно __init__ использовать.
Просто до этого в уроке всегда __init__ использовали, а тут вдруг написали сразу после двоеточия
287 2066659
>>66644
Она автоматически всё это будет делать при создании проекта и ничего самому делать не надо? Просто я через консоль создавал сейчас отдельную среду
изображение.png8 Кб, 500x180
288 2066664
>>66657
Подождите, я затупил кажется. Тут стр вместо инит получается, да? А вообще первая функция всегда будет выполнять роль __init__ и неважно какое имя дать?
289 2066667
>>66657
>>66664
Почитай про ооп, нет смысла обьяснять. Хули ты вообще полез в эти ваши джанги без базового питона?
290 2066670
>>66659
Да, можешь даже выбирать какую именно, virtualenv, pipenv, poetry (с плагином в пайчарме) и т.д.
291 2066767

>for i,n in b,b2:


Что если массивы разной длины? Обработает ли всё, нужно ли проверять if n is None?
292 2066768
>>66767
вот как я сейчас эту возможность обрабатываю
try:
# тут мержим два массива если надо
except IndexError:
try: ret.append(i)
except IndexError: ret.append(n)
293 2066773
>>66768
бля туплю, он же не ходит так - это просто вызывает распаковку элементов массива
294 2066784
>>66773
я вот и не понял, что ты хотел.

вообще смотри на zip и на модуль itertools. Ты найдёшь много чего полезного на разные случаи жизни
295 2066785
Питоновская штука в курсе (линтер?) выдает вот такое:

"'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 строке. Что оно от меня хочет?
296 2066789
>>66785
Понять бы, чего хочешь ты. То есть очевидно, что ты хочешь посчитать сумму цифр в введённом числе. Интуитивно очевидно. Твой код, однако, считает значение числа умноженное на количество цифр в нём.

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

Но тебе это не нужно. Тебе нужно
for symbol in n:
____sum_of_digest += int(symbol)
297 2066887
Всем привет, нужно ли добавлять site_packages в .gitingnore? Вместо него если поставить requirements.txt.
298 2066894
>>66887
Нужно добавлять venv/
И делать requirements.txt, да.
299 2067028
Помогите пожалуйста, учу питон, появился вопрос после просмотра видеоурока на ютуб. Если кто-то может/хочет помочь- отвечайте)
300 2067032
Аноны, помогите, учу питон и после просмотра видеоурока возник вопрос ответ на который найти не могу, может кто подсказать?
301 2067034
>>67032
>>67028
Ты траллишь?
302 2067037
>>67034
Нет, я просто не часто сюда пишу и сразу не понял что первое уже отправилось.
Если ты о том что я задал глупый вопрос то я его задал потому что больше не знаю куда обратиться
303 2067040
>>67037
На стаковерфлоу почитай, это имелось в виду. Типа если гипотетически(нет) ты устроишься на работу связанную с питоном и возникнет такая же ситуация, то что ты начальнику скажешь? "Щас у посонов с двача спрошу, погоди пару дней" ?
Если у тебя код 1в1 с примера, ты перепробовал все вариации со стак оверфлоу и у тебя не работает то что работает у большого количества людей - тогда неси проблему, возможно ты где-то настроил что-то не так, или версия питона у тебя какая-то всратая поставилась, или банально ты list через хохлятскую i написал и тупишь, я хз.
И почему ты просто не задал вопрос сразу?
304 2067050
>>67040
Ого ты объясняешь, уже и пробил меня походу. Спасибо, за такую конкретику но я вот только начал учить и вопрос обстоит очень просто и банально: есть видеоурок на ютуб где я не понял о чем идет речь в определенном временном промежутке и в теории я хочу кинуть тебе ссылку на видос (куда удобно) с таймкодом, после чего ты глянешь этот отрезок и ответишь мне на мой вопрос, если захочешь, разумеется
Nrcx44cEBhU.jpg51 Кб, 448x482
305 2067054
306 2067057
>>67040
Действия происходят с 32:44 по 36:05 как у него получилось сделать так что прога ему ответила "Привет, Тимофей Федорович"?
https://www.youtube.com/watch?v=us7y0UhTq0s&ab_channel=ХаудиХо™-ПростоомиреIT!ХаудиХо™-ПростоомиреIT!Подтверждено
9cd5b63c2b6946978cc9941fe98449f4.jpg15 Кб, 300x220
307 2067068
>>67057
Чувак, ты точно уверен что это твое вообще?
Ну ладно
1)Он делает x(как на уроке математики, икс, типа икс равно 2, буква чтобы в нее записать что-то) = input('Как тебя зовут? '). Только его икс называется name, но я дальше буду писать x.
Инпут это такая хуитка в которую вводятся данные с клавиатуры, можно не писать в кавычки ничего, тогда просто будет моргать курсор, но он ввел Как тебя зовут? чтобы "понять" что программа спрашивает. В больших программах может быть много вопросов, поэтому он туда написал вопрос Как тебя зовут.
2)Потом он пишет print(f"Привет, {х} !")
Принт печатает что-то на экран. В данном случае используется так называемая F-строка(от английского Fuck you, leather man), если перед кавычками поставить f букву, то потом ты можешь в {} такие скобочки засовывать свой икс или любые другие буковки к которым привязаны какие-нибудь слова или циферки.
3)Он запускает это как скрипт, программа спрашивает у него тот самый input, на экране вопрос из кавычек Как тебя зовут? Он пишет Тимовей Баранович, в икс записывается строчечка текста "Тимофей Баранович" и теперь х == "Тимофей Баранович"(два равно это такая магия означающая охуенно сильно равно которое показывает что это намного равнее чем просто равно, либо равно либо ты идешь нахуй)
Следующая строчка программы это print, она печатает то что там в кавычках, Привет, ... вместо этих трех точечек она подставляет х, потому что он был в {} скобочках и находился в Fстроке, а икс у нас как мы уже запомнили равно тому что он ввел с клавиатуры, а именно "Тимофей Баранович", в итоге получается "Привет, Тимофей Баранович!"
Ну как-то так, удачного тебе путешествия в мир программирования чтоли.
покормил
308 2067090
>>67068
Чтобы это понимать, нужно математику уровня 2-3 (для моих лет 3-5) класса пройти, тут даже как такокого программирования нет (ну под самим капотом есть, но за тебя уже всё реализовано). Если чел сидит на двоще, но не понимает этого, то я не представляю, как он смог на сам двощ, и тем более в /pt/ зайти. Это же надо на кнопочки набивать что-то с клавиатуры, а браузер это как-то магически понимает и тебя в тред телепортирует.
309 2067093
Как удалить одинаковые строки из файла?
310 2067094
>>67090
Я попробовал, сири на запрос "Двач программирование питон тред" выдает ссылку почему-то на 99й тред кек. Так что да, это загадка, может он догадался как в конце нажимать на перекат? Работают ли вообще перекаты в архиваче?
311 2067095
>>67093
Читаешь построчно, пишешь построчно. Заводишь сет для строчек и добавляешь в него прочитанное, а если уже есть, то пропускаешь запись.
312 2067100
>>67093
Они же у тебя не соседние?
Берешь форлупом первую и сравниваешь ее со всеми, стрипуешь если совпадает, добавляешь i+1 и дальше погнал вторую и т.д. Все это с with open('zaloopa.huy') as file:
314 2067114
>>67110
Неплохое решение, хотя с rstrip обосрались, он все вайтспейсы сожрет.
315 2067149
>>67068
Хоть и с подъебами, но спасибо.
А вот " == " это то же самое что и " is "?
316 2067158
>>67149
Смотри, просто = это присвоение, т.е. если сделаешь
х = 5
то он будет равен 5
Но если ты потом в программе сделаешь
х = 10
То икс теперь будет равен 10, ты перепишешь значение
Если же тебе надо спросить у программы РАВЕН ЛИ ИКС 10, то делаешь
x == 10
И комп тебе ответит TRUE, т.е. да, а если ты не делал х=10, и икс у тебя равен 5, то комп ответит FALSE. Таким образом ты можешь делать так
if name == "Вася":
print("Привет, Вася!")
else:
print("Я знаю только Васю, пиздуй отседова, незнакомец")
Т.е. если name == "Вася" выдает True, то условие первое выполняется и программа здоровается с Васей, но если name не равно "Вася", т.е. False, то программа посылает не-Васю к хуям. Так же ты можешь использовать != это тоже самое только НЕ РАВНО, ну там еще больше, меньше, больше и равно, меньше и равно и еще ряд сравнений.
317 2067192
>>67095
>>67100
>>67110
Я забыл уточнить что строк около 50к в тестовом файле, в рабочем +- 1кк
318 2067200
>>67192
Для варианта с хешированием это не особо критично.
319 2067205
>>67158
Спасибо, все предельно ясно)
320 2067349
>>66789
Задание такое было:

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

Задание выполнено. Мне просто интересно на что у меня линтер ругается.
321 2067363
>>67349
Потому что это не питоник цикл, а кривое подобие фор из си.
Вместо for n in range(len(lst))
val = lst[n]
делается for val in lst
или for n, val in enumerate(lst), если нужны индексы.
322 2067414
>>67363
Consider using enumerate instead of iterating with range and len

Это как раз про это? Разница между enumerate и iterating?
323 2067426
>>67414
Да.
324 2067437
>>67426
Ок, спасибо.
325 2067442
>>66667
Да я вроде читал про классы и подобное, но тут что-то понять не могу этот момент
326 2067671
Насколько реально на джанго сделать кинотеатр?
327 2067809
>>67057
О, этого чувака знаю, он в мфти вроде преподает
328 2067815
>>55136 (OP)
Как вообще этот ваш питон работает? Из него можно сделать exe'шник?
image.png3 Кб, 289x213
330 2067903
Почему так?
331 2067912
>>67903
В функции ты просто переназначаешь arr в локальном скоупе.
332 2067915
>>67903
Присваивание с таким же именем создает новую переменную внутри функции, старая не используется, что бы она изменялась нужно юзать global
image.png8 Кб, 416x185
333 2067936
>>55136 (OP)
Как в блядском списке от 0 до 700 , выести нечетные сотни, я блять не могу ебучее условие проверки придумать, пиздец блять отупел
просто надо вывести на экран 100 300 500 700.
Я могу сделать как в списке от 0 до 7 вывести 1 3 5 7 , а как это сделать для 700 я хуй знает сука, помогите пожалуйста
пример взят из интернетов
334 2067940
>>67936
Тебе можно в range прописать шаг в сотню, чтобы у тебя список был не 0,1,2,3,......,699,700, а просто 0,100,200...,600,700?
Или тебе нужен именно полный список в котором 700 элементов?
335 2067941
>>67936
if n % 100 == 0 and (n // 100) % 2 != 0
111111.png3 Кб, 405x282
336 2067943
>>67940
Потому что если так можно это будет самым не фимозным решением
337 2067944
>>67943
Я не сделал нечетность, ну ты понял о чем я
338 2067945
>>67943
Сотни все делятся на 2, норкоман.
339 2067946
>>67940
Можно и как ты говоришь
>>67941
Блядь ты ебаный гений храни тебя абу
сука ведь это реально очевидная хуйня, серьезно большое спасибо
340 2067947
>>67945
Я блин спросил можно ли ему использовать step в range в принципе взяв его код и добавив степ
341 2068090
342 2068093
Ебучая макака

>>67671
Зависит от того, что ты подразумеваешь под кинотеатром. В том, что я понимаю под кинотеатром - реально.
343 2068105
>>58685
Ну я джун на удаленке, чего хотел?
image.png3 Кб, 493x52
344 2068145
345 2068193
>>67943
Если тебе нужны нечётные сотни, то можно сделать такую проверку
if i % 200 == 100:
___print(i)
r102813Wx1Vb.jpg27 Кб, 500x483
346 2068204
>>67936
Очевидно же
347 2068214
>>68193
Ну и как ты случай 100 таким кодом обработаешь?
348 2068221
>>68214
100 % 200 = 100
В чём проблема?
349 2068238
но ведь там человек уже выложил идеальное решение с двойным условием...
350 2068239
>>67903
Тебе внутри функции надо не
arr = [3, 4]
делать, а
arr[:] = [3,4]
351 2068245
>>67860
Работает, просто съезди за границу и попробуй оттуда зайти. Ну ты понял.
352 2068252
>>68238
Да, несколько вариантов с двумя проверками и ни одного очевидного. Вот это и называется "вышка нинужна". Потому что если такие понятия, как "кольца вычетов" знакомы, просто слишком очевидно решение с одной проверкой, что не понятно, как можно придумать вариант с двумя.
353 2068264
>>68252
Ну вот зато тебе вышка пригодилась вместе с кольцами вычетов.
Можешь теперь на вопросы анонов в /зк/аче отвечать.
354 2068277
>>68264
Вообще я попросил бы не осуждать, я так тешу свое самолюбие в аниму тредах когда речь заходит за споры по квантовой физике
355 2068397
>>68277
Как пропатчить KDE под FreeBSD?
356 2068400
>>68397
сыендук разлогинься
image.png130 Кб, 1838x647
357 2068508
Эксперт, ебать. А я думал подучить чего.
Хотя несколько секций есть интересных.
16008522623750.png581 Кб, 1180x1200
Новый ньюфаг итт 358 2068586
Решил учить питон, погряз в информации пиздец, дайте общих советов плиз, а то чувствую что сейчас полезу не туда. Что я понял: рот ебал этого ютуба, нужно читать книжки и только книжки. Потому что либо там вроде нормальная информация типа для совсем новеньких с какими-то небольшими упущениями, либо какой-то ебучий хауди хо со своми "питон за 1 час", где не понятно вообще нихуя как он работает с терминалами. Собственно хочу начать с питона для детей, норм для того кто вообще никак не связан с программированием? Ютуб не смотреть вообще, чтоб не ёбнуться и не обосраться раньше времени. Хотя мб на ангельском есть что-то годное?
Ну и тупой вопрос: а что на питоне-то делают и какие перспективы для меня? Ну я понял, что бэкэнд джанго и всё остальное, короче типа делают сайты. Если ещё и фронтенд учить, то смогу делать сайты и зарабатывать как бы. Что-то слышал про нейросети, но нихуя не понял. И вроде всё, больше никто не заикается. Вроде есть какие-то фреймворки для игр, вроде есть для приложений, но даже в шапке написано, что лучше не надо. Можно каких-нибудь примеров того, что питон не только бэкенд? Я полюбому буду учить питон, потому что для новичков и я хочу вкатиться в программирование, но хочется понять что я учу ёпт
40490.jpg79 Кб, 398x561
359 2068590
>>68586
Тебе реально не стоит учить питон(да и вообще кодинг)

>нужно читать книжки и только книжки.


Зачем? Тебе надо на 50 страниц описание что такое цикл?

>нихуя как он работает с терминалами.


У тебя IDE в видео вызывает тупняки?

>Хотя мб на ангельском есть что-то годное?


Нет, хуйня идея, вообще за пределами рашки о Питоне не слышали, там куцые какие-то недогайды по еще второму питону, нерекомендую

>а что на питоне-то делают и какие перспективы для меня?


Все делают, но в других языках это делать лучше

>Если ещё и фронтенд учить, то смогу делать сайты и зарабатывать как бы


Не сможешь

>Что-то слышал про нейросети, но нихуя не понял.


Вот тут никакого подъеба, все верно

>Можно каких-нибудь примеров того, что питон не только бэкенд?


Ну это еще графики и таблички.

>полюбому буду учить питон, потому что для новичков


Пизда

А вообще представь если бы ты заинтересовался, например, свифтом, у тебя бы ни одного вопроса не возникло, ни про книжки, ни про применение, ни про деньги во фронте, ни даже про игры. Он такой же "простой", я тебе больше скажу - там даже двоеточие не надо ставить, вообще легкота, рикамендую. И гайдов много на английском, эпол же популярная фирма.
360 2068595
>>68586
Учи по Степику. Видосики для зумеров, книги для опытных уже.
361 2068602
Ппп
362 2068605
>>68602
аскаль?
363 2068669
>>68590

>Тебе реально не стоит учить питон(да и вообще кодинг)


Да ладно, будет на говнокодера больше. И не такие долбоёбы вкатывались.

>Зачем? Тебе надо на 50 страниц описание что такое цикл?


Чтоб мне как дауну объясняли на пальцах. У меня информатика была на уровне "напишите текст в word".

>У тебя IDE в видео вызывает тупняки?


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

>Все делают, но в других языках это делать лучше


Это все говорят, что делают. Только чёт инфы нихуя нет толком кто и что делают.

>И гайдов много на английском, эпол же популярная фирма.


Толку-то со свифта, если у меня из техники яблочных только древний айпод?
364 2068693
365 2068746
>>68669
Учись работать с консолью, лучше в линукс. Если сидишь на винде-10, то там можно виртуальный линукс запистить, если только у тебя не home edition. Версии pro, edu, entertrise умеют. Можно и лучше даже сразу докер поставить.

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

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

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

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

Если хочешь в бэкенд, то без этого делать там нечего, подразумевается просто. Даже в вакансиях обычно прописывают, что надо уметь с линуксом работать.
image.png21 Кб, 413x347
366 2068797
>>55136 (OP)
Сап програмач, есть вот такой код на пикриле, вроде все нормально, но преподша заеба тредует чтобы я ввел z как переменную

>переменная z меняется также, как и переменные a и b, т.е. должна быть переменной вашей функции var14


ее слова, но как это сделать если z от варианта к варианту меняется и его надо каждый раз расчитывать? Типа сделать какое то обращение, но звучит бредово как то, типа брать в переменную то что уже посчитано , мб вы подскажете
367 2068802
>>68797
Твой код вообще не должен работать.
У тебя функция просит 6 аргументов. При этом когда ты вызываешь, ты передаёшь только три. Уже исключение будет.

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

С математической точки зрения и в плане внутренних переменных тоже не всё понятно.
368 2068804
>>68802
Оно все работает, могу скрин предоставить, да и в принципе мне больше надо сделать что просит это пизданутая чтобы отъебаться
Она еще одно более ебанутое задание дала которое вообще составлено так что ты должен сам понять что она имела ввиду.
Помоги пожалуйста если знаешь как осуществить задуманное ею
369 2068806
>>68802
>>68804
А ты про начало, там на z1 z2 z3 в самом начале не обращай внимание, я их просто так написал эксперементирую, там просто a, b, x
image.png18 Кб, 342x353
370 2068809
>>68802
Вот оно как по нормальному выглядит
371 2068810
>>68806
Дай скрин кода, который ты хотел бы сдать. Либо срин кода в том состоянии, когда твоя преподша претензии выкатила.
372 2068814
>>68810
выше дал
image.png60 Кб, 674x122
373 2068815
>>68810
а который хотел бы сдать

>>переменная z меняется также, как и переменные a и b, т.е. должна быть переменной вашей функции var14


А пикрил само задание как выглядит
374 2068828
>>68815
Задание смотрится так, что у тебя z это функция, которую ты должен передать в твою функцию в качестве аргумента, наравне с a и b

То есть ты z должен не вычислять внутри, а получать снаружи.
375 2068835
>>68828
Верно, но как ее получить снаружи? и как передать? я вот этого нихуя не понял
376 2068839
>>68835
Ты должен или сначала определить как функцию, и передать
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)
377 2068843
Питоноаноны, что еще нужно маст хэв, что бы наконец зарядить резюмеху, по которой всё таки кинут тестовое задание, если условно я знаю синтаксис, ооп, SQL и немного HTML+CSS+JS (чисто на уровне спиздить платный шаблон и запустить на нём свой красивый сайт-визитку-резюме)? Я готов к собесам?
378 2068848
>>68843
Очевидно нужны конкретные фреймворки, django/flask/aiohttp/fastapi

Наверное это у тебя есть, иначе не понятно, как на питоне что-то делать для веб, но ты не написал.
379 2068853
>>68839

>вызов:


>var14(0.5, 4.5, lambda a, x: math.exp(a∗x), x=c)


Вот этот способ мне больше нравится, но теперь он вызывает

TypeError: unsupported operand type(s) for *: 'float' and 'function'
типа он z распознает как функцию и не хочет работать
380 2068856
>>68853
Поменяй на обычную звезду
Я использовал левую юникод-звезду, потому что обычные двач проглатывает.
381 2068858
>>68853
А, другое, в коде используй не
y = x∗z
а
y = x∗z(a, x)
ты ведь функцию в своём коде вызываешь
382 2068859
>>68848
Я не говорил про веб. Я в целом и общем знаю питон и SQL (условно). С таким багажом разве только в веб дорога? я без прретензии, просто интересно.

>django/flask/aiohttp/fastapi


Все 4 сразу или имеется ввиду по отдельности что то одно?
Джангу ковырял, суть и цели джанги понял, надо, я так понимаю основные классы выучить, подразумевается это? или пройти пройти один пиздатый курс по настройке джанги достаточно?
Что подразумевается под знанием фрэймворка? Понятно, что всякие мелкие пакостные хитрости я и питоновские все никогда не выучу, но парсер например написать могу или бота для телеги поднять.
image.png10 Кб, 492x106
383 2068865
>>68858
>>68856
Бля анонче спасибо тебе огромное, прям вышло, щас надеюсь она отъебется от меня наконец
384 2068874
>>68859

>С таким багажом разве только в веб дорога?


Нет, тебе очень пригодится хтмл в байтоебстве с робо-руками на заводе.
Обычно идет что-то одно, но ты никогда не угадаешь, они все применяются на разных сервисах и по своему уровню "крепкости жопы" и по желанию юзать то или иное у главного. И будут сайты-визитки на джанге и кинотеатры с базами данных и мл моделями на фласке. Энивей они примерно одинаковые, это все REST, графен, и дроч sql, отличаются только названия команд для этого всего.
385 2068877
>>68093
Обычный где можно смотреть кино. Такое можно сделать на заказ, там еще замутить видобалансер и прочее. Я подумал, что можно на джанге сделать. Можно ли?) Делают на wp потом юзают видеобалансеры и статьи к фильмам.
386 2068881
>>68859

>Все 4 сразу или имеется ввиду по отдельности что то одно?


Зачем нужны веб-технологии вроде html/css/js, если ты не можешь их применить?

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

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

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

flask/aiohttp хороши для прикручивания веб-морд к каким-то сервисам.
387 2068886
>>68877
Как представляю, от джанги тут будет самый минимум, основная работа это бэкенд по хранению видео и балансировке нагрузки, фронтенд для реализации плеера и т.п.

Тебе надо расписать задачу, функционал, а уже потом думать, какую часть фунционала можно на каком-то фреймворке сделать.
388 2068920
>>68886
Да готовых решений куча, включая сделать кинотеатр под ключ, на питоне такого не видел. Знаю только его, подумал, что бесплатно сделал бы такое сам. А там, все как обычно, трафик.
389 2069434
У меня есть подключение по websoket, по которому постоянно принимаются данные. Как я могу получить к ним доступ из других функций?
390 2069483
>>69434
Делать или многопоточное приложение, или асинхронное. Есть несколько способов, как это делается.

Что за вебсокет, через какую библиотеку?
391 2069492
>>69483
websokets Первый раз с таким работаю.

То есть получается нужно будет взять asyncio:
Добавить в луп функцию, которая обрабатывает получение данных по вэбсокету, указать в ней, чтобы записала данные к примеру в файл или глобальную переменную,
Добавить в в луп еще одну функцию, для обработки уже самих данных
И гонять это все в цикле?
392 2069503
>>69492
Ты оформляешь фунцию чтения данных из вебсокета в отдельную задачу. Тут надо оговаривать, у тебя один вебсокет или много, что происходит в случае обрыва соединения и прочие моменты.

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

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

Это самый общий подход, очереди сообщений, каналы передачи данных и т.п.
393 2069509
>>69503
Ок, буду копать в этом направлении, спасибо.
394 2069533
Сап, вкатился где-то пол года назад. Сейчас работаю на проекте с довольно серьёзными технологиями для джуна - кубер, асинхронные фреймворки, nosql хранилища и тд. Я смогу ещё через пол года вкатиться на миддла с таким стеком или пойду нахуй? Вот просто интересно, удавалось ли местным антуа за максимально короткие сроки перекатиться в мидлы/сеньоры? Просто ебал ещё несколько лет батрачить за ебаные копейки и ждать, когда кабан рассщедрится на +10к к зп.
395 2069541
>>69533
Просто через полгода идешь искать новую работу и смотришь на то, что тебе предлагают
396 2069672
>>69533
пиздец, как ты так быстро вкатился и как так быстро взяли на работу??
поясни
397 2069681
Я не понимаю лямбда-функции. Я вообще блядь их не понимаю. Мб есть у кого-нибудь хорошие материалы по ним для совсем тупороидов?
398 2069687
>>69681
Я только начал, что такое лямбда функции и зачем они могут быть нужны? Попробуй мне объяснить.
399 2069690
>>69681
Что там понимать?
Функции это объекты в питоне, их можно передавать, возвращать и хранить в структурах.
И если тебе нужна такая передаваемая функция на один раз, то вместо определения с def ты можешь захуярить лямбду прямо на месте.
400 2069691
>>69687
Это ещё один способ объявления функций, как def, только их ещё можно использовать сразу по необходимости. Нужны они когда сама функция настолько незначительна, что создавать через def ее не имеет особого смысла, например, когда в сортировке указываешь функцию, которая преобразовывает элемент прежде чем приступать к сравнению.
401 2069692
>>69687
Я так понимаю, что лямбда-функция - это укороченный вариант обычной функции, который используется когда нужно быстро въебать какую-то функцию посреди кода, и которая будет использована однажды и не будет занимать память. Еще помню, что ее иначе называют анонимной, т.к. ее не надо объявлять.
402 2069694
>>69691
Но ты же не он.
403 2069696
>>69690
>>69694
Я не понимаю, почему мне может хотеться использовать лямбда-функции. Почему я не могу обойтись например list comprehension или циклом каким-нибудь? Мне ж все равно эту операцию один раз провернуть.
404 2069697
>>69692
Хорошо. А когда это может пригодиться?
405 2069702
>>69697
Хз, с этим трудности, я понимаю только на словах.
Я помню, когда-то давно писал простой гуй на pyQt, и там нажатие на кнопку делалось через лямбды в этом треде так подсказали - я так и не понял, почему. И в общем-то это единственный пример, который я помню.
406 2069704
>>69696

>Мне ж все равно эту операцию один раз провернуть.


Но есть же случаи, когда операцию проворачиваешь несколько раз, просто делаешь одно и то же. Когда передаёшь фнкцию другой функции, например, как для map() или filter().

Или в пайплайн встроить, например, хочешь обработать строчку
''.join().strip().(тут делаешь какую-нибудь необычную операцию, например, тЕкСт ЗаБоРчИкОм)()
407 2069705
>>69704

>''.join().strip().(тут делаешь какую-нибудь необычную операцию, например, тЕкСт ЗаБоРчИкОм)().(и тут можно продолжать обрабатывать, сделать текст жирным, к примеру)()

408 2069707
>>69704

>операцию проворачиваешь несколько раз, просто делаешь одно и то же


Так это обычная функция, а не лямбда.
409 2069710
>>69697
Нужно отсортировать массив кортежей по второму элементу

a = [(1, 2), (2,0)]
a.sort(key=lambda x: x[1])
410 2069712
>>69707
Можно сделать обычной функцией, но тогда её нужно будет придумать название, объявить её где-то в другом месте, потом привести в скоп, передать её все нужные параметры, и потом применить. А нужна она только здесь. Не лучше ли её прямо здесь и объявить?
411 2069714
>>69712
Не знаю, может, мы друг друга не понимаем.
Если я делаю что-то один раз, то это лямбда в моем понимании.
Если я делаю что-то несколько раз

>операцию проворачиваешь несколько раз


То это обычная функция, которую надо объявлять.
412 2069715
>>69714
Но когда ты используешь map() эта функция применяется к каждому элементу, поэтому

>несколько раз

413 2069721
Вы неправильно обьясняете.
Надо понять, что такое функции первого класса и как они применяются.
Лямбды это просто частный их случай, когда имя такой функции просто не требуется, т.к. используется в одном выражении.
414 2069723
>>69721

>Вы неправильно обьясняете.


Если бы существовал правильный способ объяснять, то его бы уже всем объяснили, и все бы его знали.
Данил 415 2069724
Есть связной список(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
416 2069725
>>69724
Поэтому первым языком надо учить С.
417 2069728
>>69724
Я бы не пытался реализовать линкед лист на языке, где нет явных указателей, это смотрится крайне потешно.
418 2069729
>>69724
Голова это первый элемент, она известна, потом хуяришь по некстам, пока не будет None, это хвост.
В целом, этого достаточно для итерации и добавления элементов как в конце, так и в любой другой позиции, просто манипулируя этими некстами, в этом и суть линкед листа.
419 2069730
>>69728
Да я знаю что есть вроде deque в collections и он может использоваться в таких-же целях, просто разбираюсь в алгоритмах и хотелось бы понять как это все работает, тяжеловато дается.
420 2069732
>>69730
Лучше на сишке ебош или на ГОвне, значительная часть классических структур требует адресных полей
421 2069734
>>69728
В питоне каждая переменная по сути хранит в себе указатель на значение, кроме самых примитивных вроде чисел
422 2069736
>>69734
Да, ещё и строки, но ты указателями явно не можешь распоряжаться и к классическим структурам приходится ебошить костыли. Если бы хотя бы по Id() можно было объект получить, то можно было бы потренироваться в этом.
423 2069738
>>55136 (OP)
Вот вы говорите пет-прожекты.
А хуй написал кривую лапшу, вся суть которой сводится к портянке из пост запросов и убогой обвязочки и набрал дохуя звезд на гитхабе и ореол кулхацкера. Учитесь.
https://github.com/FSystem88/spymer/blob/master/spammer.py
424 2069740
>>69738
Количество звёзд вообще нихуя не значит, самые большое количество у списков и шуток
https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition
425 2069741
>>69736

> указателями явно не можешь распоряжаться


Например считать разницу или прибавлять к указателю целое число? Так для классических структур такое и не надо особо.
426 2069742
>>69738
Посмотрим, что скажет гитхаб насчет спам-бота
427 2069744
>>69740
Для шутеек это стандартно на любой платформе, а так смотртят.

>>69742
Это детский лепет, там и не такое хостится. Под всякую политоту с радостью прогибаются, это да.
428 2069756
>>69696

>Я не понимаю, почему мне может хотеться использовать лямбда-функции. Почему я не могу обойтись например list comprehension или циклом каким-нибудь?


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

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

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

Куча других примеров есть.
429 2069804
Всем привет! Нужно запилить на фронт таблицу состоящую из Kibana логов на каждый веб сервис. Имею доступ к Amazon аккаунт и собственно кибану. С чего начать? Я сам джун, погуглил ничего не понятно пока.
Получается что нужно:
1. Достать логи с кибаны или Амазона
2. Обработать их в одну базу.
3. Запилить фронт с таблицей и уложить туда базу.
4. Разместить где-то на хосте.
Что упустил?
Спасибо за внимание.
430 2069808
>>69804
Похоже частично на твою задачу.

https://stepik.org/course/4519/promo
431 2069813
>>69808
Спасибо. Но питон я знаю уже. Мне именно по кибаны.
432 2069819
Где почитать про отличия списков в Питоне от массивов в нем же и от массивов в других языках?
433 2069822
>>69819
Список это массив ссылок на объекты, а массив это массив, но он может только в примитивные типы.
434 2069826
>>69434
threading.Thread(target=websocket_function)

ну и данные передавать через Queue
435 2069827
>>69822
Я вот такое нашел

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

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

Думал может где-то статья есть на эту тему.
436 2069833
>>69827
Я так понимаю, что на практике оно в основном применяется для взаимодействия с компилированным кодом, в самом питоне их молотить смысла мало, т.к. при извлечении придется создавать объекты.
437 2069838
>>69833
То есть до уровня байтоебства списки == массивы, а как дойдешь до уровня байтоебства, то сам все поймешь.
438 2069848
А как в вашей хуйней можно сделать что-то вроде вебпаковского watch'a или live server'a? Чтобы по изменению скрипта или его зависимостей перезапускать прогу автоматически, а не в ручную.
Screenshot from 2021-06-16 10-03-24.png47 Кб, 1025x406
439 2069880
>>69838
В питоне просто тип данных list назван не очень корректно, на самом деле это аналог массивов-"векторов" в других языках.

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

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

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

Поэтому мне кажется, что очень ограниченная область применения.
440 2069883
>>69880
Ограниченная область применения у массивов по сравнению со списками?
Данил 441 2069884
Хай, пытаюсь вьехать в эти две темы, немного не понимаю.

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

Я сам на практике пока не использовал их, в теорию вьезжаю
442 2069892
>>69883
Штатные структуры для питона это list, dict, set. В меньшей степени bytes/bytearray

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

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

Надо просто помнить, что такая возможность в принципе есть.
443 2069897
>>69892
Оке, спасибо. Вот такого в шапке не хватает. В шапке в смысле на Гитхабе.
444 2069901
>>69884

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


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

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

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

Разница между многопоточностью и асинхронностью в том, как происходит механизм переключения потоков. В первом случае независимо от кода подпрограммы, во втором случае в коде подпрограммы только на операторах await. Но более оптимально, если у тебя код ждёт данные, то ты в этот поток не вернёшься, пока данные не получишь, ресурсы оптимальнее используются.
445 2070061
>>55136 (OP)
s = {'1', '2', '3'}
''.join(s)

Почему у меня при перебирании этого множества значения выходят именно в такомпорядке: 2 1 3
Всегда именно так. Пачему?
446 2070191
>>70061
Порядок не гарантируется, хранится как удобнее вм.
Раньше такое было и для словарей, потом с какой-то версии к ним прикрутили порядок вставки.
447 2070392
Всем привет, не могу понять, django3.1 когда я добавил choices в форму, то она их использует для валидации? Или этот список теряется? Потому что уже дня 2-3 не могу починить ошибку на 2 пике. В документации написано, что используется, но проверить бы хотелось.
448 2070398
>>70392
Давно к джанге не притрагивался
Но у тебя хуйня какое-то на первый взгляд, нахера ты choices внутри класса определил?
449 2070407
>>70398
В init изначально было, это уже от бессилия делал, все варианты возможные перепробовал.
16079274854530.mp4738 Кб, mp4,
540x960, 0:09
450 2070416
Вот я уже учу питон пол года. А значит настала пора выбирать специализацию. Есть 2 стула

1. Web development (API, автоматизация, highload, микросервисы)
2. BigData (распределенные хранилища данных,spark, data engineering)

Что скажите?
16156642755971.jpg32 Кб, 411x271
451 2070422
452 2070435
>>70416
Скажу, что ты скорее всего не понимаешь ничего про BigData.
453 2070438
>>70435
В точку. Но, вроде, интересно звучит.
454 2070535
>>69672
Тащемта никаких секретов тут и нет, в течении трёх месяцев задрачивал питон и всё к нему прилагающееся по 5-10 часов в день + 4 года в пту ещё, но там дальше хело ворлда на джаве я не продвинулся. Так и вкатился. Только единственное, что когда я на проект пришёл, первые пару месяцев было очень тяжело. А потом вроде привык.
455 2070691
Скажите, пожалуйста, правильно ли я сделал создание чекбоксов, где можно выбирать несколько значений.
Просто я нашел место где происходит исключение, отследил из-за чего происходит в ChoiceField в to_python() приводят мой список к строке. Вот и спрашиваю, правильный ли класс выбрал.
image.png48 Кб, 1133x327
456 2070694
>>70691
UPD. 1 пик не тот. Вот нужный.
Matthew McConaughey Crying.mp44,1 Мб, mp4,
1280x720, 0:38
457 2070698
>>70691
UPD. Нашел ошибку, есть специальное поле для чекбокса. О, индус, ответ которого на so я посмотрел...
458 2070777
>>70535
а работу где искал? я прогаю на питоне около года, максимум тока на фрилансе заказы делал
459 2070782
Bump
460 2070845
Алло, вы че, вы на какое дерьмо залили книги? Как с этого дерьма(sync.com) скачать сразу все файлы? Какой умственно отсталый будет скачивать по одному файлику???
461 2070847
>>70845
Ты всё равно нихуя не прочитаешь.
Бери одну.
462 2070851
>>70847
Иди нахуй, сын собаки.
Данил 463 2070873
Это нормально что за полгода или уже почти год обучения у тебя не выходит решить eazy tasks на leetcode? Или я просто тупой?))
464 2070884
>>70845
накатай скриптик, чтобы все скачать.
465 2070902
>>70873
Забей на литкод. Пили проекты.
466 2070971
>>70535
и тебя взяли работать после того как ты сказал что три месяца изучал питон???
467 2070973
>>69533
А сеньоры это разве не главы отделов по старому? Ты хочешь руководить другими людьми и нести за них ответственность?
468 2071009
>>70973
Нет, серьёры это старшие/ведущие программисты, а руководят тимлиды.

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

Сами понятия мидл-сеньёр очень условны, у нас особенно, в норме под сеньёром понимается совсем другой уровень.
469 2071011
>>70902
Если не можешь решать уровень изи литкода, то пилить проекты рано.

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

Параллельно можно изучать смежные технологии, вёрстку, сети, работу с консолью, гит и другое. Без их понимания тоже ничего не сделаешь.
470 2071015
>>71011
Вот это с одной стороны правда, но я с другой стороны видел своими глазами как 1 человек придумал и написал успешную (популярность и донаты) порно-игру с механикой Sim brothel (нанимаешь-обучаешь-продаешь рабынь, мотаешь по городу, покупаешь предметы, прокачиваешь характеристики, пошаговые бои и прочее), а только уже потом нанял несколько программистов, которые уже шарили в ООП и прочем. То есть он писал без ООП - хорошо если с функциями.

Так что все же пет-прожекты важнее.
471 2071036
>>71011

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


Разве литкод это не дроч алгоритмов? В свое время всякие олимпиады дрочил и мог прорешивать задачи оттуда. Но вот грамотно организовать структуру проекта, сделать красивые абстракции и декомпозировать логику между ними для меня было большой проблемой. На работе же обычно приходится писать такие сущности, а не изобретать очередной способ обхода графа.
472 2071060
>>71036

>Разве литкод это не дроч алгоритмов?


На уровне хард - да. На уровне медиум когда как. На уровне изи алгоритмов нет, самый примитив и просто структуры данных, исключительно практика кодирования.

Без уровня изи нельзя подпускать к кодированию. Ты просто не можешь кодировать.

>>71015

>То есть он писал без ООП


ООП это технология промышленного программирования. А литкод про то, чтобы придумать идею решения и реализовать её в коде.

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

И как раз показываешь, что мозги важнее. Лучше переизобрести велосипед, когда есть уже готовые и бесплатно, чем не иметь возможности переизобрести велосипед, а быть способным только готовые решения использовать. А грамотное кодирование и технологии уже потом подтянутся.
473 2071120
Можно ли как-то в except блок запихнуть сообщение от реально происходящей ошибки?
Или там только можно написать только что-то через print?
474 2071126
>>71120
В except-лок засовываешь любой код
Как тебе такое, Илон?
475 2071134
>>71126
ну вот допустим:
def devide_smth(a1, a2):
--try:
----b=a1/a2
----return b
--except:
----print('error')

Если a2 = 0, будет ошибка от деления на ноль. Можно эту ошибку как-то поймать и передать в except блок?
476 2071149
>>71134
Можно, это описано в ЛЮБОМ учебном материале, которых как говна за баней, иди кури.
Данил 477 2071271
Взял Medium задачку с LeetCode, как бы вы ее решили, но побыстрее?

```Given the head of a singly linked list, return true if it is a palindrome```

Runtime: 1096 ms, faster than 11.41% of Python3 online submissions for Palindrome Linked List.
Memory Usage: 48 MB, less than 6.56% of Python3 online submissions for Palindrome Linked List.

Вот код ```class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next

class Solution:
def isPalindrome(self, head: ListNode) -> bool:
self.head = head
cur = self.head
lst = []
while cur.next != None:
print(cur.val)
lst.append(cur.val)
cur = cur.next
if cur.next == None:
lst.append(cur.val)
if lst[::-1] == lst:
return True
return False```
478 2071293
>>71134
except Exception as exc

Дальше гугли сам про объект Exception
479 2071301
>>71271
У них эта задача записана как easy
https://leetcode.com/problems/palindrome-linked-list/

Если делать через создание дополнительного массива, как делаешь ты, то это easy. Но этот какое-то неправильное неспортивное решение.

У них там есть оговорка

> Follow up: Could you do it in O(n) time and O(1) space?


Я так слёту не знаю, как, надо думать, но это будет будет ни разу не easy.

>>71271

>print(cur.val)


Ты вот это прямо так им и послал? Не удивительно, что у тебя такие маленькие показатели. Удали печать и посмотри, насколько быстрее твоё решение будет работать.
480 2071313
>>71301

>Follow up: Could you do it in O(n) time and O(1) space?


Кстати есть очевидное решение, как это сделать, разве что оно будет грязновытым (тупые хаки) и не thread safe.
481 2071316
>>71301
Да, оказалось намного быстрее + я через строку все сделал, я чет об этом не подумал)
482 2071325
>>71313
>>71316
Думал закодировать это решение, но не хочется.

На практике оно работать будет дольше. Для количества элементов в 100000 экономия памяти смысла не имеет.

А в плане кодирования это грязные олимпиадные хаки.

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

Запоминаешь последний элемент.

Дальше второй проход, до середины игнорируешь, после середины меняешь узлы так, что не N указывает на N+1, а узел N+1 указывает на N.

Третьим проходом идёшь от головы и хвоста, до середины, и просто сравниваешь два связанных списка.

При желании можно сделать четвёртый проход и восстановить список к исходному состоянию.

Кодировать и отсылать на литкод лень, потому что это чисто хаки, которые проиграют по скорости наивному easy решению.
483 2071442
>>71271
Какая же ненужная хуйня просто. Солюшионизм ин итс файнест форм.
Те кто именно кодингом занимается часто вынуждены башку ломать над подобным, типа как что-то реализовать? Это же пиздец как уныло, сам я быстро перекатился в пандас/нимфи/ТФ, там ничего такого просто нет, самое жуткое что я юзаю это лист компрехеншн и то редко и скорее для выебонов. Функции пишу исключительно для графиков, классы? Идите нахуй со своими селфами просто.
484 2071596
>>71442
Лучше вообще из кодинга уходи, раз тебе сложно. Чего сюда полез?
485 2071638
>>71442
ну пандас/ нумпи и т.п. это просто набор методов
486 2071679
>>55136 (OP)
Как в этом вашем питоне считают, если инты иммутабл?
Нужке атрибут-счетчик, который бы считал количество вызовов определенного метода. Как это сделать без особых костылей?
мимо-ньюфаг
487 2071685
>>71679
Твой счётчик - это указатель на объект. Можешь посмотреть его id, он же адрес в обычном интерпретаторе.
print(id(counter))

Как только ты делаешь
counter += 1
создаётся новый объект и в counter записывается его адрес, поэтому если ты сделаешь
print(id(counter))
после этого, то ты там другое значение увидишь.
488 2071730
>>71685
А, вот как. А почему на выражение "++counter" не ругается интерпретатор?
489 2071733
>>71730
Это два унарных плюса, а не то что ты думаешь.
image.png47 Кб, 676x541
490 2071756
Аноны, знаю что вопрос глупый и не по теме, но мне больше не у кого спросить.
Почему код не работает дальше красной линии? Бот застревает на первом defe
491 2071767
>>71756
Зачем тебе отдельно объявленая функция send? Пиши через готовую, говноед. Лень досконально копаться, но там 100% в этом косяк.
Легитимна через И, кстати.
492 2071769
>>71767
Или в reply_markup, не знаю что это, не пользовался, это со смыслом или просто скопипастил откуда? Попробуй убрать.
image.png48 Кб, 635x532
493 2071799
>>71756
Возможно я слепой, но сейчас я скопировал другой код, точь-в-точь такой же, и всё работает
494 2071824
>>71799
Хорошо. Не пали на дваче токен от бота и почитай про PEP8.
495 2071830
>>69710
Рекомендованный способ:

from operator import itemgetter
a.sort(key=itemgetter(1))
496 2071835
>>71830
Кем рекомендованный, покажи.
Это не со злостью сказано, просто первый раз за свою недолгую карьеру в питоне такое вижу, интересно.
497 2071842
>>71835
Это тоже самое, в модуле operator содержатся функции, которые вызывают магические методы, то же самое, что делают операторы + - [1] и т.д.
498 2071851
>>71835
Там несколько таких заготовок с некоторыми дополнительными возможностями.
Можно делать и через лямбду, но так нагляднее.
Примерно как lambda x: len(x) и просто len.
499 2071856
А еще там есть готовый `xor`
500 2071878
Automate the Boring Stuff with Python, 2nd Edition Годнота?
image.png341 Кб, 597x790
501 2071884
>>71878
Мне вот этот кирпич понравился. Хоть и заявлен как справочник, в качестве учебника тоже сгодится. На русском, и есть на либгене
502 2071896
>>71878
Норм, как вторая после начальной сгодится.
503 2071902
>>71896
Как раз мой случай. Прочитал книгу для начинающих, вроде основы уловил, но делать все равно ничего не могу. А тут я так понял будут именно проекты всякие разбираться
504 2071904
>>71902
Можешь ещё этой полирнуть, буквально на днях спиздили.
http://libgen.rs/book/index.php?md5=56F83FF3007762D0A0ECE1D754C6344B
505 2071905
>>71902

> Прочитал книгу


> делать все равно ничего не могу


Ха-ха, зачем же вы изучаете программирование по книгам?
506 2071909
>>71905
До этого брал знания сразу из астрала, но стало скучно, решил почитать что-нибудь.
507 2071911
>>71904
Спасибо, ее тоже почитаю
508 2071936
>>71905

>Ха-ха, зачем же вы изучаете программирование по книгам?


Это неплохо, если там примеры кода с задачами идут. Я вот прочитал в свое время лутца, потом пошел на кодварс и задрочил его использование
509 2071998
Пагани, подскажите плиз ссылку на гайд по Джанго или Фласку с нуля до хостинга. Хочу создать элементарный сайт где размещу полезные линки с кнопочками и по сути это все.
Спасибо
510 2072022
>>71998
Ты так пошутил? Для этого хватит обычного сайта на Бутстрапе.
511 2072051
>>72022
Не шутил. Бутстрап это на ЖС? В общем если можно слелать проще, то можно и то. Главное не готовые сайты.
512 2072052
>>72051
Это вот это

https://getbootstrap.com/

Под твою задачу нужен только html, css и буквально капелька js. Зачем тебе Питон - не ясно. Разве что только ты хочешь изучить Питон и у тебя этот сайт что-то вроде практики будет.
513 2072063
>>72052
Да, именно для опыта. Хочу для начала сделать Максимально простым с одной страницей буквально. Собираюсь дергать статусы определённых страничек с ссылками к ним. Потом прикручу ещё что-то. Может графики какие биткоина и прочих паркетов.
Думаю делать на Джанго. Или советуете Фласк? У меня ещё обязательное условие чтобы я мог разместить на Амазоне. Вот хочу ссылку найти от начала до самого деплоя. Может есть такие гайды.
514 2072065
>>72063
Ааа, тогда жди знающих. Но для простого и симпатичного фронта Бутстрап тебе точно подойдет.
515 2072093
>>71884
устарел, уже идет версия 3,9
516 2072099
>>72093
Не сможет изучить МОРЖОВЫЙ ОПЕРАТОР?
517 2072117
Подскажите библиотеки воксельные движки с рендером и обработкой (булевым операциями), чтобы я смог побыстрому набросать визуализатор фрезеровки.
Хотя, можно и не воксельные, лишь бы были булевые операции и рендеринг.
518 2072143
me = 0
you = {'remote worker': 'senior'}
def взамное обучение(me, you):
if me == ["OOP", "alogoritms and data structures", " some grasp of Python", "a framework or two"]:
you = ['бесплатная комната в Нячанге', 'обучение английскому от профессионального учителя с десятью годами опыта в трех странах', ' собутыльник', 'немножечко травы и грибочков']
return me, you

borders = "closed"
if borders == "open":
взаимное обучение
Дорогие анончики, есть ли среди вас те, для которых бы данный код имел смысл (не в плане написания, а в плане того, что я попытался им передать), я гуманитарий, в математике был тугодумом, сейчас при самостоятельном изучении программирования на Питоне случаются как и затупы, так и просветления. Имхо, отличный вариант для тех, кто хотел бы перекатиться в тропики, сильно не привередлив в жилищных условиях (многие живут с руммейтами) По началу много времени отнимать не буду, просто тихо выполнять задания, а потом потребуется чуток Вашего времени. В плане обучения Вас английскому готов уделять пару в день
519 2072194
>>72099
лол, что это?
520 2072196
>>72143
не понял что ты имел ввиду, под чем ты?
521 2072203
>>72196
я предлагаю жилье (комнату в хате) в Нячанге тому, кто вызовется меня учить на Питоне. С комнатой в комплекте идут уроки английского, пара в день, собутыльник и пара грамм бошек в месяц, если ты любитель этого дела. Обещаю по началу не делать мозг и изредка доебывать с тупыми вопросами. Бесплатное жилье и английский от опытного учителя в обмен на обучение программированию, есть ли вообще смысл такое предлагать кому-либо? Просто спрашиваю, ибо планирую съеб, когда границы откроют
522 2072223
>>72203
Прикольное предложение, но фантазия.
image.png30 Кб, 278x181
523 2072234
524 2072239
>>72223
почему? ну вот к примеру ты удаленщик и захотел свалить в теплую страну с морем и фруктами, а тут предлагают бюджетный вариант, жилье в шаге от пляжа за час-полтора ненапряжной работы в день, да еще английскому научат, планом угостят, рома нальют, город покажут. Это не просто взаимовыгодное сотрудничество, это своего рода дружеские отношения. Плюс хата большую часть дня будет свободна, так как я буду работать. В чем конкретно проблема, почему это никому не может быть интересно?
525 2072247
>>72239
Аутист с двача никогда не поедет хуй знает куда к рандом-хую. Может ты питониста в жопу выебешь, а потом расчленишь.
526 2072255
>>72247
лол, тут серьезно только так все и думают? Причем все те же самые прогеры без проблем живут с кучей людей во всяких коливингах, деревнях удаленщиков на Бали/Гоа, как то же ищут соседей, знакомятся, общаются, заводят друзей, никогда еще не слышал, что кого то в жопу выебали и расчленили
527 2072259
>>72255
Так знакомятся же не с двачерами и не на дваче. Смекаешь?
528 2072261
>>72259
окей, смекаю. Не тот форум. Больше не оффтоплю в этом тредике
529 2072265
>>72261
Лучше бы предложил денежку или что-то вкусное-полезное прислать по почте за код ревью и уроки через инет. Ну реально - ехать куда-то хз куда перед новой волной ковидлы... Это вряд ли.
530 2072338
>>72255
Не, ну серьёзно, странно выглядит предложение. Мол езжай со мной, обеспечу тебя жильём, буду учить английскому, всякие снадобья для увеселения, с тебя лишь консультации по питону.
532 2072494
>>72203
то есть ты еще не уехал?
я думал ты уже там тусишь! откуда инфа что у тебя например букдут бошки и алко? и бабос?
кем там планируешь работать?
533 2072562
>>72494
планирую работать в продажах, так как говорю на английском и путунхуа. Сначала я приеду, поработаю месяц-два, и когда все норм будет, буду искать себе ментора. На крайний случай - тичером за 1500к долларов пойду(как и работал несколько лет, в принципе), но это будет не Нячанг, а жопа мира, хоть и у моря. Откуда инфа? жил там пол года до пандемии, ром дешевле водки в этой стране, бошки тоже на каждом шагу. вангую вопрос - накуй мне вкатывание в ойти? А вот для того, чтобы вкатиться в Канаду. Попробовал сварку - то еще удовольствие раком пол дня стоять. Попробовал учить - те места, где я не туплю, а нахожу сам решения (щас я на задачках на синтаксис и лупы) - вызывают эйфорию. Но на следующий день я могу сесть и затупить на следующей теме. Почему не предлагаю деньги? потому что ты хер их вышлешь из страны, не указав в налоговой декларации сколько ты реально получаешь, и не отдав половину зарплаты налогами. Все кэшем. пэйпалом мне высылали вьеты через решалу, этот нехороший человек взял 60 баксов комиссии). Вроде даже на ангельском документацию и лекции всякие воспринимаю нормально, на степике курс тоже на нем, но не хватает слов типа "ты че, долбаеб? тут вот по этому у тебя код не работает" Боже. как мне хочется кодера, разве я много прошу?
534 2072610
>>72562
что такое путунхуа и как его выучил?

что такое нячянг?
и как там жить без прописки и пастопрта, поясни.
алсо там что, бошки законны?
535 2076429
Сап питонач, есть вопрос: какие именно типы диаграмм UML нужны чтобы сгенерировать их в питоновский код? Правильно ли я понимаю что для условного dia2code достаточно диаграммы классов? В инете документации по этой теме что-то маловато
Снимок экрана 2021-06-24 в 05.46.33.png81 Кб, 307x218
536 2078685
Подскажите по модулю сабпроцесс

Как запустить процесс чтобы питон ждал окончания работы процесса, с тайм-аутом обрубал его?
Пик - мое, при запуске хоть ран, хоть колл, хоть что - питон сразу говорит что весь скрипт успешно исполнен, и процесс поднимается как бы сам по себе, ну и на таймаут ему похуям.
537 2084928
>>78685
Если ты именно про запуск 1С то там проблема не в python, а в запускающем файле 1С
Он запускает другой процесс, независимый, с заданными параметрами, а сам завершается
python (и любой другой запускатель скриптов/сценариев) отслеживает только процесс стартера 1С'ки, который не пиередает им информацию что он там запустил еще и не ждет окончания своих сабпроцессов
изображение.png95 Кб, 180x178
538 2091899
Сап питонач.
Появилась необходимость работать со спарком. А как вобще код то проверять, писать и тестировать? Ну вот есть сервис спарка, я ж ёбана не буду в текстовом редакторе никсов код бахать. А удалённо вроде нельзя запустить, спарк разворачивать локально тоже чот сложно. По идее библиотека sparkа должна сама уметь на локальном запускать? Чото я нихуя непонял короче
539 2093554
>>91899
Привет.
Вот смотри у тебя есть сервер и твой локальный комп, в иделе нужно сделать так чтобы ты писал на своем компе, а запускал на удалённой машине(сервер) тебе нужно заняться вопросом ci/cd своего проекта. Удачи анон.
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 1 августа 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски