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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Питон тред №120 /python/ 2037483 В конец треда | Веб
Тред, посвящённый языку программирования Питон, #120

Предыдущий: >>2021102 (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 2037692
>>37483 (OP)
Вкотился
3 2037716
Есть прога, сам писал. Работает хуево. Есть смысл переписывать с нуля?
4 2037735
>>37716
Зачем переписывать хуево то, что ты уже написал хуево?
5 2037756
как вам курс на степике "Поколение Python"? сижу, решаю и не урчу.

есть те кто тоже проходил? пишите как он вам
6 2037781
Поясните, можно ли во вложенном коде делать мультистроки которые не пидорасят код и аутпут?
Т.е. я хочу чтобы код выглядел как на пик 1, а аутпут как на пик 2.
7 2037783
>>37781
Всё что между ''' попадает в строку, очевидно же.
Заводи их отдельно или юзай \n
14702368465180.jpg19 Кб, 301x395
8 2037804
>>37716
Есть.
9 2037805
>>37483 (OP)

>— А что ещё можно читать?


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



Не хочу читать книги. Можно же просто обойтись доками и учебными репами на гитхабе с кучей звёздочек. Или я что то опущу?
10 2037810
>>37805
Пропущу лол
fix
11 2037813
>>37805
По сравнению с нубскими книгами в общем нет.
autism.jpg81 Кб, 1920x1080
12 2037814
13 2037831
>>37805
Туториал это по факту просто перечисление синтаксиса, структур, команд, встроенных функций с очень маленьким количеством примеров и почти полным пересечением этих примеров или примеров как это использовать.
По идее если у тебя есть концепты в голове, т.е. ты моешь кодить в башке текстом(если эта хуйня то делаем это пока условие == Заебись), то тебе хватит исключительно доков, читать какую-то водяную литературу было бы проебом времени, ведь тебе просто надо узнать как называется цикл в питоне, как называется какой-нибудь метод и как ставить кавычки.
Если ты вкатываешься, то книжки тебя за ручку ведут и объясняют что делает какой-то код, где его можно использовать, так же в книжках обычно и пишут про алгоритмы и пытаются донести общий майндсет так сказать. Стоит отметить, что если ты умный перчик, вот прям блистаешь нахуй во все стороны - то идеальным вариантом для тебя будут доки+тяжелые теоретические книги. Если ты тупой как говно, то лучше будет читать уже готовые обучающие книжки. Я не говорю что Питон для детей плохая книга и все кто ее читают долбари, нет, наоборот, но после какого-то базового кружка по синтаксису, когда ты уже научишься делать итератор и лист компрехеншен у тебя возникнет вопрос ЧТО ДАЛЬШЕ ТО БЛЯДЬ Я ВСЕ ЗНАЮ НАХУЙ. Вот тогда уже надо либо искать хорошие учебные пособия, либо забить хуй на учебники и читать просто информатику+документацию.
В универе если учился - так обычно и происходит, какие-нибудь инженерные дисциплины на старте имеют учебник, а дальше уже полностью переходят в лекции+методички.
14 2037841
>>37781
textwrap
15 2037843
>>37841
А точнее даже textwrap.dedent
16 2038039
>>37831
У тебя какое-то ожидание, что взяв пособие для изучения "языка программирования", ты там найдёшь заодно пособие по "изучению программированию".

Это как пытаться найти в курсе "английский для экономистов" изложение основ макроэкономики.

Книги вроде Лутца, "укуса", Саммерфильда и другое, они тоже про язык программирования Питон, а не про программирование вообще.

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

Но для освоения программирования надо намного больше времени, чем для освоения языка программирования. А ИТ это не только программирование, и ещё требуется глубокий экскурс в кучу направлений здесь.

Вот нельзя научиться программированию с нуля за год. Без серьёзного бэкграунда в смежных областях, конечно. Это невозможно.
17 2038049
>>38039
Надеюсь ты не тот петух с прошлого треда со своими двухгодичными курсами.
18 2038064
>>38049

>тот петух


Иди уже к корешам пиво пить и сёмки на падике сплёвывать. Оставь ИТ для ботанов, не пацанское дело, в натуре, хули ты с этими чмошниками общаешься и пытаешься в их круги взезть.
19 2038069
>>37735
Теперь правильно построю код,. Уберу костыли
20 2038080
>>37756
Я где-то неделю назад начал. Сам тупой, так что некоторые места мне непонятны :(
21 2038131
>>37831
Я перекатывальщик из мухосранских админов эникеев с двумя бумажками об образовании. Да я именно книги типа всяких марков луцев имел ввиду. А не Кнутов. Второго бы не стал читать ибо слишком туп для пониманя этого

Начитался. Что если и не получиться вкатиться то в админстве пайтон все равно приветствуется. Так что я ничего не теряю
Решил пару тройку хард задач на литкоде (не на пайтоне). Так себе достижение но как прописка что я не залетный мимосварщик
Книги по алгоритмам наоборот уважаю
22 2038185
>>38064
Может он вкатился чтоб фраерков 300нанасеков вычислять и поцанвм сливать в падике координаты.
23 2038317
вкотик!
24 2038502
Привет, питонисты. Нужно быстро вкатится в ваш инструмент + NumPy для обработки данных в облаке. Есть хорошие и конденсированные текстовые гайды? Сам фулстек мидл, потому предпочел бы что-то не из разряда "for Beginners".
25 2038535
>>38502
quick python глянь
26 2038642
>>38535
Спасибо
27 2038992
Недавно поставил Pycharm и сейчас хочу запилить приложуху с гуи, но не знаю что для этого использовать. Какие библиотеки лучше? М.б. есть какое-то расширение на pycharm в виде графического редактора интерфейса?
28 2039107
Что думаете о книжке "Python crash course"?
29 2039116
>>39107
Надо подумать
30 2039132
>>39116
Просто я уже 150 страниц прочитал. В начале всё было очень хорошо, но честно говоря очень много времени уделяется массивам, и какая же это скучная тема. Ну не прям скучная, но мне хотелось поскорее познакомится с циклами и прочим, но даже их объясняют часто на примере массивов блдаж
31 2039145
>>38131
Ну как тебе сказать. Книги читать очень полезно я правда сам мало читаю. Но книги нужны хорошие, и чтобы по уровню и нужные тебе в данный момент.

Когда ты учишься по принципу "пилю что-то, гуглю непонятное", у тебя масса дыр в понимании. Тебе просто не придёт в голову гуглить многие вещи и читать что-то вроде как ненужное.

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

Просто надо материал себе правильный подобрать и вот с ним работать.

Естественно читать книги и ничего не делать мало полезно.
1313507122001.png229 Кб, 286x496
32 2039146
В Python многопоточность упирается в GIL.
А как проблема многопоточности решена в других языках? И решена ли?
33 2039194
>>39146
Многопоточность это всегда проблема.

>упирается в GIL.


Юзай threading.RLock
34 2039300
Аноны, подскажите, молю, уже весь изъебался
Нужно положить на API веб-сервиса, который стоит на centos внутреннем сервере, сообщение
Кладу с помощью requests
Вот код запроса
response = requests.request("PUT", url="https://xx.x.xx.xx:xxxx/message/xxxx", headers={"Authorization": "Basic VXNlcjE6MQ==", "Content-Type": "application/xml"}, data=message, verify=False)
С винды работает отлично, а с убунту выдает ошибку:

Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/urllib3/connectionpool.py", line 662, in urlopen
self._prepare_proxy(conn)
File "/usr/local/lib/python3.8/dist-packages/urllib3/connectionpool.py", line 948, in _prepare_proxy
conn.connect()
File "/usr/local/lib/python3.8/dist-packages/urllib3/connection.py", line 308, in connect
self._tunnel()
File "/usr/lib/python3.8/http/client.py", line 904, in _tunnel
raise OSError("Tunnel connection failed: %d %s" % (code,
OSError: Tunnel connection failed: 403 Forbidden

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/requests/adapters.py", line 439, in send
resp = conn.urlopen(
File "/usr/local/lib/python3.8/dist-packages/urllib3/connectionpool.py", line 719, in urlopen
retries = retries.increment(
File "/usr/local/lib/python3.8/dist-packages/urllib3/util/retry.py", line 436, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='xx.x.xx.xx', port=xxxx): Max retries exceeded with url: /message/xxxx (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 403 Forbidden')))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "111.py", line 5, in <module>
response = requests.request("PUT", url="https://xx.x.xx.xx:xxxx/message/xxxxx", headers={"Authorization": "Basic VXNlcjE6MQ==", "Content-Type": "application/xml"}, data=message, verify=False)
File "/usr/local/lib/python3.8/dist-packages/requests/api.py", line 61, in request
return session.request(method=method, url=url, kwargs)
File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 542, in request
resp = self.send(prep,
send_kwargs)
File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 655, in send
34 2039300
Аноны, подскажите, молю, уже весь изъебался
Нужно положить на API веб-сервиса, который стоит на centos внутреннем сервере, сообщение
Кладу с помощью requests
Вот код запроса
response = requests.request("PUT", url="https://xx.x.xx.xx:xxxx/message/xxxx", headers={"Authorization": "Basic VXNlcjE6MQ==", "Content-Type": "application/xml"}, data=message, verify=False)
С винды работает отлично, а с убунту выдает ошибку:

Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/urllib3/connectionpool.py", line 662, in urlopen
self._prepare_proxy(conn)
File "/usr/local/lib/python3.8/dist-packages/urllib3/connectionpool.py", line 948, in _prepare_proxy
conn.connect()
File "/usr/local/lib/python3.8/dist-packages/urllib3/connection.py", line 308, in connect
self._tunnel()
File "/usr/lib/python3.8/http/client.py", line 904, in _tunnel
raise OSError("Tunnel connection failed: %d %s" % (code,
OSError: Tunnel connection failed: 403 Forbidden

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.8/dist-packages/requests/adapters.py", line 439, in send
resp = conn.urlopen(
File "/usr/local/lib/python3.8/dist-packages/urllib3/connectionpool.py", line 719, in urlopen
retries = retries.increment(
File "/usr/local/lib/python3.8/dist-packages/urllib3/util/retry.py", line 436, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='xx.x.xx.xx', port=xxxx): Max retries exceeded with url: /message/xxxx (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 403 Forbidden')))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "111.py", line 5, in <module>
response = requests.request("PUT", url="https://xx.x.xx.xx:xxxx/message/xxxxx", headers={"Authorization": "Basic VXNlcjE6MQ==", "Content-Type": "application/xml"}, data=message, verify=False)
File "/usr/local/lib/python3.8/dist-packages/requests/api.py", line 61, in request
return session.request(method=method, url=url, kwargs)
File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 542, in request
resp = self.send(prep,
send_kwargs)
File "/usr/local/lib/python3.8/dist-packages/requests/sessions.py", line 655, in send
35 2039301
r = adapter.send(request, kwargs)
File "/usr/local/lib/python3.8/dist-packages/requests/adapters.py", line 510, in send
raise ProxyError(e, request=request)
requests.exceptions.ProxyError: HTTPSConnectionPool(host='xx.x.xx.xx', port=xxxx): Max retries exceeded with url: /message/xxxxx (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 403 Forbidden')))
Телнет по порту работает, закидывал с этого сервера яндекс танком нагрузку, тоже все норм
Фйерволл не настроен, версия requests одинаковая
C чем это может быть связано? куда глядеть?
36 2039305
>>39301
Перепроверь, как прокси указываешь.
37 2039317
Кто-нибудь может объяснить как с rutracker.org получить Cookie через requests?
В заголовках ответа нет параметра
Set-Cookie bb_session=0-12856866-; expires=Tue, 20-May-2031 22:55:57 GMT; Max-Age=315360000; path=/forum/; domain=.rutracker.org; HttpOnly
38 2039321
>>39317
Отбой. Надо было дождаться очистки сессий на их стороне, после "выйти на всех устройствах"
39 2039327
>>39305
Спасибо, мил человек, совсем башка уже не варит, забыл что прокси настроены
Обошел с помощью сессии, и все заработало)
40 2039356
>>39132
Погоди, на русском языке дата-структуры называют массивами или эта книжка начинается с array'ев?
41 2039386
Кому подушить питона?
42 2039420
>>39386
Я уже
43 2039496
>>38992
наверняка должна быть какая то библиотека, не так ли?
44 2039500
>>39356
в питоне вроде массивы называются списками и списками списков?
>>39132
а что там с циклами знакомится? циклы очень просты, идет перебор и всё.
45 2039602
>>39496
Да, про это я и спросил.
46 2039603
>>37756
Хороший курс для новичков (сам прошёл полностью). Дальше советую пройти курс от egoroff_channel. Сейчас сижу и прохожу его. В нём уже больше информации и вся инфа даётся в ролике, что немного неудобно, но простительно. Ещё некоторые видите доступны только по платной подписке, но задачи ты можешь решать все бесплатно
47 2039615
>>39603
Бля, нахуй он сделал платную подписку?
48 2039617
>>39615
Чтобы бабосы латать) А то он ща курс денег никаких не получает, а кушать хочется. Кстати, там иногда в комнатах поясняют что было в видео
49 2039619
>>39617
*лутать
fix
50 2039662
>>39356
Нет, там Lists, но это вроде как массив на русском называется? По крайней мере я смотрел какой-то урок по основам программирования где массивы объясняли на пайтоне и там этим словом обозвали именно Lists
>>39500

> а что там с циклами знакомится? циклы очень просты, идет перебор и всё.


Ну вот просто интересно мне это было, я еще не знаю точно как это всё работает, пытался написать алгоритм разложения числа на простые множители, но ничего не получилось
51 2039717
>>39662
лист это список в питоне
52 2039719
>>39617
понял, он не работает разве параллельно прогером за 300к наносек?
53 2039735
>>39719
Похоже, что нет) А так, я не знаю
54 2039746
>>39717
А массив тогда что такое? Его вообще получается в питоне нет?
55 2039753
>>39746
Есть, но нужно подключать модуль array, а по дефолту идут списки. Короче, просто загкгли и всё
56 2039765
>>39746
Есть 3 распространенные штуки.

Single linked list, список, когда нельзя прыгнуть в середину, нужно от начала шагать по одному, можно добавлять в начало че нибудь, да и в середину можно.

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

ArrayList, Vector, ну типа массив короче, это массив указателей, можно добавлять в конец, в питоне это. Можешь называть массив, можешь список, никак это не называется.
изображение.png45 Кб, 1352x703
57 2039830
Поздравьте, я наконец-то написал алгоритм разложения числа на простые множители, еще как только пайтон начал учить хотелось сделать такую штуку, но не мог додуматься как, поэтому пока учился периодически пытался сделать такой алгоритм, но всегда фейлил, а сейчас получилось
M.mp4714 Кб, mp4,
1280x720, 0:05
58 2039831
>>39830
Забыл прикрепить
59 2039839
>>39830
Подождите, нужно ведь еще после каждого удачного прохода сбрасывать var опять до 2
изображение.png9 Кб, 346x246
60 2039840
>>39839
ver 1.1
61 2039846
>>39840
Дели число на множитель, тогда не надо сбрасывыать.
62 2039849
>>39846
А, ты делишь, не надо сбрасывать пусть дальше растет.
63 2039900
>>39840
Для простых number ты собираешься гонять цикл пока number не станет равным var? Seriously?
Помощь в развитии 64 2039901
Кто скажет что учить дальше, основы вроде знаю, ботов в телеграмме научился делать, что дальше учить то?
65 2039902
>>39900
займись делом иди
66 2039904
>>39901
Codewars, Codesignal, все такое.
67 2039923
>>39900
Что? Цикл же действует пока number больше одного, как только в результате деления будет 1, то цикл прекращается
68 2039928
>>39923
Он имеет в виду, что 137 итераций будет если число 137, нинравится ему.
69 2039939
>>39928
Разве можно как-то избежать этого? Если только заранее составить список простых чисел и гонять по ним чтобы не перебирать все варианты var + 1
70 2039945
>>39939
Можно посчитать корень и дальше не заходить, там никогда нет.
71 2039991
>>39945
Корень исходного числа? Что-то я не могу понять что это даст. Типа ограничить так числа для var? Допустим если число 100, то найти его корень - 10, и дальше этого значения не проверять?
72 2040069
Расскажите что вы делаете на питоне (желательно что-то с использованием стандартных библиотек). Просто интересно чем люди занимаются просто для себя когда освоят язык, не только ведь вы работаете/фрилансите
73 2040104
74 2040117
>>39991
Смотри, если ты просто проверяешь число на простоту, а не разлагаешь его, то тебе надо проверять до корня. Дальше нет смысла.

Если ты разлагаешь на простые множетели, то имеет смысл пересчитывать корень, как только ты меняешь number.

Можно и без корня, немного оптимизировать. В питоне есть функция divmod(number, value). Она тебе возвращает пару, результат целочисленного деления и остаток, то есть
divmod(203, 10) = (20, 3)
если у тебя результат деления меньше, чем делитель, то значит ты уже прошёл корень и можешь прерывать цикл.
75 2040121
>>40117
Проверил, divmod может быть не самый лучший вариант, дорогая операция, раз в пять дороже проверки остатка на деление. Лучше один раз корень посчитать, чем divmod вызывать.
76 2040128
>>39991
Да, var не заходит за 10. Когда number меняется корень тоже меняется, ну так, опционально.
77 2040282
1. Курс '"Поколение Python": курс для начинающих' на Степике - https://stepik.org/course/58852/promo

2. PDF-ка "A Byte of Python" - https://wombat.org.ua/AByteOfPython/AByteofPythonRussian-2.02.pdf

Пройти первое (там только до функций и списков доходят), полирнуть вторым - норм идея?
78 2040293
>>40282
Оба пункта бесполезная хуйня.
Screenshot from 2021-05-23 23-20-03.png154 Кб, 833x702
79 2040309
>>40282

>PDF-ка "A Byte of Python"


Спустя 30 страниц от начала, это не считая оглавления, они дошли всё-таки до первой программы - Hello world! При том, что там всего 160 страниц.

А народ на Лутца почки катят, что там вода сплошная.
80 2040318
На python есть годные бордодвижки?
81 2040319
>>40309

> Спустя 30 страниц от начала, это не считая оглавления, они дошли всё-таки до первой программы - Hello world! При том, что там всего 160 страниц.


Помню начинал читать этот укус пистона, в итоге бросил, и правда сильно на любителя книжка, не понимаю почему про нее все говорят
82 2040322
>>40282

>PDF-ка "A Byte of Python"


Короче я (>>40309) решил полистать этот "укус питона", реально бесполезная хуета.

1) чудовищно много воды, объясняют как детям, только примитив, при этом умудряются эти вещи объяснять так, что если не знаешь, то адекватно не поймёшь.

2) порядок изложения копирует официальный туториал, но примитивно

3) есть шиза. Сначала что-то толкают из основ классов и наследования, без углубления в детали, необходимые для полноценного понимания, потом бац, и глава "Метаклассы". А это очень сложная продвинутая тема, в которой умеют плавать далеко не все практикующие разработчики, потому что это такие дебри, которые актуальны для создателей фреймворков и требуют очень хорошего понимания питона.

4) никакого практического тренинга.

Вывод: полный отстой и мусор, не стоит вообще на это смотреть. На самом деле вот официальный туториал не хуже.
83 2040412
>>40319

Потому что денег занесли. Она вообще тупо беспонтовая, просто успела появиться, когда пистон пошел к успеху, а книг не было вообще. Их и сейчас нет, а тогда так тем более
84 2040456
>>40322
>>40309

А про Лутца что скажите? И другие книжки Питона?
85 2040463
Да, чот посмотрел сейчас "Питон для детей" 2019 года - даже он поинтереснее будет. Там в середине книги уже какие-то оконные интерфейсы для Винды пилят.
86 2040467
Лёгкие книги
“Learn X in Y minutes - Python 3” - Ультрагоднота. Прочтите перед тем как начать читать книжки ниже. Подойдет как новичкам, так и старичкам и гуру которым нужно вспомнить синтаксис.

“Укус Питона” – “A Byte of Python” - Ультрагоднота. Эта книга используется даже в НАСА!

“Think Python: How to Think Like a Computer Scientist” - Ультрагоднота. Эта книга научить думать Вас как программист!

“Intermediate Python” - Читать после A byte of Python или Think Python

"Python Cookbook" - Читать после всего, что выше

А это у вас в шапке на Гитхабе написано

https://github.com/TheKnightsWhoSayNi/info/wiki/Books
87 2040514
>>40456
Всё сильно от бэкграунда зависит. С разным опытом нужны разные книги.

Тому, кто много лет программировал на C/C++/Java, нужны одни книги. А тому, кто вообще ноль в программировании и ИТ, тому другие книги и стратегия обучения вообще.

Мне сложно что-то рекомендовать тем, у кого нулевой уровень. Если опыт не нулевой, то вот три известные книжки, все есть на русском:

1) Fluent Python = "Питон к вершинам мастерства". В предисловии сказано, что для тех, кто уже как-то может на питоне, и хочет улучшить скилл. Воды особо нет, но мне кажется, больше программировать надо уметь, чтобы некоторые вещи понимать, а у питона достаточно за пару дней проглядеть базовый синтаксис.

2) Марк Саммервильд "изучаем Питон 3", как-то так называется. 2009 год. Очень годная книга, если ты уже умеешь прилично программировать на каком-нибудь другом языке, и теперь хочешь изучить питон.

3) Intermediate Python. Для тех, кто более-менее может программировать на питоне, делает лабы на нём. Книга про выжимки специфичных конструкций питона, не свойственных другим языкам.

Ну и официальный туториал тоже очень хорош.
88 2040536
>>40514
Ого, первая книга по ходу прям сильная. Спасибо.
89 2040645
В общем есть лаба на питоне, где нужно на из обучающей выборки нужно найти остаток деления на 4 целого двухбайтного числа, лаба в колаборатори, 1 курс, преподу похуй. Объясните мне пожалуйста что и как сделать правильнее? Сразу формировать выборку с учетом условия, или уже после формирования выборки искать в ней остаток?
90 2041106
>>40514

>Всё сильно от бэкграунда зависит. С разным опытом нужны разные книги.


Он прав, знавал одного вкатывальщика, что даже винду ни разу не устанавливал, не говоря про линуксы лол. Это конечно же не значит что такие люди безперспективны, всё в их руках.
Учить питону стало модно, курсы и "учителя" на каждом шагу.
Может сейчас в шараги питон завезли ? Я сам вкат-перекат и не мне особо умничать, но когда учился были паскали, си и ассемблеры.
91 2041122
>>38992
PyQT
При достаточных усилиях освоишь как питон, так и большой фреймворк. Да и приложение с нормальным UI получится (привет TKinter)
1399796898001.jpg99 Кб, 458x750
92 2041214
>>37483 (OP)
Можно ли соединить два словаря в Питоне, сохранив порядок ключей?
Инб4 словари превратить в упорядоченные словари для начала, потом соединить
93 2041234
>>41214
Что должно происходить в случае, когда порядок ключей в двух словарях отличается?

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

Если ты сделаешь
new_dict = {old_dict_1, old_dict_2}
(вместо % должна быть звезда), то тут как раз будет результат с сохранением порядка, сначала будут ключи из old_dict_1, с сохранением порядка оттуда, но с перезаписанными значениями из old_dict_2, потом ключи из old_dict_2, те, которые не встречались в old_dict_1
image.png2 Кб, 322x17
94 2041235
>>41234
блин, проценты тоже съедаются
95 2041256
>>41122
Спасибо.
Как раз до этого в кьюте с плюсами работал.
Уже запилил несколько тестовых и разобрался с логикой работы. Полет нормальный.
96 2041357
Тут кто нибудь делал приложения для андроид, возможно просто для своих нужд? Постоянно сталкиваюсь, что нет именно нужного мне простого функционала в программах, например мне нужен таймер, который будет подавать один сигнал единожды в заданное время, но я просто не нашел такого, везде либо классические будильники и таймеры, либо напоминалки простые.

Сложно вообще переносить питон программу на андроид в виде приложения?
97 2041465
По сути переписал код из видео и пососал хуй. Почему у автора всё работает, а я иду нахуй?
98 2041478
>>41465
бля чел серьезно?

coordX
cordX
99 2041485
>>41478
Не в этом суть
100 2041496
>>41465
У тебя твои "cordX/Y" приватные.
101 2041520
>>41496
от души, я всё же слепой
102 2041532
>>39146
Если я правильно понял вопрос, в .NET современная многопоточность делается через async - await, который под капотом генерирует машину состояний и использует тред пул.
103 2041613
104 2041702
Аноны, в качестве вката можно брать любой учебник из шапки треда? В общем, напишите с какой литературы сами начинали, пожалуйста, а то боюсь нарваться на "сложный" для начинающего учебник.
105 2041707
>>41702
Да тут прям разницы нет. Все равно будешь гуглить то или другое. Попробуй разные почитать и выбирай
106 2041736
>>41702
Я с этого начинал.
https://younglinux.info/python/course
изображение.png46 Кб, 816x287
107 2041801
Не могу понять почему в child классе есть одновременно 3 и 4 строки, хотя вроде тут одной хватило бы. Сначала мы определяем атрибуты необходимые для родительского класса, а потом через super() делаем по моему то же самое
108 2041813
>>41801
Ты дублируешь код __init__ с родительского класса
109 2041814
>>41801
Что ты определяешь, ты принимаешь параметры в конструктор. И передаешь их оригинальному конструктору, чтобы не повторять эти определения у себя.
110 2042084
Вопрос по тестам. Как пропатчить объект перед его созданием? (Нужно заменить атрибут в __init__)
111 2042219
Анонче, подскажи, почему в данном опусе индекс 16 % 2 != 0?

https://ideone.com/i50mwI
112 2042244
>>42219
Число 84 повторяется, индекс находит первое.
113 2042251
>>42244
Спасибо
Стикер255 Кб, 512x512
114 2042331
Добрый день, господа питонисты. Есть небольшой вопрос, т.к. сам я не очень хорошо сведущ в Питоне.

С помощью OpenCV я получаю картинку с вебкамеры. На основе кадра изображения я делаю некоторые объёмные вычисления, в каком то виде накладываю их на кадр и вывожу пользователю. Все это происходит в реальном времени. Проблема в том, что из-за того, что происходят такие объёмные вычисления стрим дико фризится. Захват кадра происходит раз в 5-7 секунд. Никто не в курсе как максимально лёгко это возможно пофиксить? Ну или хотя бы чтобы поток всегда хороший шёл, а вычисления были с опозданием.

Что я пробовал:
- Запустить программу на GPU, но CUDA ругается и не хочет ничего делать
- Пытался с помощью asyncio асинхронно результаты получать, но тоже успехов в этом не добился
- Пытался использовать Numba, но там он был неуместен, т.к. вычисления делаются внутри библиотеки.

В общем сильно прошу не хейтить. Может у вас есть какие-нибудь идеи как ситуацию можно разрешить.
image.png2 Кб, 270x34
115 2042338
>>37483 (OP)
Блэт, какой именно линтер поставить (и как) чтобы PyCharm автоматически подсвечивал мне ошибки? Стоит PyCharm Pro однако почему-то ничего не срабатывает, у меня раньше была обычная и все показывалось, но сейчас даже присвоения вроде абракадабры на пикриле не показываются как ошибочные
116 2042411
Подскажите, как дальше изучать django?Следуя официальной документации для новичков, я создал простой сайт, в какой последовательности дальше изучать его. Изучать расширенную документацию, например https://docs.djangoproject.com/en/3.2/topics/db/models/.Но это больше похоже на справочник для продвинутых пользователей, так как тут написано все возможное про модели, нужно изучить это это и все применить на практике, и так двигаться дальше?
117 2042413
>>41234
Благодарю.
118 2042426
>>42338
ты скачал взломанный про?
>>42411
бля джанго это жесть
231231.png21 Кб, 1323x485
119 2042642
Сорян за такой вопрос, наверняка тупой, я новичок, но суть вот в чем:
У меня не работает наследование шаблонов, делал все по туториалу, но я не знаю в чем проблема, тупо не работает, уже заебался искать, если кто поможет буду благодарен.

views.py
https://ideone.com/oKpRAN

urls.py
https://ideone.com/uJ1oGi

base.html
https://ideone.com/h1lCIh

product_detail.html
https://ideone.com/EJofFF
изображение.png52 Кб, 1060x175
120 2042660
Как ещё можно обнулить строку при переводе каретки в начало строки? \t не предлагать

Если без пробелов делать, то получим что-то тип этого:
Первый вывод "ожидание ответа"
Второй вывод "ответ принят"
Смотрится в консоли "ответ принятета"
121 2042667
Где косяк? Ни стандартная либа, ни python-dateutil не могут распарсить

locale.setlocale(locale.LC_ALL, "ru_RU.UTF-8")
dt_parsed = dt_parser.parse('21-Май-21 20:54')
dt = datetime.strptime('21-Май-21 20:54','%d-%b-%y %H:%M')
122 2042671
>>42660
sys.stdout.flush() попробуй
123 2042678
>>42671
На 3.9 флюш есть и в принте print(text, end='\r', flush=True) но так и так не работает и не думаю, что будет работать с stdout
124 2042682
>>42678
Тогда это тот самый момент:

#!/usr/bin/python3 -u

С ключом -u запускай
125 2042686
>>42682
Всё-равно не то.
126 2042690
>>42686
Ну тоесть оно будет работать, но нужно именно чтобы в коде работало, а не использовать ОСОБЫЙ запуск консоли
127 2042742
>>40069
Я играю в порно-игры на RenPy. Из-за сюжета, конечно.
128 2042825
>>42690
ты дурак? PYTHONBUFFERED=1
129 2042831
>>42742

> порно-игры на RenPy


Говноед
130 2042836
>>42825
Да не то.
131 2042911
>>42642
Ничего не понятно, что и как не работает? Где ты в своих шаблонах рендришь product_detail.html?

Я вижу только строчки
template_name = 'product_detail.html'
и далее template_name никак не используется и строчку
return render(request, 'base.html', {})

В общем смотри внимательнее, что ты пишешь.
132 2043043
>>40069
делаю игры со свиборгами и йоба фейсами
16100532870482.jpg96 Кб, 1024x1024
133 2043058
>>43043
Покажи
14974584317450.jpg88 Кб, 600x533
134 2043070
>>43043
Хуясссе!!!
2021-05-2522-19-29.png60 Кб, 793x630
135 2043072
136 2043074
>>43070
Пиздец, это реальный кадр или рофл?
15152207691241.jpg15 Кб, 200x207
137 2043104
>>43074
Это реальный кедр
138 2043109
>>43104
Почему тнищи так обожают йобу?
139 2043116
>>43072
Забавно. Выкладываешь куда нибудь саму игру или сорсы?
140 2043127
>>43109
Он прикольный.
141 2043130
>>43072
Бля, чет захотелось пакмана в виде йоба-фейса!
142 2043136
>>43116
нет, не выкладывал
>>43130
можно же намутить такое, мне кажется уже кто нибудь наверняка делал
изображение.png71 Кб, 156x200
143 2043147
Прочитал пикрил (точнее только первую часть где идет изучение питона, а дальше уже идут всякие проекты, типа игры и т.д.). Что читать дальше? Хочу делать проекты из этой книги, но параллельно еще и продолжать что-то более продвинутое читать
изображение.png534 Кб, 653x850
144 2043148
>>43147
Вот нормальная фотография
145 2043197
>>43148
что значит надпись ноу старч пресс?
146 2043216
>>43197
Издатель вроде, типа как O'relly и т.п.
147 2043218
>>43216
Это издатель вроде*

Фикс
148 2043307
>>43147
О, я эту книгу тоже наметил себе. Стоит прочтения? Пока только обучаюсь на интерактивных бесплатных курсах.
149 2043318
>>40069
Делаю пет проект, чтобы найти работу
150 2043351
>>43318
Какой проект?

Какие вообще проекты делают питонисты? Джиэсеры вроде любят To-Do лист делать на модных фреймворках.
151 2043362
>>43346 (Del)
Укус питона
152 2043365
>>43351
Пишу сайт на фласке.
Питонисту главное чтобы фронт был простым
153 2043422
>>43218
А, понял!
154 2043451
>>42742
Всякие Milfy City, Lust Epidemic и Midnight City? Ты же потом не слезешь с этого дерьма
unnamed.png26 Кб, 195x400
155 2043458
Чуваки, подскажите. Пишу парсер конфига. Сейчас забираются некоторые данные и складываются в словарь {'server_name': name, 'port': 80, 'ip_address': 10.111.22.45.} Но если определенной строки нет в конфиге, скажем ip_address, то парсер выдаёт ошибку attributeerror 'nonetype' object has no attribute 'group'. Можно как-нибудь её скипнуть или обойти?
156 2043464
>>43458
Какой конкретно парсер ты используешь?

Какой ip_address должен быть загружен, если в конфиге он не указан? Введи просто значения по-умолчанию.
157 2043656
>>37483 (OP)
Пишу в VS.

>from flask import Flask


> no module named 'flask'


Какого хуя?
158 2043664
>>43656
Не подключено соответствующее виртуальное окружение
159 2043678
Анонасы, что скажите про этот курс? Хочу вкатится в наносеки питонисты
https://freetutorials-us.com/learn-python-programming-masterclass/
160 2043681
>>43664
В студии только питон 3.7
161 2043687
>>43464
Спасибо, братишка, пока писал тебе в чём нужен совет всё сам понял и зарешал.
162 2043714
>>43678
Твой уровень английского позволит нормально пройти курс и вникнуть в материал?
163 2043715
164 2043758
>>43681
Тебе нужно настроить студию так, чтобы она подхватывала нужный питон с нужным окружением. Это несложно делается, куча мануалов есть по этому поводу.

Просто настройки студии, ничего дополнительно ставить не надо.
165 2043835
Какая же у pygame плохая документация
166 2043846
>>43451
It is too late, Anon. I have seen everything.
167 2043922
>>43307
Я пробовал как-то укус питона читать, вообще не понравилось. Эта как мне кажется намного лучше, хотя я уже писал выше об этом, меня работа со списками немного раздражала. Книга делится на две части, в первой рассказывают о питоне и есть практика в каждой главе, а во второй части ты делаешь несколько проектов, игрушку на pygame, и еще какие-то веб проекты с джанго
168 2043951
изображение.png128 Кб, 908x487
169 2044225
Годнота?
170 2044241
>>44225
прочитай, узнаешь
171 2044262
>>44225
Оглавление есть на сайте?
172 2044291
>>44225
Довольно интересная книга. Для новичка не подойдёт, но если уже с питоном знаком, можешь узнать кое-что новое. Есть, конечно, и устаревшие вещи, например про асинхронность, хотя может это в каком-то там издании пофиксили, но если не читать страницу за страницей, а только то, что тебе самому нужно - выбор хороший
173 2044302
>>44291
Это второе издание, оно вроде даже этого года, а первое было в 2015. Может и пофиксили всё. С питоном уже знаком более менее.
Значит ты говоришь страницу за страницей лучше не читать, а выбирать конкретные темы?
>>44262
Нет

В общем не нашел я ее на торрентах почему-то, так что наверное придется какую нибудь другую книжку выбирать
51OLsdBy8WL.SX383BO1,204,203,200[1].jpg51 Кб, 385x499
174 2044310
>>44225
Друг эту посоветовал
175 2044320
>>44302
Что тебе мешает скачать её не с торрентов?
176 2044331
>>44302

>Значит ты говоришь страницу за страницей лучше не читать, а выбирать конкретные темы?


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

Что-то пропускать можно, когда заведомо ненужные тебе темы, но осторожно. Когда ты что-то пропускаешь и ленишься, ты сам у себя крадёшь. Чем больше ты и разбираешься, тем выше у тебя скилл. Ты просто разбираясь со сложными ненужными вещами намного лучше начинаешь понимать более простые и логику много чего ещё.

Откровенное легаси да, другая история. Наверное стоит пропустить, чтобы себя не сбивать просто. Пожалуй только про asyncio там легаси явное, это 18-я глава и в меньшей степини 16-я, которая подготовка для 18-й главы.
177 2044334
>>44320
В ссылках шапки есть даже в переводе на русский язык, но первого издания, 2015 года.
178 2044346
>>44320

> Что тебе мешает скачать её не с торрентов?


Эм, вроде после всех этих блоуировок только торенты и остались, я не слшыал о каком либо сайте с книгами, который бы работал через впн у нас (да, флибуста есть, но там английской технической литратуры по моему мало)
>>44334
Так зачем мне протухшая книга 15 года? Первое издание я естественно находил, но вот второе не могу найти
179 2044349
>>44331

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



Но... ведь..

> но если не читать страницу за страницей, а только то, что тебе самому нужно - выбор хороший



В общем я тебя понял, буду пропускать аккуратно главы
180 2044362
>>44346
Не знаю какой жопой ты ищешь.
изображение.png55 Кб, 192x220
181 2044452
.png99 Кб, 824x568
182 2044468
Хулиганят старички.
183 2044513
>>44346
>>44362
На сайте же пишет Released November 2021, на амазоне вообще декабрь. А спиздят так вообще уже в 2022, так что бери первое издание и не выебывайся, ну местами устарело чуток.
184 2044517
Анонче, помоги, не знаю, как подступиться к задаче.
Есть одна консольная программа. Я ее пишу по работе для своих коллег, которые затем запускают ее локально на своих компах. В программу я иногда вношу обновления, и коллегам надо бы обновлять сорцы через git pull. Но беда в том, что коллеги - не разработчики, и рефлекса обновлять репозиторий у них нет. Как бы мне настроить программу так, чтобы, запускаясь локально, она проверяла, есть ли в репе гитлаба отличия от локалки? И если нет, то запускалась бы, а если есть - то гнала бы пользователя обновлять репу.
Я думал о чем таком: в мастер класть текстовый файл с номером версии. При запуске программа смотрит на этот файл и сверяет номер в нем с локальным номером - ну и дальше уже вся логика. Это реально? Или мб есть вариант проще?
185 2044518
>>44517
Просто запили "program_name upgrade" и скажи им, чтобы пробовали апгрейднуться перед началом работы.
186 2044521
>>44518
Хочу исключить человеческий фактор.
187 2044522
>>44517
Даешь коллегам всю директорию программы, вместе с .git. Саму программу делишь на два (или более) скрипта. Первый (основной) скрипт должен автоматически вызывать git pull при каждом запуске, и только после этого импортировать остальные файлы и запускать непосредственно программу.
188 2044574
>>44468
Откуда код?
189 2044613
Делаю первый проект, бэк на джанге, фронт Semantic UI (+ Vue.js если получится изучить, пока обычный jquery + js).
Нужна помощь с фронтом, частично его по требованиям реализовал, но некоторые вещи не получается подключить / непонятно как реализовать на js, т.к. нет опыта, изучаю 2 недели. Если у кого есть время/желание, напишите почту/телегу. Не бесплатно.
.JPG16 Кб, 1289x168
190 2044654
191 2044661
>>44654
Рандомный говнокод, ясно.
192 2044702
>>44654
Это тип официальная функция random в языке? Я просто новенький.
193 2044770
>>44702
Это официальный питон у тебя за щекой.
194 2044915
>>44770
Нет, у тебя.
195 2045038
>>44349

> Но... ведь..


Очевидно, что второе сообщение писал не я. Лично я читал эту книгу по главам. Иногда внутри глав встречались моменты, когда автор рассказывает о том, что я уже знаю, поэтому бывало и страницы скипал.
Короче говоря, читай так, как самому комфортно. Главное, хотя бы что-то прочитай.

>>44291-кун
196 2045069
Как в PyCharm настроить отображение времени, которое комп и IDE тратят на вычисление задачи?
197 2045323
>>44513

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


Может лучше другую книгу найти? Ладно бы это была какая-то ультимативная 10/10 книжка для продолжающих изучать питон, аналогов которой нет, но это ведь скорее всего не так, наверняка что-то еще хорошее вышло за прошедшие 6 лет
198 2045325
Пошарился по документации time модуля и не нашел как сделать так, чтобы был обратный отсчет, типа забиваешь такое-то количество секунд и когда они пройдут происходит действие какое-то
199 2045340
>>45325
Как ты это себе представляешь? Что будет происходить с основным потоком исполнения в это время?

Если тебе просто подождать, тогда просто
time.sleep(10)
do_something()

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

Вот ты, например, считаешь какой-то очень большой цикл, твоя программа должна его прервать? Или что?

Уже понимая это можно чего-нибудь предложить, или через модуль sched, или через потоки или asyncio.
200 2045347
>>45323
Не так много на самом деле изменилось, и не то, чтобы много книжек выпускают.

Книжку всё-таки сложно написать, кто этим заниматься будет?

Основное развитие питона с того времени:
1) asyncio
2) typing
3) по мелочам вроде контекстов, f-strings и др.

Но общего намного больше, тем более, что это книги всё равно про базу. Они не рассчитаны на то, чтобы учить тебя многопоточности и асинхронности, это слишком большие самостоятельные темы.
201 2045398
>>45340
Мне наверное подойдет просто подождать. Спасибо за ответ
202 2045419
>>45347
А сырую ерли аксесс версию второго издания стоит читать? которую анон кидал выше
203 2045424
Какие различия между функциями, которые пишутся вот так example(data), и вот так data.example? Никак не могу разобраться в этом

data это какие либо данные, а example функция питона
204 2045518
>>45424
Ты про классы уже прочитал, про методы класса? Там в принципе твой ответ.
81K7JHjczfL.jpg630 Кб, 1951x2560
205 2045556
206 2045569
>>45518
Получается то что просто со скобками это функция (типа print и т.д.), а после точки идут уже какие-то дополнительные методы у этой функции/класса?
207 2045585
>>45569
Когда ты например создаешь лист, ты пропихиваешь инфу в класс листов, твой лист становится объектом класса питон.лист и теперь ты можешь применять к нему методы этого класса, например append, pop, index и так далее.
Это же касается самодельных функций без класса или функции как метод твоего класса
изображение.png38 Кб, 786x585
208 2045792
А разве без deque результат не будет таким же? Вроде как в списках и без этого можно можно аналогично добавлять и убирать элементы, точно так же с разных концов можно. В чем тогда смысл?
209 2045793
Всем привет, говном не бросайтесь. Как хобби решил немного пошевелить мозгами вникнув хотя бы в азы и сразу хапнул лопату хуйцов.

Есть модуль sys, который про dir(sys) выдает гору переменных, которые он способен отобразить. Нехитрым кодом получаю список в норм виде, скажем так (пик 1).

print(dir.ХУЙНЯНЕЙМ) выдает значение этой переменной.

Ну думаю. Построю я вывод по примеру.
"Название_хуйни_нейм = значние_хуйни_нейм"

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

Хотел список заебенить типа
platform = джигурда
prefix = хуй
set_asyncgen_hooks = тебя ебет?
set_coroutine_origin_tracking_depth = 13
Подскажите куда копать, кому сосать?
210 2045824
211 2045833
>>45793
getattr(sys, i)
212 2045839
Здарова, бандиты.

Надо написать простой скрипт, который будет при выполнении идти на сетевой диск и записывать в текстовой файл или csv построчно список папок (их около180к получается) из указанной директории и полный путь к каждой папке, то есть каждая строка должна быть вида: id (просто счетчик строк), имя папки, полный путь к папке, комментарий (пустое поле).

С помощью гугла накидал такое, но соснул, потому что Path().absolute выдает мне по итоге не путь к сетевой папке, а путь к скрипту (то есть вместо z://папка/папка он выдает какой то бредовый путь типа c:\users\yoba\dekstop\целевая папка, хотя никакой папки по факту там нет и не было).

import os
from os import listdir
import Path from pathlib
for i in range(0,9):
f = open('D:/text', 'w')
l = (listdir("Z://Files/")
for index in l:
i = 0
i = i + 1
f.write(str(i) + ',' + index + ',' + str(Path(index).absolute) + ',' + str("commentary") + ',' + '\n')
f.close()

И это я еще тестил на папках своего диска, а как моя писанина воспримет 180 тысяч строк вообще хз.
В идеале, конечно, лучше бы писать сразу в csv или просто ячейки эксель, но с pyxl так и не разобрался, постоянная ошибка из за отсутствия прав на запись (хотя атрибут 'w' поставил).

Где я соснул, подскажите? Понимаю, что фигня примитивная абсолютно, можно это все наверное меньше, чем за 10 строк уложиться, но не программировал особо никогда.
image.png187 Кб, 1920x1040
213 2045859
>>45833
Спасибо огромное
214 2045876
>>45839
запилил на ideone
https://ideone.com/fork/Dyu9hq
215 2045920
Почему в джанге не работает наследование шаблонов? Какие могут быть причины если не учитывать ошибки в коде?
216 2046004
>>45920
Отмена. Я разобрался.
217 2046052
Аноны, держатель SYNC-библиотеки книг по питону(и не только) итт.
Есть ли что свежее для заливки/обновления?
Есть ли пожелания/жалобы/идеи для книгохранилища?
218 2046120
>>45069
я просто засекал на секундомере
219 2046132
Анончики, подскажите, как я могу проверять данные поинтервально? То есть, в массиве брать какую-то область (типа подмножества) и сравнивать её с условием????
220 2046172
>>46052

>Есть ли пожелания/жалобы/идеи для книгохранилища?


Там бы не мешало отсортировать что-то и структурировать. Скажем лутца всего в один каталог и подписать, что это лутц. А то сейчас он и в корне, и где-то глубоко ещё закопан, причём в файлах с именем вроде "Изучаем питон. 4-е издание.pdf", по которым ни разу не понятно, что это.

Другие книжки тоже не мешало бы отсортировать, хотя бы подписать "автор-название-год издания"
221 2046195
>>46132
???
a = list(range(100))
chunk = 9
from math import ceil
for i in range(ceil(len(a) / chunk)):
print(a[i chunk: i chunk + chunk])
222 2046205
Почему питон в соло - для заработка не применим?
223 2046369
>>46205
Ты о чем.
224 2046415
>>45792
deque оптимизирован под добавление и удаление элементов как в конец так и в начало списка: append, pop, appendleft, popleft выполняются за O(1) времени. Для list добавление в конец - append - выполняется за O(1), но добавление элемента в начало списка через insert(0, item) будет уже O(n), где n - текущая длина списка. Аналогично pop(0) потребует линейного времени.
Твой эксперимент с timeit это демонстрирует. Эффект объясняется тем, что list-ы в CPython реализованы через массивы, а не как односвязные или двухсвязные списки. У этого есть свой большой плюс - доступ к произвольному элементу выполняется за O(1).

https://wiki.python.org/moin/TimeComplexity
225 2046538
>>46369
Он про то что у него представление будто в других языках не так как в питоне, типа достаточно знать как хуярить классы, функции и циклы в джаве чтобы уже пойти зарабатывать, в питоне же это почему-то считается только доступом к пользованию библиотеками, которые уже как бы и определяют чем ты будешь зарабатывать.
226 2046629
>>46538
Ну он наверное про то, что на Питоне можно зарабатывать только или в связке с другими языками-инструментами или будучи математиком, ученым или дата саентистом.

Но как бы вот есть Ренпи, есть рынок 18+ и обычных визуальных новелл. И парни вполне зарабатывают. Это как 1 пример.
227 2046644
>>46629
Ну да, только в других языках точно так же, ты как бы не синтаксисом зарабатываешь, только в отличие от питона другие языки более вжаты в свою роль, а питон как шлюха со всех хуев посасывает сразу.
228 2046650
Котаны, Питон начал изучать недавно, столкнулся с проблемой. Мне надо написать программу, которая считывает инфу из файла и чертит изолинии. Саму программу написал, но в результате вылазит дефолтное окно matplotliba, если надо изменить число изолинии, то надо лезть руками в код. Хотел воткнуть это окно в какой-нибудь графический интерфейс и прикрутить там кнопку с настройкой изолиний. Попытался в tkinter, но походу это не то. В идеале хотелось сделать что-то типа выбора в Surfere как на пикриле.
229 2046655
>>46629
>>46644
Пиздец, ищут какие-то ниши. Зайдите на апворк и посмотрите, полно всякой работы на питоне. Выбирай да делай.
Я даже на пхп делаю дохуя всякой работы, причем не связанной с вебом, лол. Подучил, потому что был и есть спрос.
Screenshot1.jpg18 Кб, 415x259
230 2046763
>>46650
Отвалился пикрил
231 2046836
>>46120
До сотых долей секунды высчитывал через секундомер?
232 2046854
Накидайте, пожалуйста, красивых слов, которые чаще всего спрашивают на собеседованиях у разработчиков python.
233 2046857
Помогите нубу:
pip install git+https://github.com/author1/project1.git#egg=project1

А в ответ:
ERROR: Could not find a version that satisfies the requirement project1 (unavailable)
ERROR: No matching distribution found for project1 (unavailable)

Щито не так?
234 2046892
>>46655
А что есть на пхп не связанное с вебом?
235 2046923
>>46836
Да, он быстрый
Увожение.jpg23 Кб, 353x334
236 2046995
237 2047113
>>46995
ну есть же способ с таймитами?
или он не оч?
238 2047315
>>47113
import time
timer_start=time.time()
....
time_proebano=time.time()-timer_start
239 2047403
>>47315
ну как он, норм помогает?
3f11fec7a13e19b60121f429e24d3b6a.png4 Кб, 590x109
240 2047646
Начал ковырять джанго, написал небольшой сайтик, который отлично работал на локалхосте. Взял хостинг, установил туда питон, окружение, по фтп перелил все файлы и в итоге получил пикрелейтед. В гугле в основном про руби. В чем траблы?
241 2047656
>>47646
В сайтике
242 2047674
>>47646
В ДНК
243 2047685
>>47646
Адреса нужно менять. Я так тоже когда-то запускал сайтик правда на WP, сначала на компе, потом на хостинге. И траблы были с адресами-ссылками всяких файлов настроек, которые нужно было менять.
244 2047695
Аноны мне надо сравнить два листа, с игнорированием некоторых элементов. Т.е. совпадают ли элементы с 1 и 4 индексом мне неважно, а вот остальное должно совпадать. Есть простые способы, или нужно колхозить цикл с проверкой индекса?
245 2047699
Ананасы, не сочтите за говноеда, но есть ли скажем так максимально-минимальный. Редактор для питона?
Какойнить Akelpad+Портативный питон. Я хуею с этих оболочек по 100-300 метров, которые ставят в систему гору ебанины для банального обучения. Я осознаю, что всю эту хуйню можно было загнать в 5-10 метров, а не в 100-300 с лагающим интерфейсом и горой блядских кнопок, которые даже разрабы этих IDE ниразу не жали. Хочу просто на флешке таскать эту хуйню с дома на работу и обратно, но не ждать пока эта залупа с флешки грузится полчаса, чтобы там в перерыв поиграться 15 минут.
246 2047707
>>47699
vim на своей VPS и ssh доступ к ней.

>Хочу просто на флешке таскать эту хуйню с дома на работу и обратно,


Тебе оболочку в систему надо поставить только один раз. Впрочем никто не запрещает код хоть в блокноте набирать.
247 2047708
>>47646
почему не развернул его через через хероку например?
248 2047709
>>47695
срезами пробовал пользоваться?
249 2047712
>>47699
Гугл колаб
250 2047717
>>47709
Я не знаю где окажется нужный елемент. Т.е. может быть несколько массивов, с разными комбинациями.
[T,F,T,F,ANY]
[T,F,T,F,F]
MATCHED
251 2047719
>>47717
Сформулируй конкретно, что тебе надо. Я думаю, в этом больше половины решения твоей задачи.
252 2047731
>>47717
В общем твоя задача слишком нестандартная и поэтому вряд ли может быть решение проще, чем городить свой цикл
len(list_1) == len(list_2) and all(list_1 == list_2 for i in range(len(list_1)) if i not in [1, 4])
253 2047733
>>47731
len(list_1) == len(list_2) and all(list_1[k] == list_2[k] for k in range(len(list_1)) if k not in [1, 4])
254 2047751
>>47707

>максимально-минимальный редактор


>vim на своей VPS и ssh доступ к ней.


Ясно-панятно
255 2047813
>>47699
Почему ты не можешь поставить минимальную IDE на рабочий комп?
изображение.png13 Кб, 709x276
256 2047817
>>47709
>>47719
>>47731
Всё, спасибо разобрался.
Нашёл вот это:
https://stackoverflow.com/questions/12898804/python-list-of-booleans-comparison-gives-strange-results

И сделал через map(), где результат неважен использовал True or False, как элемент массива.

Там советуют numpy, но он в моейм случае он хуже map(), потому-что если ему отдать массивы разной длинны, он взрывается.
257 2047987
>>47817
Взрывается? ват? поясни
258 2048033
>>47656
>>47674
Госпаде, откуда вы такие токсичные уебаны? На каждый нубский вопрос тут вылазят такие хуесосы обиженные со своими смехуёчками. Разве эта тема не для тупых вопросов новичков? Нахуй вы тут вообще сидите тогда?
259 2048041
>>47708
Потому что я первый раз работаю с джанго и вообще хостингом. про хероку слышу первый раз от тебя.
PowerShell-logo.png15 Кб, 500x500
260 2048061
Хочу написать утилиту сбора информации о системе.
Хочу это реализовать как-то используя запросы или командлеты хуй знает как они там в windows powershell. Это имеет смысл? Что подскажете?
261 2048068
>>48061
Так гугли свои хуйлеты, питон тут чисто клей будет.
262 2048081
>>47685
Где?
У меня простой сайт, файлы проекта и файлы одного приложения. И там и там есть urls.py
Файл urls.py проекта выглядит так:
urlpatterns = [
path('', include('grab.urls'))
]
файл urls.py приложения:
urlpatterns = [
path('', views.index, name= 'home'),
path('media', views.redir, name='redirect')
]
Пробовал вместо ' ' и 'media' ставить прямые ссылки на домен - то же самое
263 2048098
>>48081
Я хз где у тебя и что конкретно. Я все делал с WP, а это как ты понимаешь ни разу не Питон.

Но.

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

Или пиши в тех. поддержку хостинга.
264 2048106
>>47987
ну ошибку возвращает, если массивы разной длинны, нужна дополнительная обработка, а с map, не нужна, он по возвращает сравнение по массиву минимальной длинны(сравниваем из 3 и 5, вернет 3 элемента).
265 2048108
>>48061
я думаю питухон и так может получить все эти данные, какой смысл павершел корячить?
266 2048114
>>48041
а. понял! ты сайты делаешь? как тебе джанго? мутота пиздец или норм?
267 2048119
>>48106
понял, просёк
268 2048120
Аноны. что за говно, на хероку не дает добавить редис бесплатно??
пишет типа - бесплатно, нажимаю добавить в проект он пишет - хуй на рыло тебе. че за ссанина?
269 2048135
>>47699
Тебе уже написали, любой юпитер-ноутбук подобное, колаб гугла, даталор джетбрейнсов, каггл. Код писать можно точно так же, все библы или уже загружены сразу, либо ставятся автоматом. Я в принципе перешел на это все с пайчармов и сублимов.
Еще преимущество очевидное, все файлы всегда с тобой на гугл-диске, ты в любой точке планеты получаешь одну и ту же рабочую среду
270 2048136
>>48033
Пчел, если ты заебошил себе хостинг, то должен уметь читать логи веб-сервера и сообщать что там написано или идешь просто нахуй.
У тебя не нубский вопрос, а долбобебский и тебе закономерно напихали хуев за щеку.
271 2048247
>>48136

>если ты заебошил себе хостинг, то должен уметь читать логи веб-сервера


Это кто такое сказал? Ты просто собака обиженная, вот и тявкаешь просто так. Уверен, что я не первый, за чей счёт ты пытаешься самоутвердиться. На аиб. В питон треде.
Жалкое чмо.
272 2048255
>>48247
Хуя бомбануло!
273 2048293
>>43072
Что конкретно использовал для написания? QT или какая-то узконаправленная библиотека?
Screenshot 2021-05-29 at 21.19.54.png25 Кб, 570x234
274 2048324
В пайчарме есть подсветка синтаксиса для css?
Куда нажать чтобы появилась?
275 2048405
Бесит шо питоша одно ядро тока юзает
Как ты его не еби не дрочи не выебывайся нагрузить проц - будет ебошить всё в одно ядро. Я прочел про всякие pypy и stakless сборки - всё одно и то же. 10% одно ядро и сиди жди.
Скажем заставить расчитать дико большое число в дико большой степени
print(99999999999999999999999)
Хуй тебе вместо быстрого расчета и нагрузке в 100% cpu/ я возьму 5 метров оперативы и буду дрочиться год на 10% проца, чем выжру всё шо есть и сделаю быстро
Поясните как заставить питон юзать всё железо.
276 2048411
>>48405

>заставить питон


Не нужно тебе это. Пиши на ассемблере, раз гуглить не хочешь.
277 2048413
>>48411
Ну чего ты ругаешься сразу. Я гуглил, узнал про все эти cpython и прочие реализации. Но или не так вопрос задаю или не там ищу.
278 2048414
>>48293
pygame
279 2048416
>>48405
Я заставил своего вялого вращаться у тебя за щекой.
280 2048420
>>48405
бля макака звездочки спиздил
print(99999999999999999999999)
281 2048421
>>48413
Под каждую задачу свои решения. Для вычислительных, например, есть numba, которая позволяет загрузить в некоторых задачах все ядра (опция nogil=True). Помимо того, что даже одно ядро так можно эффективнее загрузить.

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

На заниматься хуитой, поясняя что-то школотроллям, желания нет.
282 2048422
>>48420
print(99999999999 ХХ 999999999999)
283 2048442
>>48422

>print(99999999999 ХХ 999999999999)


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

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

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

То есть проблема тут намного глубже, чем GIL питона.

GIL проблема, когда ты сам руками создаёшь треды, а потом страдаешь, что они всё равно параллельно не считаются. Но чтобы жаловаться, надо сначала пытаться треды создавать, а для этого изучать предмет.
284 2048445
>>48442
Я изучаю, но спросить больше не у кого. Спасибо.
285 2048466
>>48445
То число, которое ты привёл, для своей записи потребует несколько террабайт памяти.

Я ради интереса глянул. Вот если считать число вроде
9^1000000
то считается оно очень быстро, доли секунды. Но если попробовать сделать что-нибудь вроде print(len(str(result)), то там на 20 секунд работы.

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

В любом случае, параллельные вычисления это большая и сложная тема. Просто вычисления на питоне это большая тема, в сыром виде питон для этого не предназначен вообще, надо прикручивать математические либы или/и использовать jit-инструменты вроде numba.

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

Ну и естественно, цель главная не загрузить процессоры, а посчитать быстро. Лучше загрузить процессор на 10% и посчитать за 15 секунд, чем на 100% и считать при этом 30 секунд.
286 2048474
Бля видел недавно на курсах крутой пример про скорость вычислений, которая зависит от кривости кода.
ormdocs.png1,4 Мб, 701x845
287 2048489
Я надеюсь тут есть джангисты.
Вкатываюсь значит в эту вашу Django Пытаюсь сделать запрос через orm но чет хуйня выходит.
В документации примеры вроде есть, но какие то не такие.
Допустим есть пример как выбрать книги и подтянуть автора. Но автор у книги один. А мне нужно сделать обратный запрос. Допустим есть 2 автора и у каждого по 10 книг. И мне нужно получить список из 2 автором у которых внутри можно пройти в цикле по книгам. И что то я не пойму. как это сделать. В документации ничего даже близкого не нашел. Может знает кто как это сделать или хотя бы по каким словам искать?
288 2048676
>>48416
пиздец, ты гомик?
289 2048702
>>40069
Я бота написал на селениуме, который чеках наличие пс5 в магазинах и уведомлял меня в телегу
Снимок экрана 2021-05-30 в 02.33.27.png13 Кб, 329x60
290 2048736
Короче есть два файла и IDE pyacharm актуальная
autostart/main.py
common/common.py

первый файл основной и исполняется, второй модуль с "общими функциями"
в первом делаю
sys.path.append('../common_modules/') # мне надо чтобы он брал по такому пути, скрипт может переноситься между компами
from common import *

и он прекрасно работает, тащит функцию из соседней папки и когда надо вызывает ее
но блять, каждый вызов пирам подчеркивает красной ошибкой в первом файле (неразрешенная ссылка, типа я ему пустышку подсовываю) да и сам импорт подчеркивается красным
но блять, повторюсь, оно работает
что делать чтобы оно не говорила что есть ошибка которой нет? я не правильно импортирую?
291 2048783
>>48736
Никак, он статически анализирует и не находит такой модуль.
Наведи на строчку и там есть опция ignore unresolved.
Screenshot1.png14 Кб, 998x548
292 2048785
Пытаюсь реализовать интерфейс с помощью tkinter, получится разбить на два фрейма? Типа наверху должен быть график, который строит функция из matplotlib'a . В нижнем фрейме можно же через grid разбить на три подокна?
293 2048786
Питонач, а когда можно считать, что вот, я выучил питон? Вот допустим сейчас где-то наполовину осилил второй том лутца, ориентируюсь во питоновских структурах данных более-менее понимаю принцип работы классов и всей хуйни со всей хуйней. Офк остаются некототорые моменты, которые я вкурил не до конца (аля args, kwargs, рекурсивные функции, и прочие приколы), но как будто это вопрос практики и недели за две можно будет это все добить. Вот собсна, дочитаю я этого лутца ебаного, параллельно дроча задачки. И куда дальше? То есть например, я хочу еще попердолить SQL посидеть, потому что он нужен примерно везде как я понял. Вот после какого момента переключаться на этот SQL ебаный?
294 2048790
>>48786
Пердоль sql через орм.
295 2048797
>>48786

>когда можно считать, что вот, я выучил питон


Когда ты умеешь найти ответ на любой вопрос в Python API Reference
296 2048831
>>48702
ты перекуп?
или просто хотелось новую консольку?
297 2048870
>>48489
Точно не помню, вроде так должно работать.
По id автора:
Books.objects.filter(author__in=[1,2]
По полю в модели автора:
Books.objects.filter(author__name__in=['pushkin', 'kalatushkin'])
298 2048911
>>48783
только этот загноит или вообще все ошибки где не видит?
299 2048925
>>48911
как то есть возможность обойти? свой пакет сделать?
photo2019-03-1515-20-05.jpg90 Кб, 900x672
300 2049024
Опять выхожу на связь, оказалось то что я придумал не работает(запись вида True or False, схлопывается внутри массива). Ещё раз реквистирую способ сравнить два массива, но при этом игнорировать некоторые элементы при сравнении. Например:

[1,2,3,ИГНОРИРУЕМ,1,2,3]
и
[1,2,3,99999999,1,2,3]

MATHCED!

Сто процентов должен быть где-то инструмент для этого.
image.png68 Кб, 512x768
301 2049053
Доброго дня.
Делаю задание на sqlalchemy, нужно считывать строки из таблицы и писать в json.
Как сделать возвращаемый sqlalchemy результат json serializable?
Описание класса на скрине. И как результаты считываю тоже на скрине ниже.
Если не будет метода dict, ошибка

>TypeError: Object of type User is not JSON serializable


Если он есть, то ошибка
ЮTypeError: 'method' object does not support item assignment
Единственное, что нагуглил, это объявить в классе метод, который возвращает словарь, и применять его к результатам построчно, типа:

>[r.get_dict() for r in result]


Вот тогда все нормально работает, но это выглядит как-то костыльно, может у sqlalchemy есть встроенные способы сделать сериализацию?
Screenshot 2021-05-30 at 18.00.42.png114 Кб, 1846x640
303 2049260
У меня есть этот курс со степика. Кому надо, могу скинуть.

https://stepik.org/course/96018/promo
304 2049273
>>49260
Выглядит охуенно, кидай.
305 2049296
>>49273
Могу начать выкачивать курс. Только надо куда-то его закидывать. Облака какие-то. Есть идеи?
306 2049299
>>49296
На рутрекер, может? Заодно не только двачу поможешь, но и человечеству в целом.
307 2049318
>>49296
mega, dropmefiles
308 2049337
>>48786
Когда ты можешь решить и закодить любую проблему подвластную условному мидлу и у тебя не возникает мысли "ебать тяжело, я это еще не проходил". И вообще нет такого "выучил питон", ты выучи какой-нибудь фреймворк и делай на нем проекты.
Представь например что есть дата-саенс и машинное обучение в нем. Там код зачастую без единого даже цикла, чисто команды к пандас, нимфи, матплотлибу и тенсорфлоу. В джанге какой-то свой код будет, я не шарю.
Я могу ошибаться, но мне кажется в 2021 погружаться в дебри питона, учить его делать всякие сложные штуки и эксклюзивные решения это проеб времени, особенно на вкате, тебе надо упереться в конкретный инструмент что тебя интересует и подтягивать питон чтобы с этим инструментом не было затупок.
И вангую опять же, что можно найти какой-нибудь кусок интервью Линуса где он говорит что так до сих пор и не выучил С, ну как пример тебе
309 2049379
>>49299
>>49318
Блин. Там в видео наверняка вшита куча тэгов для идентефикации. Чето я очкую.
310 2049430
>>49024
Какие элементы игнорировать? Типа четкую позицию, ну так просто выключай zalupa[3] в твоем случае. Можешь его заранее убрать. Если это число какое-то оче большое, то сравни с предыдущим, если разница больше какого-то порога, то в цикле пропуск.
Ты определись сначала чего хочешь
311 2049458
>>48831
Просто консольку хотелось, мог у перекупов взять, но принципиально не желал так делать
312 2049471
>>49024
Берешь и поэлементно сравниваешь. Если у тебя числа с плавающей точкой, то для игнорируемых элементов вставляй в первый массив значения не являющиеся числами (бесконечность например). Для целых можно передавать список индексов игнорируемых элементов.
313 2049508
>>49379
качай пдфки
314 2049694
Дорогие анонимы, можно ли значения функции как-то сохранить в список?
315 2049711
Есть у кого нибудь опыт разработки приложений под андроид, и выкладывание их в маркет? Возможно даже с исползованием kivy
316 2049720
>>49260
А зачем оно вообще нужно? Всегда бесили эти записи курсов где вещает "препод" для десятка людей, которые пердят в микрофоны и задают какие-то свои вопросики, потом им одну тему объясняют два часа? И обязательно начнуться какие-то проблемы со связью или что нибудь подобное. Ниикогда подобного не понимал
317 2049751
>>49458
и правильно, они лупят пиздец! алсо купил консоль или как?
Desktop 2021.05.30 - 16.46.11.03 (1).mp429,5 Мб, mp4,
1920x1080, 0:18
318 2049761
>>49337
в джанге ксс и штмл прут как не в себя
нужно параллельно с питоном срать штмл и ксс кодом
319 2049806
>>49024
Ну я бы зипанул, отфильтровал, анзипнул и сравнил целиком.
изображение.png26 Кб, 595x300
320 2049946
Вспомогательные функции в классе должны создаваться с таким же отступом как и обычные? Просто я думал, что их надо создавать в теле функции для которой они будут использоваться, но так ничего не работало
изображение.png258 Кб, 1158x819
321 2049979
Как в pygame сделать так, чтобы Rect изображения заполнялся фоновым цветом?
322 2050003
>>49946
Если ты создаёшь их в теле функции, то не забывай, что их надо создать до того, как ты их начинаешь использовать.

Вспомогательным функциям не нужен self. По крайней мере в этом случае, где ты self не используешь, у тебя именно функции, а не методы.
323 2050008
>>48786

>Офк остаются некототорые моменты, которые я вкурил не до конца (аля args, kwargs, рекурсивные функции, и прочие приколы),


Это ты на очень начальном уровне. Работа с args/kwargs это вот совсем такие базовые вещи.
324 2050015
>>50003
Получается можно их и в теле метода создавать, и просто в теле самого класса вместе с остальными методами?
325 2050037
>>49337

>И вообще нет такого "выучил питон"


Выучить питон - это когда ты больше не ужасаешься от кода, который написал год назад.
326 2050041
>>50037
Нет, это значит стать великим программистом, это куда больше, чем один питон.
327 2050055
>>50041

>Нет, это значит стать великим программистом, это куда больше, чем один питон.


Это уровень обычного мидла с 2-3 годами опыта.
328 2050138
Оффтоп.
Аноны, кто получал доступ к АПИ Твиттера? Что и как им надо написать, чтобы они дали ключи? В описании приложения писал, что хочу просто попробовать их АПИ - отказ. Писал, что в научных целях - отказ. По фану - отказ. Сцуко анально отгородились и не пускают поиграть.
329 2050148
>>50138
Они даже Трампа забанили, а тебя и подавно нахуй пошлют.
330 2050202
>>50138
Они кранйе подозрительно относятся к юзерам, просто сидящим в Твиттере из-под постсоветских IP или телефонных номеров, чего уж говорить про просящих доступ к API. Пробуй левый западный номер и VPN.
изображение.png8 Кб, 517x75
331 2050206
Есть программа. она разнесена на две функции, которые запускаются в разных потоках
Как сделать так, чтобы код одного потока вызывал функцию из другого потока и передавал туда данные?
332 2050220
>>50138
Напиши, что делаешь проект по гендерному равенству и тебе нужен анализ твитов на эту тему
333 2050369
Нубовопросы:
Где хранить изображения и файлы, привязанные к юзеру? Создать под них отдельный каталог на диске и дать ссылку в базе данных или можно хранить сразу в базе (к примеру Mongodb)?
334 2050463
>>50369
Хранишь файлами, в базе хеш, бонусом дедупликация.
335 2050493
А где находятся люди, которые делают ботов в телеграме? Тут можно спрашивать вопросы про это?
336 2050498
>>50493
Если твой бот просто выдает какую-то инфу какого-то конкретного толка, то сюда, если у тебя бот-пиздилка или генератор склеенных из куском нейро-волков, то тебе наверное в машоб тред
image.png7 Кб, 877x38
337 2050515
>>50498
Не-не-не, пока все просто. Конкретный вопрос по телеграм апи, который я не смог нагуглить. Слушайте.
Я отправляю картинки по URL. Проблема в том, что когда картинка узкая и длинная, как мой пикрил (не мой код, просто пример из соседнего треда), то телеграм отправляет его не как файл, а как документ.
Соответственно, когда я вызываю bot.send_photo, оно валится с ошибкой

>A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: wrong file identifier/HTTP URL specified



Мне нужен какой-то способ проверить, что картинку можно отправить как фото, а не как документ.
Проблема еще и в том, что в идеале я хочу отправлять картинки не поштучно, а через send_media_group, то есть о том, что все упало, я узнаю только при попытке отправки группы.
image.png11 Кб, 295x80
338 2050549
>>50515

>не как картинку, а как документ.

339 2050563
>>46655
Все эти фриленс биржи бесполезны без прокачанных годами аков с высоким рейтингом и портфолио. Думать что там ноунеймов будут заваливать заказами ужас наивность на грани детства.
Собственно поэтому в сети зарабатывают те кто успел вкачать аки за 10е, а остальные сосут банан. Особенно после пандемии.
15409261667890.png1,5 Мб, 1920x1080
341 2050625
11.jpg55 Кб, 581x567
342 2050703
Даров, двач.
Перекатываюсь к вам с плюсов, ибо хер с ними найдёш работу в Беларуси. Записался на тренинг, там финальный таск -- консальный рсс ридер. Вот вроде просто всё, хотя объём данных которые надо быстренько выучить запредельный. Написал прогу, что-то стартовое, за 3 дня, а как тестить не понимаю. Вот просто в голову не приходит как эту хуйню тестить, уже 4 часа просто смотрю/читаю гайды по unittest/pytest/nosetest/zalupatest, а идеи чё делать нету.

Не знаю насколько адекватно просить помощи в интернете, вроде задание то самому надо делать, но буду думать что это считается как поиск решения в интернете :)

Если вам не впадлу, гляньте код: https://github.com/UrekMazin0/PythonFinalTask/tree/main/rss_reader
Можете посмотреть откуда форнулся, мне не зазорно вообщем то, питон полтора месяца учу.

Основной вопрос, как это тестировать, чем подробнее, тем лучше. Ну и если напишите, почему я говно, и код мой не лучше, буду благодарен
343 2050721
>>50703
нда, забыл, комменты там хуета хуетой, сделаны что б я после попойки не забыл что писал, вот в кратце:

app_logger -- пару функций, вызываю в других модулях getLogger и по идее получаю ссылку на один и тот же логгер. К нему пернаментно привязан один streamhandler и один filehandler

feed_container -- складываю туда всю спаршенную залупу. Класс там занимается как парсингом, так и хранением. Он же раскладывают весь этот суп на ингредиенты. Он же занимается выводом.

parser_debug -- класс где сделал что-то для парсинга параметров терминала

reader -- main откуда всё за ниточки дёргается

debug -- УБОЖЕСТВО, ЗАКОМПЛЕКСОВАННЫЙ НЕДОНОСОК - БУКВОЕД. надо удалить нахуй, не помню зачем создал и что проверял

Ещё разок, я понимаю как тестить ебаную функцию add(a+b), но я не понимаю как тестить приватные методы класса, вот вообще не доходит что-то. Мб туплю, мб тупой, мб сложно. В общем буду благодарен за любую помощь
344 2050727
>>50703

>Перекатываюсь к вам с плюсов, ибо хер с ними найдёш работу в Беларуси



а как же варгейминг
345 2050748
>>50721
Ты зачем бухаешь, алкоголь же аргонизм разрушает...
346 2050771
>>50748
Уже давно не пью, это там скорее был речевой оборот.
347 2050774
>>50727
Хз, плюсовики, начиная от Милла, везде нужны, по крайней мере мне так видится. Джунику тяжелее, намного тяжелее чем в других языках. А в Беларуси темболее
Screenshot from 2021-05-31 17-13-51.png19 Кб, 579x216
348 2050839
>>50721
Неохота вникать. А почему бы код на картинке не написать как
def news(self, limit):
____return [<asterisk>islice(self.channel_items, limit)]

где <astrerisk> это звезда, которую имиджборды съедают?

А с учётом того, что у тебя channel_items это список и только список, можно сделать
____return self.channel_items[0:limit]
Screenshot from 2021-05-31 17-22-18.png28 Кб, 582x216
349 2050848
>>50703
А вот здесь ты специально в цикле 100500 раз создаёшь файл, а потом его перезаписываешь? Не жалко свой диск насиловать?
350 2050915
>>50839
Хм, а вот не подумал, спасибо, попробую щяс
351 2050919
>>50848
Ссд жалко :( А если серьезно , то да, очень нубская хуйня, 100 лет назад ушел от этой ловушки, но вот снова попался на питоне. Спасибо
352 2050930
>>50839
>>50848
Йеп, исправил, спасибо большое
353 2051240
>>50848
>>50919
Объясните в чем здесь ошибка, как перестать здесь создавать в цикле сотни раз файл?

мимо нуб
354 2051260
>>51240
Конструкция file>>51240
Конструкция open("name", "mode") as file
Создаёт объект класса, работающего с файлом, и возвращает ссылку на него в переменную file. Здесь в цикле создавался этот объект, что в общем то считается залупой, и так работать не должно.
Мимо автор этой херни, написал то что подумал, в Гугле мб правильнее оасскажут
355 2051263
>>50848
Бля, если я ещё и файл не закрывал, вот это я конч. Писал ночью усталый
356 2051270
>>51263
Он же сам закрывает если ты "with" прописал, только без with нужно явно прописывать закрывать файла
357 2051275
>>51260
А как нужно? Еще до цикла файл открывать? Или в цикле назначать нужные данные в какую-то переменную, а после цикла уже добавлять в файл?
358 2051283
>>51270
Ну тада норм, значит где-то я это скомуниздил
>>51275
Ну на абстрактном языке:
Открыть файл
В цикле:
Взять нужный item, записать в конец файла
Закрыть файл.

Как альтернатива
Открыть файл
В цикле:
Взять item, добавить его в массив Array
Записать весь Array в файл
Закрыть файл

Ну это все упрощённо
359 2051286
>>51275
Естественно, надо вне цикла файл открывать. Просто подумай, зачем тебе файл писать, и тут же переписывать его?

делай
news = self.channel_items[:limit]
with open("news.json", 'w') as file:
____file.write(json.dumps(news, indent=4))

или вариант

news = self.channel_items[:limit]
data = json.dumps(news, indent=4)
with open("news.json", 'w') as file:
____file.write(data)

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

Разница между двумя вариантами в том, что если по какой-то причине при json.dumps будет исключение, то файл создан не будет. В первом случае будет создан пустой файл, а если был до этого какой-то, то он уничтожится.

Иногда эти вещи важно контролировать, хотя надо смотреть, возможна ли такая ситуация в принципе, или нет. Чаще невозможна.
360 2051293
>>51286
О, надо разобраться в методе json.dumps. Вообще питон радует разнообразием конструкций
Спасибо, мимо автор ориг кода, не парень, спрашивающий про файл
361 2051298
Пиздос, ждем обсуждения хелловорлдов.
362 2051304
>>51298
Что лучше, attr+cattr или pydantic?
363 2051310
>>51293
А на каком языке ты до этого писал? НА каком уровне его освоил? Почему на пистон решил перейти?
364 2051313
>>51298
Покажи в название треда строчку "Только для сеньеров помидоров". Если такая есть, то хорошо, мы все уйдем и оставим вас профессионалов тут одних, будете восторгаться друг другом и задавать только умные вопросы
365 2051321
>>51310
Хз зачем тебе это
С++, иногда, когда стоило подергать за ниточки низкоуровневость(да, прям ниже чем плюсы), писал на С, подключая к плюсовым программам и вызывая функции. А, ещё когда для микроконтроллеров писал, тоже С юзал, правда там своя атмосфера.
Ну QT, хотя это и фреймворк, но там свой язык по сути, это вообще не плюсы в их базовом или типичном понимании. ООП во всей красе. Довольно приятный фреймворк, к слову

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

Перехожу потому что универ заканчивается, в Беларуси плюсы нахуй никому не всрались, практически, а сидеть на шее у родителей не хочу. Был выбор между шарпом, джавой и питоном, нравились все яп, но я тогда opencv увлекался и решил вот месяца 2 назад вкатиться а питон
366 2051335
>>51310

>А на каком языке ты до этого писал?


Он, кстати, написал:
>>50703

>Перекатываюсь к вам с плюсов,



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

Ремарка сразу - в таком стиле классы по-моему ни на каких платформах не принято называть, в том числе на питоне.
Даже pep8 рекомендует функции и методы называть как
def feed_container():
а классы в стиле
class FeedContainer:

глаз режет.

Не то, чтобы прямо совсем ужасно, снаружи смотрится как функция-фабрика, которая возвращает объект
feed = feed_container(url=parser.args_Space.source, args=parser.args_Space)

Тестировать сети довольно сложно, слишком много зависит от сети. Вообще мне кажется, что лучше разделять часть, что отвечает за сеть/транспорт, и часть, что отвечает за логику приложения. Логику уже можно при желании обложить тестами. А транспорт можно использовать разный. Хотя это актуально для больших приложений.
367 2051342
>>51335
У меня просят тесты на курсах, поэтому хочу их сделать, ну хотя бы для вида.
Класс я в начале так и назвал, потом переименовал, прочитав что-то где-то :) Вообще, к слову, тяжко это. В плюсах есть общепринятые практики, но нигде не найдёшь мануала, принятого офф. комиссией, как pep8. До сих пор привыкаю, хотя это и удобнее.

Хм, да, тут ты прав, я уже после того как написал понял, что было бы лучше разделить логику сети и хранения данных. А что ты под транспортом подразумеваешь? Способ вывода в консоль/файл?
368 2051346
>>42426
Pro можно "поломать" на линухе, если пошаманить файлы в /home/~
Сейчас уже не пользуюсь жидбрейнс, но раньше так и делал
369 2051350
>>51335
Ещё одно, у меня в целом то вопрос был скорее про тесты методов класса.
Есть у меня скажем
class Foo:
__init__(self):
raise Exception

__boo(self):
raise Exception

и как должен выглядеть, скажем, тест, отлавливающий эти эксепшены.
370 2051353
>>51321

> Хз зачем тебе это


Просто интересно

> Был выбор между шарпом, джавой и питоном, нравились все яп, но я тогда opencv увлекался и решил вот месяца 2 назад вкатиться а питон


Я вот в сторону шарпа поглядываю, сейчас кажется, что это в принципе неплохой и вроде даже несложный язык, но уже пайтон надо добить хоть до какого-то вменяемого уровня, а не перескакивать на что-то другое, так что на будущее оставлю си#
371 2051354
>>51350
def проебал?

Берешь и без задней мысли отлавливаешь
Только это должно быть не Exception а MyAwesomeExceptionClass
372 2051377
>>51354
да, def проебал
Да просто непонятно, как мне проверять эксепшены, вызванные неправильными аргументами командной строки. (Да, при вызове с неправильными параметрами я генерю исключение, хз насколько это правильно)
Типа, класс не принимает никаких входных параметров. Параметры CL берет с помощью инструментов argparse. Внутренние методы, та же валидация, в которой львиная доля всех моих проверок, тоже не принимают параметры. Тобишь я не очень понимаю как написать для этого тест

Эх, если бы можно было просто написать тест, который бы вызывал мою прогу с разными параметрами.
ТАК БЛЯТЬ СТОП. А насколько адекватно будет, если я буду вызывать свою функцию main() в тестах, но вводя в неё тестовые параметры, и отлавливать исключения из модуля, которых подлючался к main файлу?
373 2051386
>>51377

>проверять эксепшены


В этом и есть суть отладки, але
Благо в Пистоне продвинутое семейство эксепшнов, да и свои можно и нужно определять

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


Только вот что значит "неправильный" в курсе только ты. Ни я, ни прога этого не знаем
374 2051393
>>51386
Да не, она всё вполне может знать.
К примеру, если в параметр записать
-limit "govno"
Я вполне могу проверить тип, что он не int , и кинуть говно эксепшн. У меня ж вопрос насколько это бы было вообше адекватно, генерить эксепшн вместо обычного
print("ti govno")
sys.exit

И если это адекватно, как мне такое протестить, если класс получает всю инфу не аргументами, а долбаным argparse
375 2051394
>>51393
Извечный вопрос, что ты хочешь: бросать эксепшн или возвращать None из функции (1е кстати везде предпочтительнее)? Хочешь оставлять Traceback? Лог об ошибке? Это все на твой выбор

>если класс получает всю инфу не аргументами


Так argparse и конвертируется в эти самые аргументы. Интерфейс ебана
376 2051410
Петян, я всегда обходил эту тему стороной, меня просто воротило от этой хуйни, но сейчас придётся занятся. Короче, надо прочитать несколько аттрибутов из одного элемента xml файла, потом надо добавить один элемент в одно определённое место в этом xml, а затем записать xml на диск.

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

Какую ебанину лучше использовать ElementTree vs. Minidom если оставаться только в рамках стандартной библиотеки? Во что вкатываться? Плюсы, минусы, подводные камни?
377 2051411
>>51394
блеа, не понимаю, у меня ощущение что ты просто на более высоком уровне и я не могу донести мысль

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

Вот смотри, есть у меня метод
def Foo(x)
___try:
______if type(x) == str
______raise SomeCoolException
___except SomeCoolException:
______print("jopa")
___else:
______return x

И вот такой тестик

class MyTestCase(unittest.TestCase):
def test1(self):
self.assertRaises(SomeCoolException, Foo("govno")

Вот, всё нормально вроде, должен тест норм сработать.

Но хуета в том, что мой класс работает с аргументами командной строки, которые просто берутся при инициализации argparse.parseArgs(). И я не понимаю как мне написать тест, которые проверяет, не ёбнется ли моя прога введя пользователь --limit 90000000. Просто потому что как мне это число вообще бля запихнуть в тест, мой класс не принимает аргументов.
изображение.png38 Кб, 576x547
378 2051415
Делаю задание по книжке и немного запутался в коде. Откуда в нижней функции берется event.key? Меня смущает то, что он без "pygame.", а значит должен где-то в моем коде быть указан по идее, раз он не из библиотеки. Или он берется из цикла for верхней функции где всё делается через переменную "event"?
379 2051416
>>51415
ну ты кидаешь объект event, и в нём есть метод key. Вот и всё. Кинешь объект, у которого нет такого метода, будет бобо.
380 2051418
>>51411
Запихнуть ты можешь через sys.argv
Сделать
sys.argv = ['my_prog.py', '--limit', '900000000']
и твой парсер будет думать, что ты вызвал прогу с параметрами --limit 900000000
Потому что парсер читает по-умолчанию sys.argv, который от перезаписи не защищён.

Насколько вот это именно для тестирования через фреймворки корректно - вопрос. pytest вроде глотает.
381 2051421
>>51410
Ещё есть lxml, вроде очень быстрая. Я ей пользуюсь, но правда только для парсинга. Насколько ей удобно править документы не скажу, не пробовал. Вроде должна уметь.
16224963482180.png54 Кб, 576x392
382 2051424
>>51415
можешь не благодарить
383 2051425
>>51342

>У меня просят тесты на курсах,


А какой фреймворк у тебя просят? unittest, pytest, или что-то ещё, может тупо руками через assert?
384 2051426
>>51418
ага, вот про этот способ не знал. Попробую на нём написать костылики, уж это я люблю и умею, спасибо
385 2051427
>>51416
Может у меня совсем голова не работает к ночи, но я до конца понять не могу этот момент. Этот метод взят получается из библиотеки pygame?

Или раз это вспомогательная функция, то event ей вернет та функция что вызовет ее (то есть _check_events)? Она получается автоматически имеющееся у нее значение вкладывает во второй аргумент?

Ой, ладно, спать пойду, завтра попробую разобраться откуда этот .key берется
386 2051428
>>51425
Не, тут никакой конкретики, по моему. Русское поле экспериментов в общем, бери что хочешь
387 2051429
>>51421
Про lxml помню, но надо б без лишних зависимостей.
388 2051431
>>51424
Спасибо, ну я и затупил
389 2051433
>>51427
Я недавно на питоне, поэтому так и предположил.

В плюсах с этим проще,
void Foo(type ClassObject)
{
___ClassObject.Boo();
}

И если у объекта класса с данным типом нет такого метода, ты пойдёшь нахуй глубоко и надолго.

В питоне, насколько я всё это понял, ты по сути идёшь на соглашение с интерпритатором, что вот я сюда кину объект, назовём его условно event, и вызову внутри его метод .key. Если вдруг где то вызовешь эту функцию и кинешь место event что-то другое, у него не будет метода key, будем бобо. Скорее всего умная IDE найдёт ошибку на стадии написания оной.

Я так предпологаю, как реально это работает хз, меня напрягает динамическая типизация
390 2051434
>>51431
пожалуйста, обращайся.

>>51427
ну тут да, чувствуется, что ночью уже притупляется восприятие. этот key просто поле в event скорей всего. можешь посмотреть, что тебе pygame там возвращает. так просто я не могу понять, что ты под вторым аргументом понимаешь.
391 2051438
>>51346
почему жидбрейнс и почему перестал юзать?
392 2051440
>>51427
завязывай. хули ты так долго дрочишь? это вредно
393 2051442
>>51438
да весь евойный хак и шаманство с "файлами в /homo/" было подставление лицензионного ключа, который прилетал на университетскую почту. лицензия кончилась потому что из университета отчислили и почту забрали, а теперь заберут на осеннем призыве.
394 2051445
>>51429
pytest это тоже "лишняя зависимость"

unittest/pytest предназначены для специального тестового прогона, то есть на обычный запуск никак не влияют.

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

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

Глянь, кстати, на оператор assert. Он в принципе как раз вот для таких целей и предназначен.

assert parsed_data < 1000
assert parsed_data < 10000, "Number is too big"

несоответствие будет вызывать AssertionError

Мне кажется, сейчас скорее это требуется от тебя.
395 2051446
>>51433

>Скорее всего умная IDE найдёт ошибку на стадии написания оной.


Сделай так:
https://ideone.com/S64HlW
def func(obj):
____assert isinstance(obj, Base)
____print("func passed")

И можешь обходиться без IDE и typing/mypy.
396 2051451
>>51433
Любая динамическая утиная типизация так работает
Весь жс построен на ивентах и коллобеках. В каждый хендлер будет проброшены аргументы а через них переданы коллбеки и объекты

const handler = (event) => {console.log(event.key)}
397 2051452
>>51433
Ты за тредом то следи, неужели ты думаешь, что это я ищу event тут весь вечер?
398 2051454
>>51438
Потому что все разы когда моя убунту крашилась были из-за ебаного жидбрейнса - графическая оболочка просто умирала нахуй
Сейчас на vscode, полет нормальный
399 2051458
>>51451
really nigga так работает? Лол, я только предположил. Динамическая типизация -- хуета, имхо
>>51452
та хуй за ним уследишь, борда то анонимная. Ну не ты и не ты, чё обижаться то.
400 2051462
>>51458

>Динамическая типизация -- хуета, имхо


Заебал. Пиздуй на своём любимом Го писать.

Динамическая типизация позволяет массу трюков, вроде того, чтобы подставлять любой callable объект как аргумент функции, и это может быть функция обычная, лямбда фукция, связанный метод, класс, и много чего ещё. У тебя тучи возможностей по созданию декораторов, вообще масса всего открывается.
401 2051465
>>51462
а коим образом это делается только в динамически типизированных яп? Без шуток, интересно. Буду благодарен хотя бы ссылочкой
402 2051467
>>51458
Да блять так и не понял, минидоминировать или элементарно трепать xml
403 2051473
>>51465
да что сразу динамически типизированные яп? поинтер на функцию в си? не так красиво, конечно, но тоже работает.
404 2051475
Пайтонист-сама, подскажи заблудшему возможно ли реализовать на пайтоне нормальное десктопное приложение для окон и пинукса (ахуенно если с заделом под мобилки). Если возможно, то подскажи технологии/фреймворк. Заранее благодарю!
kivy.jpg190 Кб, 1920x1201
405 2051477
406 2051478
>>51475
Для десктопа лучше Electron js
Однако: десктоп подыхает сам по себе. Не шкварься об это
407 2051480
>>51477
Киви разве не для веб-приложений, деесу?
>>51478
Я не хочу веб-огрызок нерационально расходующий ресурсы, десу.

>десктоп подыхает сам по себе. Не шкварься об это


Почему ты так думаешь, десу?
408 2051481
>>51473

>не так красиво, конечно, но тоже работает


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

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

Ну блин, если не понимаешь, откуда берутся проблемы и преимущества разных подходов, то и похуй, твои проблемы.
409 2051483
>>51480
ты хочешь универсальную палку, которая была бы не говном мамонта, выглядела более или менее нормально, и тебе бы не хотелось пырнуть случайного человека ножом, когда ты б писал код?

я не знаю, какие другие технологии под питон ещё остаются.
410 2051484
>>51462
С динамической типизацией у тебя есть потрясающий выбор: потеребить яички пока будешь делать минет или нет, сосать медленно или быстро, проглотить или сплюнуть
411 2051486
>>51481
утиная типизация - божественна. двадцать лет назад ещё в универе я запрыгнул на жабу, и моя жизнь подкосилась. десять лет назад, я попробовал змею, и всё наладилось. жаль лишь только то, что волосы выпадать начали. но это генетическое, наука говорит, что по материнской линии передаётся.
412 2051487
>>51484
Хорошо, когда есть выбор, а не просто разорванное бутылкой шампанского кровавое очко.
413 2051488
>>51480

>Почему ты так думаешь, десу?


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

Правда история движется по спирали. Ещё в махровые 60-е и 70-е, когда ещё летали на Луну, а по улицам ходили мамонты, были маинфремы и тяжёлые юникс-машины, где большая основная машина, и терминалы проще. Потом акцент сместился на дектопы. Текущий уход в веб-облака это как виток спирали, вновь у нас мейнфремы и центральные хранилища данных, и терминалы к ним.

Однако чувствуется и следующий виток. Браузеры утяжеляются, внутри браузеров огромные хранилища данных, на гигабайны, код, зачастую бинарный (WebAsm), SPA с фоновыми процессами, когда у тебя страница может работать автономно очень долго без интернета вообще.

Но по части GUI мне кажется всё уж очень уверенно идёт в сторону html/css/js
414 2051490
Самое смешное, когда-то в середине нулевых писал я какой-то софт на плюсах и винапи. Сначала руками форматировал кнопки и текст, потом вдруг кто-то подсказал, что можно использовать компонент IE для этого. И интерфейс стало делать очень легко, рисуешь всё в HTML, даже динамику на JS добавляешь, насколько тот ИЭ позволял, работаешь с перехватом сообщений от компонента, и счастье.

Прошло сколько лет, эпоха сменилась, а полноценно этот подход так и не поддержали. В питоне точно нет, электрон какой-нибудь про это как раз.
415 2051491
>>51483
Понимаешь, программист-сама я совсем еще не смешарик кодер, а хокаге стать хочется хочу написать написать свое приложение, так как опыта нет я обращаюсь к опыту людей чего-то понимающих в сфере, а большинство плюётся от веб-приложений, десу.

>>51488
Меня это пугает, программист-сама. Наверное мне стоит пересмотреть свой страх веб-приложений, к тому же как я понимаю сие творение будет работать везде, а потом на его почве можно легко еще дополнительно в виде сайтика поднять. Это все же огромный плюс. Спасибо программист-сама.
416 2051498
>>51491
бери киви, иначе закончишь жизнь и карьеру с ткинкером ебаным
417 2051502
>>51498
Что есть ткинкер, десу?
418 2051566
>>51415
Там же написано

>Respond to keypress and mouse events


event это объект, которые генерируется при каждом событии нажатия кнопки или мыши, функции у тебя его обрабатывают эти события, поэтому дожны получать именно его, а не какой-то абстрактный event
Сам способ вызова гарантирует, что ты получаешь именно такой event
Свойства этого event смотри в описании pygame
419 2051665
>>51442
ЛОЛ, ты его препод?
420 2051787
>>51502
Встроенный питоновский интерфейсник, не рекомендую.
421 2051825
Аноны а как прочить из фала без вского говна типа переносов и так далее? А начинаю читать там целая пачка \n \r \b, я прорастаю их парсить. Как получить сразу строку?
422 2051841
>>51825
rstrip
423 2051845
>>51841
Сначала не понял что они только в конце, а потом как понял. Спасибо.
424 2051853
Нашёл годноту для вкатывальщиков желающих порешать задачки

https://adventofcode.com/
425 2051937
>>51853
Дизайн - мое почтение.
426 2051958
427 2051960
>>51958
Мы с аноном из поста №2051853 разные люди если что, я его пост увидел уже после отправки своего
428 2051988
>>51960
Ещё бы все эти находки таки смотреть, а не только находить и складировать.
429 2052191
>>51988
Ну я по своей ссылке на freecodecamp почти прочитал статью по питону, там просто кратко основы изложены. И пару видео посмотрел из видео-курса по питону. Мужик в принципе интересно рассказывает, и субтитры нормальные английские есть (не автоматические), так что вообще ляпота
bopytest.jpg530 Кб, 2250x2700
430 2052452
>>46052

>Аноны, держатель SYNC-библиотеки книг по питону(и не только) итт.


Хранитель книг, вот это вот у тебя в оригинале есть? На хабре перевод есть, но ужасный какой-то.
431 2052459
Цените хохму.

На одном сайте прохожу курс по Питону. Там дали такого вида задание:

В 1769 году Леонард Эйлер сформулировал обобщенную версию Великой теоремы Ферма, предполагая, что по крайней мере nn энных степеней необходимо для получения суммы, которая сама является энной степенью для n > 2n>2. Напишите программу для опровержения гипотезы Эйлера (продержавшейся до 1967 года), и найдите четыре положительных целых числа, сумма 5-х степеней которых равна 5-й степени другого положительного целого числа.

Таким образом, найдите пять натуральных чисел a, b, c, d, e, удовлетворяющих условию:

a^5+b^5+c^5+d^5=e^5.

В ответе укажите сумму a+b+c+d+e

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

Но есть один момент. Скорость выполнения кода.

1 способ решения - мой, нубский, вообще не думал когда код писал:

from datetime import datetime
start_time = datetime.now()

total = 0
for a in range(1, 151):
for b in range(1, 151):
for c in range(1, 151):
for d in range(1, 151):
for e in range(1, 151):
if pow(a, 5) + pow(b, 5) + pow(c, 5) + pow(d, 5) == pow(e, 5):
total += 1
print('a =', a, 'b =', b, 'c =', c, 'd =', d, 'e =', e)
print('общее количество натуральных решений =', total)

end_time = datetime.now()
print('Duration: {}'.format(end_time - start_time))

## Duration: 2+ hours

2 способ, парня, который тоже только проходит курс, но уже включил голову:

from datetime import datetime
start_time = datetime.now()

e = 0
f = 0
for a in range(1, 151):
for b in range(1, 151):
for c in range(1, 151):
for d in range(1, 151):
e = (a 5 + b 5 + c 5 + d 5) (1 / 5)
if int(e)
5 == a 5 + b 5 + c 5 + d 5:
print(a, b, c, d, int(e), 'sum =', a + b + c + d + e)
f = 1
break
if f == 1:
break
if f == 1:
break
if f == 1:
break
if f == 1:
break

end_time = datetime.now()
print('Duration: {}'.format(end_time - start_time))

## Duration: 0:04:30.087448

3 способ уже от какого-то опытного парня, который ил с других языков перекатывается или просто опытный в Питоне (или матеше/логике):

from datetime import datetime
start_time = datetime.now()

arr5 = [i 5 for i in range(2, 150)] # массив пятых степеней
abc = set(a + b + c for a in arr5 for b in arr5 for c in arr5) # варианты сумм а^5+b^5+ c^5
de = set(e - d for e in arr5 for d in arr5 if e - d > 0) # варианты разности е^5 - d^5
res = abc & de # пересечение вариантов

# находим a b c для верных ответов
abc_res = [[a + b + c, a, b, c] for a in arr5 for b in arr5 for c in arr5 if a + b + c in res]

# находим d e для верных ответов
de_res = [[e - d, e , d] for e in arr5 for d in arr5 if (e - d in res) ]

elist = []
for i_res in res: # исключаем повторения
for i_abc in abc_res:
if i_res == i_abc[0]:
aa, bb, cc = i_abc[1:]
for i_de in de_res:
if i_res == i_de[0]:
ee, dd = i_de[1:]
if ee not in elist:
elist.append(ee)
aa, bb, cc, dd, ee = sorted([round(aa
0.2), round(bb0.2), round(cc0.2), round(dd0.2), round(ee0.2)])
print(aa, bb, cc, dd, ee,'a+b+c+d+e=',aa + bb + cc + dd + ee)

end_time = datetime.now()
print('Duration: {}'.format(end_time - start_time))

## Duration: 0:00:01.048060

Мой способ не выполнился на моем компе даже за 2+ часа. Второй выполнился за 4,5 минуты. Третий - за секунду.

Так что не гоните на Питон, что он медленный, если у вас код кривой (Питон понятное дело медленный, но кривой код ролляет сильнее)
431 2052459
Цените хохму.

На одном сайте прохожу курс по Питону. Там дали такого вида задание:

В 1769 году Леонард Эйлер сформулировал обобщенную версию Великой теоремы Ферма, предполагая, что по крайней мере nn энных степеней необходимо для получения суммы, которая сама является энной степенью для n > 2n>2. Напишите программу для опровержения гипотезы Эйлера (продержавшейся до 1967 года), и найдите четыре положительных целых числа, сумма 5-х степеней которых равна 5-й степени другого положительного целого числа.

Таким образом, найдите пять натуральных чисел a, b, c, d, e, удовлетворяющих условию:

a^5+b^5+c^5+d^5=e^5.

В ответе укажите сумму a+b+c+d+e

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

Но есть один момент. Скорость выполнения кода.

1 способ решения - мой, нубский, вообще не думал когда код писал:

from datetime import datetime
start_time = datetime.now()

total = 0
for a in range(1, 151):
for b in range(1, 151):
for c in range(1, 151):
for d in range(1, 151):
for e in range(1, 151):
if pow(a, 5) + pow(b, 5) + pow(c, 5) + pow(d, 5) == pow(e, 5):
total += 1
print('a =', a, 'b =', b, 'c =', c, 'd =', d, 'e =', e)
print('общее количество натуральных решений =', total)

end_time = datetime.now()
print('Duration: {}'.format(end_time - start_time))

## Duration: 2+ hours

2 способ, парня, который тоже только проходит курс, но уже включил голову:

from datetime import datetime
start_time = datetime.now()

e = 0
f = 0
for a in range(1, 151):
for b in range(1, 151):
for c in range(1, 151):
for d in range(1, 151):
e = (a 5 + b 5 + c 5 + d 5) (1 / 5)
if int(e)
5 == a 5 + b 5 + c 5 + d 5:
print(a, b, c, d, int(e), 'sum =', a + b + c + d + e)
f = 1
break
if f == 1:
break
if f == 1:
break
if f == 1:
break
if f == 1:
break

end_time = datetime.now()
print('Duration: {}'.format(end_time - start_time))

## Duration: 0:04:30.087448

3 способ уже от какого-то опытного парня, который ил с других языков перекатывается или просто опытный в Питоне (или матеше/логике):

from datetime import datetime
start_time = datetime.now()

arr5 = [i 5 for i in range(2, 150)] # массив пятых степеней
abc = set(a + b + c for a in arr5 for b in arr5 for c in arr5) # варианты сумм а^5+b^5+ c^5
de = set(e - d for e in arr5 for d in arr5 if e - d > 0) # варианты разности е^5 - d^5
res = abc & de # пересечение вариантов

# находим a b c для верных ответов
abc_res = [[a + b + c, a, b, c] for a in arr5 for b in arr5 for c in arr5 if a + b + c in res]

# находим d e для верных ответов
de_res = [[e - d, e , d] for e in arr5 for d in arr5 if (e - d in res) ]

elist = []
for i_res in res: # исключаем повторения
for i_abc in abc_res:
if i_res == i_abc[0]:
aa, bb, cc = i_abc[1:]
for i_de in de_res:
if i_res == i_de[0]:
ee, dd = i_de[1:]
if ee not in elist:
elist.append(ee)
aa, bb, cc, dd, ee = sorted([round(aa
0.2), round(bb0.2), round(cc0.2), round(dd0.2), round(ee0.2)])
print(aa, bb, cc, dd, ee,'a+b+c+d+e=',aa + bb + cc + dd + ee)

end_time = datetime.now()
print('Duration: {}'.format(end_time - start_time))

## Duration: 0:00:01.048060

Мой способ не выполнился на моем компе даже за 2+ часа. Второй выполнился за 4,5 минуты. Третий - за секунду.

Так что не гоните на Питон, что он медленный, если у вас код кривой (Питон понятное дело медленный, но кривой код ролляет сильнее)
432 2052468
>>52459
https://codeshare.io/5zDNkN

Вот код не поломанный.
433 2052507
>>52468
Не знаю, что тут делать, типичная medium задача для литкода.
Не смотрел твоё решение, делал своё, вывод чуть другой, чем надо
https://ideone.com/BClUU0

>Success#stdin #stdout 0.33s 10696KB

434 2052521
>>52507
Я больше анонам притащил посмотреть чтобы новички (как я) лишний раз удивились от того, насколько время выполнения кода зависит от скилла того, кто этот код пишет.
435 2052525
>>52507
>>52459

>Так что не гоните на Питон, что он медленный, если у вас код кривой


Но вот с этим поддерживаю. Вот понимая питон, даже без математики можно довольно эффективно писать и компактно.

Обычно тормоза из-за того, что кривой код и элементарного понимания, что он делает, нет.
436 2052529
>>52525
И разница в скорости выполнения кривого и скилованного кода выше разницы в скорости выполнения кода между Питоном и С++ например.

Хотя, разумеется, скилованный плюсовик напишет более быстрый код, чем примерно настолько же скилованный питонист.
437 2052531
>>52521
Ну это всё-таки классическая алгоритмическая задача под литкод. Подозреваю, что оттуда примерно.

Просто при кодировании тоже элементарно налажать. Классика, это проверки вроде
some_value in list
где список довольно большой, и всё это в цикле. Что работает медленно, элементарное преобразование в множество-словарь, и код разгоняется. Куча других таких моментов.
438 2052546
>>52529
Главная особенность в том, что в питоне словари-списки это родные структуры, а как раз они позволяют оптимизации делать.

В плюсах, конечно, тоже словари есть, но уже в Си нет, надо подключать что-то со стороны. А вот пойди сделай это решение >>52507 без словарей. Сдохнешь. Скорее народ приучается писать уровнем ниже и не делает оптимальных решений.

Это вот как раз почему круто писать на языках высокого уровня. Тысячи трюков есть, которые позволяют компактно писать и при этом быстро.

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

Но и в целом питон не для байтоёбства, где надо короткие циклы очень быстрыми делать. Обычно питон для сложной логики больше.
439 2052564
>>52452
я не он, но держи анон

https://ufile.io/g7ws54wd
440 2052583
>>52564
Спасибо, бро!
12408451.gif668 Кб, 480x259
441 2052651
>>52459
Ты серьезно просто вбросил стену кода без табуляции вот так сюда на двач? Думаешь кто-то прочитал его?
442 2052662
image.png44 Кб, 777x526
443 2052709
Вкатыши, пойдём?
https://netology.ru/programs/python-free
444 2052713
>>52709
Номер телефона при регистрации.. Нет, спасибо
445 2052757
>>52709

>Python входит в 10 самых востребованных языков программирования


Кекнул с этого. Но вообще курс как обычно говно. Первый урок - что такое переменная, рассказываем 1 час, практикуемся 3 часа. Урок два - что такое луп, 1 час теории, 3 практики, 3й урок - что такое функция, час и три, урок 4 - пишем бота для телеги ололо, 1 час теории и 3 практики.
Ну еба-боба, хорошо он хоть без nltk, склерна и пайторча хотя бы, хотя там в функциях было "использовать сторонние библиотеки". И это все в браузерном иде, ммм, вкуснота.
Кабанчики конечно красиво страницу сделали.
gqs5JoYYTIc.jpg251 Кб, 805x1300
446 2052809
Сори за мудацкий реквест лол.

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

Что-то вроде "сперва объясняется конструкция языка, а потом даетсче пару базовых упражнений на тему".

По жс такого говна навалом нахлдил, а на питончике не могу найти.
Сейчас байт питона читаю.
447 2052861
>>52191
в смысле английские? на каком же языке он вещает?
>>52651
пиздец, можно подумать что табуляцию ты автоматически в голове еще не проставляешь? да ты должен табуляцию проставлять мысленно уже даже статьям в газетах
448 2052862
>>52809
в интернете такое есть типа питотнтютора
449 2052950
>>37483 (OP)
Парни, кто шарит в Джанго, почему django ORM добавляет моим query двойные кавычки? Например Chat.objects.filter(updatedts__gt=0).values_list('id', flat=True) превращается в:

SELECT "xer_service.chat"."id" FROM "xer_service.chat" WHERE "xer_service.chat"."updatedts" > 0

Из-за этого мои запросы в postgres не проходят, приходится сырые query использовать. Как это фиксится?
image.png51 Кб, 515x499
450 2053001
>>37483 (OP)
Как в pycharm изменить цвет на скроллбаре выделенной переменной, например у меня сейчас зеленым выделены места появления
451 2053032
>>52757
Предлагаешь вкатышам сразу на микроконтроллерах байты ебать?
452 2053035
>>52861

>да ты должен табуляцию проставлять мысленно уже даже статьям в газетах


иди-ка ты хуйца сосни. я ничего тебе не должен, за свой говнокод и фейл в оформлении в ответе только ты.
453 2053036
>>52757
Так этот курс чисто демо-версия. Вангую что там каждые полчаса будут говорить в духе "Ну вот мы сейчас эту тему быстро и неполно рассмотрим, но если вам интересно, то у нас тут есть курс за 19.999..."
454 2053039
>>53001
кури тысячи подпунктов в опциях настройки color sheme
455 2053040
>>53036
пидарасы. сразу понятно.
456 2053048
>>53040
Еще и майнер на машину подкинут.
457 2053065
>>53048
и пару чёрных хуйцов под сраку.
458 2053074
>>53035
Но это не я запостил кусок кода
459 2053076
>>53039
там реально тысячи вариантов?
460 2053081
>>53001
Почему бы не сделать так:
if month in ['марта', 'март', 'мар']:
____return '03'
461 2053086
>>52861

> в смысле английские? на каком же языке он вещает?


На английском. Просто я на слух плохо воспринимаю английский, а вот с субтитрами нормально, поэтому для меня это важно
462 2053103
>>52452
На заметку хозяйке, на орелли есть триал на 10 дней, с доступом ко всем книгам. Там есть практически все. Через 10 дней регаешь новую почту и поехал там даже мыло потверждать не надо
463 2053107
>>53103
Там ссаный онлайн, а не сочные пдфки.
464 2053110
>>52950
xer_service - название схемы
chat - название таблицы

Вероятно именно из-за такой нотации вылезают ошибки, но как это фиксить? Проект не мой, я могу просто и без задней мысли поменять нейминги в БД
465 2053138
>>37483 (OP)
Python for kids реально фо кидс?
Друг, который вообще ничего не знает о информатике, попросил что-нибудь для развития кругозора и "сменить тип деятельности".
466 2053139
>>53138
реально. Почти.
467 2053141
>>53139
Спасибо.
468 2053143
>>53081
Спасибо за подсказку, я ещё не так хорошо знаю python
469 2053144
>>52950
А ты уверен, что дело именно в кавычках? Ошибку какую выдает?
470 2053225
>>53143
В твоем кейсе еще можно создать словарь вида {'янв': '01'} и возвращать по значению из него, так будет красивее.
Да и можно погуглить, нет ли в стандартных библиотеках готового переводчика текста в дату, что-то мне подсказывает, что есть.
мимо великий программист
471 2053272
>>53001
В 3,10 завезли еще один вариант https://youtu.be/2qJavL-VX9Y?t=77
Стикер319 Кб, 500x500
472 2053346

>Ух, кайфовая задачка, в ЕГЭ по информатике есть она, те кто сдавали должны сделать. А те кто не сдавал помогу, задачка в целом не сложная, главное не запутаться.



Пришел на бесплатный курс по Питону, а тебя там ЕГЭ пичкуют. Ебанись.
473 2053449
>>53225

>В твоем кейсе еще можно создать словарь вида {'янв': '01'} и возвращать по значению из него, так будет красивее.


Не будет, код создания словаря будет таким же страшным, как простыня из if-ов.

Словарь разумен, когда:
1) у тебя действие в нагруженном цикле, ты его создаёшь один раз вне цикла.
2) он прилетает откуда-то снаружи, определён в другом месте, может вообще во внешнем конфиге или БД. Так ты сможешь править месяцы, добавлять варианты, не залезая в код, что очень правильно. Например захочешь добавить в январь-февраль-март січень-лютий-березень соответственно.
474 2053501
>>53076
нет, пара десятков только, но я верю в тебя и твой успех!
475 2053648
>>53086
понял. а русских нет сабиков?
>>53501
ок, просёк
476 2053759
>>53648

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


Нету
477 2053816
>>53648
Какие русские сабики, дебс? Это 1с тред или Питон тред?
478 2053960
>>53449
только словари, никакой ябучей колбасы из ифов
479 2054030
>>53759
анкул
>>53816
я так то немецкий учил, чел
480 2054033
>>53449
сичень? ты иностранец?
481 2054065
>>54030
Деда, тебе сколько лет?
482 2054103
>>54030
Сейчас бы не учить ангельский, вкатываясь в ИТ.. Ты видел документацию на немецком - это лютейший ад?
483 2054185
>>53144
Точно в кавычках
Пускал эти query в psql утилите - без кавычек все работает. Проблема в том что кавычки должны быть заюзаны вот так: "xer_service"."chat"."id" - то есть 3 компоненты выделено (название схемы, название таблицы и название колонки), а не 2 как у меня

бля как же я ебал эту джангу, просто ебанутый фреймворк
484 2054269
>>54030

> анкул


Учи, я в прошлом году за лето прошел всего красного мерфи, потом бросил и в этом году примерно в апреле уже продолжил заниматься потихоньку, но с синим мерфи, параллельно на ютубе отдельно темы какие-то смотрел. Начал Гарри Поттера читать и кое какую техническую литературу. Гарри Поттера уже страниц 80 прочитал и всякой технической литературы наверное наберется страниц 200.
Недавно пробовал с субтитрами Фореса Гампа смореть, было нормально, хотя конечно держал переводчик под рукой и постоянно на паузу ставил чтобы вникнуть в субтитры. Сейчас в оригинале портал первый прошел и второй начал проходить, тут уже потруднее, но процентов на 65 я все понимаю, кое что просто из-за усталости уже пропускаю и довольствуюсь тем, что хотя бы отдаленно понял смысл, и не лезу в словарь

Так что учи ангельский
485 2054271
>>54185
Нашел решение:
В db_table надо высрать двойные экранированные кавычки должным образом, чтобы query разрешались как надо

sqlalchemy намного пизже будет
486 2054275
>>54103
пришлось переводить промтом из английского на немецкий.
проще на русский
>>54065
довольно много... а что?
>>54269
ну вообще я знаю английский на том уровне, чтобы понимать смысл написанного или например слова в фильме на 70-80%
Но это за счет того только что я смотрел фильмы на английском еще с гнусавым переводом володарского и играл в игры без перевода озвучки, с сабами.
Естественно что нормально я понимаю обычную разговорную речь, то есть типа ват ю дуинг, коксакер, ват зе фак, бастард и т.п.
А вот в документации там специфические слова, которые в обычной речи не используются например, приходится смотреть перевод \. Я даже технический английский по тачкам типа драйветрейн, гирбокс, драйвешафт, строке и т.п. знаю лучше чем спицифику типа СИБЛИНГС блядь. файнд некст сиблинг, чего блядь?
487 2054277
>>54271
высрать? что за сленг?
488 2054278
>>54275
Потому что немецкий и французский учили в школах активно еще при СССР. После развала уже английский стал гораздо популярнее (но это субъективно, может где статистика есть).
489 2054281
>>54277
Слэнг Папки
Мотай на ус, салага
490 2054283
>>54275

>я понимаю обычную разговорную речь, то есть типа ват ю дуинг, коксакер, ват зе фак, бастард и т.п.


А вот в документации там специфические слова, которые в обычной речи не используются
Пиздец, хомо советикус in real life
Я б поостерегся такое существо даже близко к любому Белому Человеку подпускать
image.png102 Кб, 915x227
491 2054296
Может кто подсказать? В чём смысл пикрила?
Если можно не писать этот дополнительный инит и ничего не поменяется.
492 2054298
>>54275

>коксакер, ват зе фак, бастард


Никто кроме маргиналов не использует эти слова в повседневной речи.
493 2054299
>>54296
Но в классе Prop же есть конструктор, и скорее всего он что-то делает? Например инициализирует какие-то объекты внутренние. Для этого ты его и вызываешь.
494 2054302
>>54299
Ну да, всё так. Просто, если я не прописываю ничего дополнительного, конструктор в Prop всё делает так же, как и с этой прописью
495 2054303
>>54275

>с гнусавым переводом володарского


Ты дед

>А вот в документации там специфические слова


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

Мне кажется обычно всё-таки проблема со сложными оборотами и с тем, чтобы самому мало-мальски грамотно что-то изложить.
496 2054304
>>54302
В данном случая тут явно просто демонстрация ООП и переопределения конструктора. Переопределённый только печатает сообщение, и всё. Естественно можно целиком выкинуть весь __init__, но вызов super().__init__() как раз оправдан.

Просто учебная литература с упрощёнными примерами.
497 2054305
>>54302
Может пример некорректный, у родительского класса есть инит, в дочернем ты его переписываешь, но тебе надо добавить всего одну строку и поэтому ты пишешь строку, а потом вызываешь инит родительского класса
498 2054308
>>54304
>>54305
Типа, получается, оно нужно, чтобы я мог добавить что-то своё, аля класс с домом и я добавляю, что конкретно в этом доме живут хохлы?
499 2054388
>>54278
Мне предлагали кстати и французский тоже учить!
сакер.mp41,1 Мб, mp4,
480x360, 0:24
500 2054389
501 2054391
>>54281
Тебя в детстве случаем не завали Мистер Код?
502 2054842
Вопрос сопряжен с линуксоидной темой, но похуй.
Кто ставил на Debian/Ubuntu 20/Mint 20 питон через pyenv? Если да, то не решали ли вы проблемы с libffi.so.7? Все нужные пакеты стоят, эта либа есть в /root/lib/, но ни одна версия питона поставленная через pyenv не хочет работать совершенно: init.py выдает "ImportError: libffi.so.7: cannot open shared object file: No such file or directory"
19345011.jpg117 Кб, 792x595
503 2054895
>>54391
Сейчас меня зовут Big Daddy
504 2055015
>>54308
Именно, даже скорее есть дом, у дома есть метод заселить_хохлов, а ты можешь добавить в этот метод что перед заселением еще вызывется метод отключить_газ
505 2055040
>>55015
Ну ты жесткий путин ваще!
506 2055140
>>55015
Спасибо
rabbit.mp49 Мб, mp4,
1280x720, 0:32
507 2055142
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 30 июля 2021 года.

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

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