Этого треда уже нет.
Это копия, сохраненная 4 июня 2021 года.

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

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

Предыдущий: >>1977853 (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 1990004
вкот, питонщики.
тут есть кто делает игры на питоне по типу говна три в ряд или например олдскульные рпг?
3 1990039
>>1990004
Если ты решил делать игры на питоне, то остановись и подумай, все библиотеки питона для игр такое себе. Лучше уж выбрать юнити или другой движок и писать на c
doc2019-09-0615-37-52.mp45,6 Мб, mp4,
640x640, 0:34
4 1990149
Годная литература по алгоритмам никогда не устаревает я правильно понимаю? Посоветуйте пожалуйста. Грохаем алгоритмы слишком проста по отзывам. не бейте
5 1990203
>>1990149
Слишком проста по отзывам? Если с алгоритмами до этого не сталкивался, то простоты там точно не будет.
6 1990227
Решил тут почитать мангу, а у нее страницы сдвоенные, но не все. И некоторые сдвоенные на самом деле развороты. Как написать скрипт, который бы разделял одну картинки на две, при условии что сдвоенные картинки имеют ширину большую чем высоту, и белую полосу в середине?
7 1990231
>>1990227
Вот сдвенная странница, обычная и разворот
8 1990312
>>1990039
ну я имел ввиду игры просто по приколу, не для коммерции
image.png13 Кб, 510x347
9 1990376
>>1989943 (OP)
Здравствуйте, такой вопрос возник, вот щас дошел до изучения сортировок и вроде все понятно кроме одной вещи, а как на экран то результат вывести?
То есть вот, сортировка Хоара, она получает какой то список, че то там сортирует, а как увидеть то результат соритровки в том же самом например вскоде
Объясните пожалуйста, просто уже вроде как какую лекцию смотрю и нигде вообще не объясняется как вообще либо увидеть результат
10 1990391
>>1990376
for 0 to len(return) + принт по индексу +', '
11 1990394
>>1990376
Если не троллишь, то

nums = [2, 12, 85, 0, 6]
print (quicksort(nums))
12 1990415
Привет тред. Я правильно понял, что сокеты подходят только, если клиент написан на питоне? А если делаешь сайт, то они не подойдут, ведь клиент то не на питоне будет написан, а будет слать запросы к серверу из браузера? Тупой вопрос, но я в работе веб приложений что-то совсем нихуя не понимаю. https://www.youtube.com/watch?v=3UOyky9sEQY к примеру как код из этого видика переделать, чтобы это все крутилось в браузере?
13 1990429
>>1990394
Не тролю, у меня нихуя не получается и я не понимаю почему, то есть первый раз когда я вставил оно отсортировалось, начал еще раз пробовать начал выдавать вот такую ошибку
14 1990432
Есть функция, которая возвращает данные из бд логов (индексы и партицирование уже настроены). Проблема в том, что иногда скрипт долго висит из-за выполнения этой функции, т.к. на каких-то итерациях из очереди запрос может выполняться по 15-20 минут. Как мне внутри функции добавить асинхронный счетчик времени?
Ну т.е. как сделать, чтобы при вызове функции запускался счетчик, дальше идёт запрос к бд, дальше функция ожидает ответа и переключается на счетчик. Если счетчик насчитал за время ожидание, допустим, 10-15 минут, то принтит варнинг.
15 1990434
>>1990429
Животное, ты че ожидаешь передав на прямую данные?
16 1990436
>>1990434
Ну не стукай, я убрал, все равно не работает
"напрямую" это ведь ты имел ввиду что я в самой функции список написал?
17 1990444
>>1990429
оставь только nums в значение функции
18 1990446
>>1990436
Питон дырявая хуета, не работать он может даже если луна в раке.
19 1990453
>>1990444
Так и сделал, он ту же самую ошибку выдает, хотя в самый первый раз оно почему то сработало
>>1990446
Но как же... я же думал что лучший ЯП эвар... на самом деле ничего не думал, но впервые столкнулся с тем что сначала вроде работало, а щас перестало , хотя ничего по сути не изменилось
20 1990459
Учить программирование по функциональщине и скриптовом языке, всеравно что пытаться водить боинг видя вчера только руль машины.
>>1990453
переменные в функции локальные, точка входа получает только ссылки или подготовленные данные по типу func(a. 11, t, 55)
nums в тексте это примерно proc.main.var.nums
nums в функции это proc.main.func.name[nums]
разный уровень вложености.
21 1990462
>>1990459
Честно говоря, мне ни на грамм понятнее не стало от твоего поста
22 1990463
>>1990459

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


Этого двачну, сначала надо низкоуровневого говна пожрать. Но вкатышам хрен объяснишь.
23 1990470
>>1990462
У функции не переменные на входе, а ссылки, уже внутри разные уровни вложенности и доступа, все локальные не доступны из вне, и точка выхода только в ретурн.

Создай еще один экзепляр, просто функциональщики не могут в написание нормального кода, и логично чтобы
A = func(B) и A = func()->(B) A=func(* B). отличались.
Новички думают или создается копия, а оригинал сохраняется переменной или операциия происходит с самой переменной по типу B:= func(B)
24 1990479
Всем привет! Имеется. Как в пайтесте параматрищировать API ендпоинты? Допустим есть 5 разных видов эндоинтов, на который нужно написать один тест.
url1= “http://“
url2= “servis-huervis”
url3= “.com”
url4= “.pidor”
Url5= “https://“

Вот из таких комбинации грубо говоря нужно сделать один тест. Как это параметризировать?
В идеале, если это можно какую-то фикстуру запилить, скажем if url3 ==“.com” то делай это. И тд.
25 1990489
>>1989943 (OP)
Я произвожу некую операцию, которая занимает долгое время (запрос в базу например), как мне поставить таймаут на эту операцию, чтобы если он истек то выскочило некое исключение, которое потом можно было бы обработать?
26 1990493
>>1990470
Про то что на входе не надо ничего писать я и с первого раза понял, а еще у меня методом тыка получилось понять отчего TypeError возникал
>>1990463

>объяснишь


Справедливости ради, особо никто и не пытается объяснять, а те кто пытаются пишут настолько сложно что хуй разберешь что они тебе посоветовали, порой создается впечатление что программисты выебываются своим знанием технических терминов и стараются как можно больше ими выражаться прям как 12 летние девочки из твитора у которых зарубежных слов в посте больше чем русских
27 1990503
>>1990459

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


И функциональщина, и скриптовые языки довольно естественны.

Просто функциональщине надо иначе учить и иные задачи на ней решать.

Языки вроде питона тоже понятнее, чем Си-Ява. В последний слишком много с самого начала инженерной хрени непонятного назначения.

#include <stdio.h>
int main(void) {
printf("hello world \n");
return 0;
}
Вот тут, что такое include, что такое stdio, что за магия, int, main, void, return?

Чуть дальше начинается магия с выделением памяти и т.п., и т.п.

Правда для бэкграунда в это полезно погрузиться.

Но я бы сказал, что питон как первый язык очень-очень хорошее решение. Вот JS, PHP так себе варианты, лучше не надо.
28 1990548
>>1990429
В строке 3 нужно return nums, а не return. У тебя же в первом посте правильно было.
image.png20 Кб, 636x147
29 1990559
А вообще реально получить текущее значение генератора, не запуская по новой next ?
1616200126624.png8 Кб, 434x533
30 1990567
>>1990004
Ку, делал около года назад "Жизнь" на pygame
До этого еще всякую дичь на том же pygame делал
31 1990570
>>1990559
разобрался, нужно было через переменную сделать
32 1990580
Внимание, ПЛАТИНА!

Есть смысл пересаживаться с ПЫХи на Питон для веб-кодинга?
696333D5-8288-4D2D-9D90-B02C0E734A90.jpeg229 Кб, 1200x1600
33 1990586
Вниманий платинная! Стоить ли вкатитися в айти на питонзмея програмируи, когда тибе 33 годика?
34 1990590
>>1990580
С пыхи всегда есть смысл пересаживаться
35 1990596
>>1990586

>33 годика


Дед, гроб пора заказывать по индивидуальному дизайну, какой питон?
36 1990597
>>1990586
Последние 10 лет небось занимался лишь дрочевом tpl-шаблонов со вставками жкьюри да косплеем жавовского спринга, устраивая из него каргокульт?
37 1990603
>>1990429>>1990453

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


В третьей строке nums добавь к return
38 1990604
>>1990597
Не братан, я вообще даун торговый представитель, с кодом не знаком ни капли.
39 1990630
Как вообще для вката jetbrains academy + leetcode + свой аналог двощей на джанге? Плюс ещё Кормена наебнуть и что-нибудь по проектированию рестухи. Из опыта в ит стажировочка по системной АНАЛитике и 3 курс вузика по прикладной информатике. Плюс пара хаков выигранных. Хватит такого чтобы каким-нибудь джуном пойти или ещё чего-то наебнуть?
40 1990633
>>1990604
Если тебе это интересно, то очевидно стоит попробовать. Но будь готов к тому, что при лучше раскладе уйдёт около полугода на вкат джунобомжом.
41 1990640
>>1990479
Плиз хелп!
42 1990644
>>1990429
Убери мутабельную переменную из дефолтного значения. Это первое. И никогда так не делай. Она инициализируется 1 раз и если вызовов функции будет два, то ты охуеешь искать где баг, так как предыдущий вызов будет влиять на следующий.
Второе, ты когда функцию вызвваешь для списка из 1 числа, то возвращаешь None. А питон складывать None со списком не умеет. На это питон и ругается. А вот эти долбаебы советчики я вообще в ахуе
>>1990444
>>1990434
Но вот этот дебил просто пиздец. Язык у него через раз работает, пиздец. Мозги у тебя через раз работают просто >>1990446
43 1990646
>>1990479
Сформулируй свою мысль, читать невозможно
44 1990649
Потихоньку учу питон, вкатываюсь в функции. Попробовал подключиться к рабочей базе данных, и сначала не получалось, потому что код был такой: https://ideone.com/XaTPfr

Потом я добавил функцию main, которая вызывает connection внутри test, и оно заработало: https://ideone.com/z1yujK

Почему не работал мой вариант? Я думал, что если возвращаю через return результат подключения (conn), то могу использовать его как аргумент в следующей функции.
45 1990651
>>1990604
Пиздос, тебе сейчас фантазер уже 1 написал про "войти в айти за полгода". Кроме того, что это обесценивание знаний, так еще и просто неправда. В лучшем случае, если повезёт года полтора. В среднем на два года расчитывай. Сюда докидывай от месяц до трёх на поиск работы(в зависимости от региона и размера города).
46 1990653
>>1990649
Бля, тут все глухо. Даже объяснять бессмысленно. Попробуй с чего попроще понять. Ты просто не понимаешь как работают функции
47 1990657
>>1990653
Я пробовал читать/смотреть гайды, везде пишут/говорят, что вот, мол, хуе-мое, вот функция, возвращаем ее результат, и теперь мы можем этот результат использовать дальше. И никаких main() там не было.
48 1990661
>>1990657
Плохо читал и смотрел. Давай так — что такое переменная?
49 1990666
>>1990661
Это заглушка, вместо которой можно подставить любое значение.
50 1990670
>>1990649
В 1 варианте ты в функцию test() не передал connection().
51 1990673
>>1990567
ЛОЛ, тут в дваче расшаривал игры?
как оно тебе?
что еще за дичь мутил?
52 1990676
>>1990670
Да, во втором случае я это и сделал. Но я-то думал, что передавая в test - conn как результат функции connection, оно будет работать. И вот я не понимаю, почему это так не работает.
53 1990678
>>1990630
бамп вопросу
54 1990680
>>1990649
Надеюсь ближайшие 5 лет 95% вкатывальщиков, которые параллельно лезут на рынок вместе с мной, будут вот такими, тогда себя не таким отбитым уёбищем ощущаю.
55 1990682
>>1990676
Так в 1 примере ты ничего не передал в test, на 20 строке у тебя вызов функции.
56 1990683
>>1990680
Ну не токси, лучше бы помог анчоусу разобраться.
57 1990687
>>1990682
Ааа, ты про 20-ю строчку. Я думал, ты про 13-ю. Ну окей.
58 1990689
>>1990687
Кекус, на 13 ты ОПРЕДЕЛЯЕШЬ функцию
Начни с базы, анчоус, почитай доки
59 1990690
>>1990683

>Я думал, что если возвращаю через return результат подключения (conn), то могу использовать его как аргумент в следующей функции.


Вызовом функции connection() на 11 строке ты "создал" объект подключения в памяти, но не привязал его ни к какой переменной (ссылке).
Потом ты на 20 строке вызываешь функцию test(), которая принимает на вход что-то, в твоём случае объект подключения, но ты ей ничего не передал, поэтому ничего не работает.
60 1990702
>>1990649
Чтобы использовать результат одной функции в другой, нужно этот результат получить, а потом передать в другую функцию. Сходство названий переменных в телах аргументах разных функций ничего не означает - переменные, объявленные внутри функции, живут только внутри этой функции.

def f1(): x = 0; return x
def f2(): x = 1; return x
def g(x): return x + 1
print(g(10)) # 11, не 1 и не 2

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

result = f1()
print(g(result))

Или сокращенно print(g(f1())).

В твоем случае, в строке 11 создается и тут же выбрасывается объект соединения (т. к. ты не сохранил результат работы функции ни в какую переменную и никуда не передал). В строке 20 функция тест отказывается запускаться, потому что ты не передал туда никакого значения conn.

Что почитать: LEGB rule - алгоритм поиска переменной в питоне; lexical scope.
61 1990709
>>1990646
Есть эндпоинты, они разные. На них нужно писать тест юниты в пайтесте.
Чтобы не писать кучу одинаковых тестов где меняются лишь юрл нужно что-то придумать.
Пока сделал следующий образом. В файл записал ссылки. Сделал один тест и в этот тест через pytest.paramerize закидываю по одной ссылке. Вроде норм.
Но теперь в эндпоинте поменяли адрес с .com на .net например. Можно ли как-то иначе передавать данные в тест чтобы ссылку можно было порезать и в случае изменения домена проставлять нужный.
GztUAW4u0Kc.jpg81 Кб, 604x426
62 1990715
>>1990702
Охуеть. От души за пояснение, анон!
63 1990847
>>1990415

>Я правильно понял, что сокеты подходят только, если клиент написан на питоне?


Нет, неправильно

> как код из этого видика переделать, чтобы это все крутилось в браузере?


Видеву не смотрел, но судя по превью, там речь идет о голых tcp-сокетах, это не те сокеты, что ты ищешь. Тебе нужны вебсокеты, используй их. Сервер можешь на питоне пилить, а клиента, раз клиент в браузере, на джаваскрипте.
64 1990896
Питонусы, обьяснити нубасы что такое эндпоинт. Ручка Строка реста? Или под этим иногда подразумевают что-то ещё?
65 1990900
>>1990896
host:port/api/user/{id}

Вот пример эндпоинта. Например шлёшь GET api/user/1 и получаешь запись из БД с id 1.
MAPTrentonJessy011.jpg53 Кб, 600x364
66 1990901
>>1990896
Видишь эндпоинт?
67 1990902
>>1990901
Типичное общение бэка и фронта по rest api
68 1990950
Аноны, кто работал с Instagram? Хочу себе сделать скрипт для автоматического постинга веселых картинок. Есть библиотека instabot. У нее в зависимостях numpy!!!1 и еще куча всякого.
Вопрос: Есть что-нибудь полегче? Или пох юзать этого инстабота?
69 1990973
>>1990673

>ЛОЛ, тут в дваче расшаривал игры?


Не, боюсь диванона и травли храню петы на гитхабе

>как оно тебе?


Было весело делать, вообще делал эту игру только потому что нарандомил её в programming challenges
pygame довольно прост сам по себе, если делаешь что-то небольшое
Сложнее было делать лаунчен на PyQt пикрил который кстати сука при темной теме GTK делает шрифт Qt невидимым, потому что я еблан не поправил конфиг
По итогу я не знаю как лаунчер в целом работает, просто гуглил, читал мануал и подстраивал чужой код под себя

>что еще за дичь мутил?


Смотря о чем вопрос, в целом на пистоне много всякой дичи делал, веб-приложухи, скрипты для автоматизации каких-то задач в ОС
Если про другие игры на pygame, то делал alien invaders, по гайду из одной книги python crush course, но это супер давно было, тоже ничего сложного по сути, пытался сделать платформер потом, но ничего из этого не вышло
Если про игры вообще, то еще в шараге была задача сделать тот же alien invaders но уже на ассемблере
Вот это реально треш был, там мозги кипели жестко, зато теперь понимаю как вообще все устроено на уровне железа

BTW, после шараги начал вкатываться, не справился с требованиями к web ждунам, потому что там была какая-то ебейшая математика и 100500 фреймворков и вот уже год работаю в банке, чищу вилкой данные для дата-сатанистов, строю etl'ки
70 1991006
>>1990666
Нет. Вот попробуй с этого начать. Ты пропустил самую важную часть программирования
71 1991008
>>1990709
Бля, что у тебя на эндпоинты подаётся и возвращается, что ответ отовсюду одинаковый? Или это последствия гениальной архитектуры?
72 1991010
>>1990651
Братюни спасибо за позитивные слова, я как бы не планирую моментально стать профикодером, рассчитываю на работу примерно через 1,5 года, то есть 18 месяцев на вкатывание.

Пока начал с Яндекс практикума, и хочу составить список литературы для понимания основ, слышал про некого Савина как он?
73 1991029
>>1990586
>>1991010
Чел, а можешь подробнее о себе? Какое у тебя образование? Как математика в школе давалась? Есть ли хоть какой-то интерес к программированию и информационным технологиями или просто хочешь работать за 300к?
изображение.png83 Кб, 243x207
74 1991041
Анчоусы, подскажите , как работать с json.
Библиотеку глянул, ну нихуя не понял, смог только вытащить структуру словарём. Но наверное же есть методы чтоб кокретный кусок только доставать, а не копаться в словарях тройного вложения.

И вопрос вопрос номер два. Если есть вложеный словарь, можно сразщу получить доступ в N вложение, если знаешь ключи, или только в цикле перебирать?
75 1991042
>>1991041
Нету, ты строку приводишь к словарю. Потом с ним и работаешь
77 1991047
Дублирую вопрос...
Как вообще для вката jetbrains academy + leetcode + свой аналог двощей на джанге? Плюс ещё Кормена наебнуть и что-нибудь по проектированию рестухи. Из опыта в ит стажировочка по системной АНАЛитике и 3 курс вузика по прикладной информатике. Плюс пара хаков выигранных. Хватит такого чтобы каким-нибудь джуном пойти или ещё чего-то наебнуть?
изображение.png387 Кб, 1280x676
78 1991054
>>1991046
Я ничего не понял
изображение.png4 Кб, 509x97
79 1991060
>>1991054
Ой блять, это питонотред, ошибся немного
80 1991079
>>1991060
А теперь как понял. Спасибо анон.
81 1991088
>>1991041
json.loads()
json.dumps()

json.load()
json.dump()

Вот и всё, что тебе нужно. Прочитай в инете про них, не займёт и 5-ти минут
82 1991090
Можно ли в питоне написать код на любом япе и вставить как модуль, как это будет выглядеть, сильно сложно? На уровне пит компилятора должно же быть что-то что будет все это понимать и переводить. Нет?
83 1991099
А как вообще сделать перебор регистра?
К примеру строка qwert
сделать ретёрн
qwert
qwerT
qweRt
qweRT
qwErt
qwErT
и тд
84 1991104
>>1991090
На уровне кого?
85 1991106
>>1991090
1 Пишешь код на другом япе
2 Запускаешь его из Питона через subprocess
3 Profit
86 1991107
>>1991099
chr(ord('c') + 1) выводит 'd'
Дальше сам
87 1991109
>>1991099
Какая задача?
88 1991111
>>1990973
как тебе работа в банке? платят норм?
кем там числишься? младшим баг дата сиентисом или типа того?
Алсо что за шарага была?
89 1991118
>>1991109
По сути брутфорс с использованием словаря паролей.
Только надо ещё не просто из файла брать варианты, а и перебирать регист букв
90 1991119
>>1991104
На уровне питоновского компилятора. Хз как он там называется, байт машина.

>>1991106
Я про то что как модуль, вызывая методы. Видел подобное для асма.
91 1991128
>>1991041
Посмотри на библиотеку
jsonpath-ng
она как раз для этого. Аналог xpath в xml
92 1991142
>>1991119
Передавай жсоном или аргументами командной строки в отдельную программу на другом языке данные и метод который нужно выполнить, лови ее ретурн. Или ты память общую хочешь?
16155839488740.png1 Мб, 1025x1166
94 1991150
>>1991111
квадриплу грех не ответить

>как тебе работа в банке? платят норм?


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

>кем там числишься? младшим баг дата сиентисом или типа того?


Не, все довольно банально - "младший разработчик"

>Алсо что за шарага была?


Не самая плохая, но и не самая хорошая
Как мне кажется в них разницы нет, в любом случае на одной шараге далеко не уедешь, если бы я пытался устроиться только с теми знаниями, что получил там, сейчас бы работал в пятер очке
Хотя все же были хорошие преподы, которые делились реально полезными знаниями
96 1991153
>>1991151
я уверен что это не лучшая реализация но оно работает...
97 1991213
Что нужно знать из питона чтобы успешно фрилансить, на какие задания есть спрос на питоне.
98 1991255
>>1991029
Я гуманитарий, в одной школе математика не заходила был троечником . Но когда я перешёл в другую школу, то стал отличником по математике и весь класс у меня списывал, истинна где-то посередине получается, в общем 4. Любимый предмет черчение.

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

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

Такая мотивация.
99 1991276
>>1991255
Программирование морально тяжёлая сфера.

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

Вот ты смотришь код, тебе надо что-то подправить и доработать. Но для этого надо разобраться в куче тебе непривычного и непонятного, зачем там как-то сделано, почему криво (на это есть причины обычно), как переделать, чтобы было не криво и т.п.
100 1991278
>>1989943 (OP)
Знатоки, подскажите, почему этот код https://ideone.com/I9qfNc работает так странно. Список my_list объявлен глобально и в обеих функциях мы заводим локальные списки и возвращаем их.
Так почему глобальный список изменяется?
101 1991286
Что учить чтобы легче работу найти фласк или джангу?
102 1991288
>>1991278
В test_append ты аппендишь ссылки на элементы, это одни и те же списки в итоге. Надо копировать.
103 1991299
>>1991286

> Что учить чтобы легче


Фласк

> легче работу найти


Джангу
104 1991301
>>1991150
корка шараги помогла при устройстве на работу? ты кстати из милионника? пиздец у вас там админы отмороженные!
105 1991313
>>1991288
То есть, если я хочу создавать независимый список списков из частей другого списка со списками мне нужно делать deepcopy его частей?
106 1991317
>>1991313
deepcopy это для всяких сложных вложенных структур, для простого списка достаточно copy или того же [:]
107 1991320
Передаю в __init__ класса, объект другого класса.
Все окей
def __init__(self, obj):
----self._obj = obj


НО! Я не могу передать self._obj в декоратор как аргумент
@decor(self._obj)
def blabla_function():
----pass


NameError: name 'self' is not defined

Как обойти эту хрень?
108 1991325
>>1991320
У тебя ведь будет доступ к аргументам внутри декоратора, 1й аргумент это self, хуль тебе надо?
109 1991327
>>1991320
Декоратор - внешняя функция, не знает он никаких self, cls и т.д., если только ты не определил его как метод класса, в чем я очень сомневаюсь
изображение.png25 Кб, 642x349
110 1991328
111 1991329
>>1991328
Ага. И? Сам то понял?
изображение.png10 Кб, 443x384
112 1991331
>>1991329
Пиздец дети обленились, без Папки не могут нихера
113 1991337
>>1991008
Именно так брат. Такие эндпоинты.
114 1991340
Как вообще для вката jetbrains academy + leetcode + свой аналог двощей? Плюс ещё Кормена наебнуть и что-нибудь по проектированию рестухи. Из опыта в ит стажировочка по системной АНАЛитике и 3 курс вузика по прикладной информатике. Плюс пара хаков выигранных. Хватит такого чтобы каким-нибудь джуном пойти или ещё чего-то наебнуть?
restapi.jpg57 Кб, 600x364
115 1991341
16157922624470.jpg144 Кб, 640x640
116 1991366
>>1991301

>корка шараги помогла при устройстве на работу?


Я не знаю насколько это зашквар по меркам двача, но у меня короче СПО ПТУ
Насколько я узнал из тредов МЫ ВАМ ПЕРЕЗВОНИМ, подобных кандидатов отсеивает автоматический фильтр, так что их хрюши даже не видят, поэтому я поменял своё СПО на высшее в резюме и по итогу меня самого пригласили после пары недель тестовых в интересные мне компании, которые я успешно заваливал

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

>ты кстати из милионника?


Простой Иван, город Пекин

>пиздец у вас там админы отмороженные!


Подобная херня везде, где речь идет о бабках
Во всех банках без исключения наверное
117 1991450
Парни, есть запрос в базу который выполняется около десятка секунд, потому что собирает больно много данных, как правильно сделать "листалку" (пагинацию) чтобы запрос выдавал данные лишь кусками и база нагружалась меньше?
118 1991456
Встал вопрос о временном хранилище для ~50,000 пар key:string (строка - пару сотен символов) на время работы программы. Имеет смысл юзать Redis?
119 1991458
>>1991456
Да, это веб-приложение, если что.
120 1991468
>>1991456
Ну вообще имеет, редис охуенен.
А что за данные и зачем их хранить?
121 1991477
>>1991456

>Имеет смысл юзать Redis


Нет. 50к - это вообще ни о чем.
122 1991478
>>1991468

> А что за данные и зачем их хранить?


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

>>1991477

> 50к - это вообще ни о чем.


От какой планки тогда отталкиваться, миллионы?
123 1991483
>>1991478

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


Ага, ну отлично подходит, да.
124 1991492
>>1991366
Лол, что за прикольная картинка?
алсо ты реально из китая? поясни.
пиздато, значит можно пиздеть про вышку.
И кстати, почему заваливал собесы в другие компании?
125 1991499
Читал кто (а может и имеет цифровую копию) CPython Internals: Your Guide to the Python 3 Interpreter / Anthony Shaw , стоит внимания или есть ресурс получше для копания во внутренностях?
126 1991503
>>1991499
Она уже спирачена, в принципе, по содержанию выглядит достойно, я пока не читал.
Ещё есть такая книжка, но она попроще https://leanpub.com/insidethepythonvirtualmachine
Алсо, видел на ютубе серию лекций, но они про двойку, не знаю, насколько актуально, для общего развития сгодится, наверное.
127 1991596
>>1991450
Оператор. LIMIT поможет, надеюсь
128 1991598
>>1989943 (OP)

>https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание


Питоногоспода, вкадывающийся ИТТ, а возможности скачать все одним архивом на эту хуйню не завезли? Хочу полистать книжки, выбрать наиболее подходящую, но скачивать по одной займет тысячу лет.
129 1991607
>>1991596
В бд есть FETCH, но я слышал что лучше делать это на стороне приложения. При использовании FETCH в бд, она всё равно запрашивает все данные, но выдает порциями, а првильнее будет запрашивать только нужную часть.
16179866523140.png24 Кб, 443x384
130 1991644
>>1991331
Дак у тебя декоратор без аргументов же.
изображение.png99 Кб, 2351x840
131 1991646
Как правильно делать импорт своих модулей?
Я думал просто импорт-название файла, но не работает.
132 1991648
>>1991646
Консоль запущена в корне проекта, у тебя будет WebApi.convert_time
133 1991652
Почему эта хуйня не работает?
Я же создал переменную и она стала глобальной ведь, но в модуле она не существует.

Как исправить код чтобы можно было дотянуться до этой переменной без явного импорта?
134 1991656
>>1991648
Понял, спасибо.
135 1991663
Если уже умею прогерить на другом яп то достаточно ли будет прочтения документации чтобы прохавать за синтаксис и либу языка? Или посоветуйте чего чтобы максимально быстро вкатиться.
136 1991664
>>1991652
Нашел решение, но его не рекомендуют.
137 1991668
>>1991492

>алсо ты реально из китая? поясни.


На дваче же недавно тема была с автозаменой
тян - кошачья жена
ДС - Пекин
анон - простой Иван город Тверь
и тд

Или этого в тематиках не было, только в /b/?

>И кстати, почему заваливал собесы в другие компании?


Откликался на вакансии типо "знать фласку, пистон, ськуэль и тд." Потом приходило тестовое с докером, нгинксом и другими тулзами, которых указанно не было и я естественно сливался
Еще были ебанутые задания уровня "Рассчитайте коллизию двух сфер и визуализируйте полученные данные, если известно, что на вход будут подаваться примерно следующие данные"
Я конечно понимаю, что нужно уметь обрабатывать ошибки, но я ебал проверку автотестами с 1 попыткой, где ты даже не знаешь, что именно отработало не так
То есть ты пишешь код по мутному ТЗ, отправляешь его, запускаются автотесты - все отработало, окей, беседуем дальше, иначе иди нахуй должны отработать все задачи, которые были даны, без ошибок
Ну и мой самый любимый тип вакансий, которые никого не ищут, а просто смотрят че на рынке творится
138 1991670
139 1991672
140 1991681
Пишут что питон может все, а чего не может питон?
141 1991683
>>1991681
Может не питон, а чувак который прохавал питон охуеть как сильно.
R2-FSA-Graphic-for-9-Best-Programming-Languages-to-Learn-Bl[...].jpg566 Кб, 2560x2048
142 1991688
>>1991681

>может все


Кто говорит? Инфоцыгане? Проще перечислить то, что он может, чем то, чего не может
Пикрил в помощь
143 1991692
>>1991644
...
Угараешь? Нахрена передавать туда какие-то аргументы (которые все равно физически невозможно передать как тот чувак хочет) если есть работающее решение без этого говна?
144 1991701
>>1991688
Откуда это говно? Electron теперь не desktop? Dart теперь не мобилка?
145 1991706
>>1991701
Первую попавшуюся пикчу с гугла залил, для общего понимания пойдет
146 1991753
>>1991668
А, то есть ДС?
такое проскакивало в пораше вроде но недолго, буквально несколько дней пофорсили и все.
и то в основном в связи пыня низкий рост редкий волос
Что за вакансии которые никог оне ищут? Это какие то исследовательские агенства?
алсо тесты с автопроверкой это пиздец дичь, ну там при сдаче даже не указывается где ошибка? пиздец они психи.
рад что попал в банк?
147 1991754
>>1991688
Странно что нету пхп, на нем весь веб, фейсбук и еще куча чего.
148 1991773
>>1991692
Тот чувак это я и есть. И изначально мой декоратор должен был получать число и объект другого класса. Но поебавшись 2 дня, я нашел другой способ. Теперь мой декоратор получает только число.
149 1991933
>>1991773

>и объект другого класса


ВНЕЗАПНО: без задней мысли взял и передал в декоратор, что сложного?
150 1991965
>>1991664
Функция globals тебе список глобальных переменных файла, а не папки.
В любом случае, явный импорт - лучшее решение. Какой бы ни была проблема.
151 1991987
>>1991688
А с помощью чего делают desktop applications на языке пайтон? Хочу сделать одну хуйнюшку для души.
152 1991997
153 1992017
Уважаемые питонисты, прошу совета. Мне нужно визуализировать около 20Гб данных, записанных в бинарники. Теперь собственно сам вопрос, что для этой цели лучше использовать? Пока что выбор пал на язык R, но может есть какие нибудь библиотеки для питона?
154 1992036
>>1992017
Библиотека matplotlib, а также не плохая bokeh

Эвент луп блокирует прибавление нового значения в поле у объекта класса. Как обойти эту проблему?
Код запущен через multiprocessing
a.png353 Кб, 3262x1708
155 1992086
>>1992036

Решил запустить асинхронно. Но multiprocessing не давал этого сделать. TypeError: cannot pickle 'coroutine' object sys:1: RuntimeWarning: coroutine 'Test.event_loop' was never awaited

Но в threading все получилось.
Я так и не понял почему.
image.png71 Кб, 218x231
156 1992094
>>1991754

>Странно что нету пхп

157 1992098
>>1992086
Потому что "cannot pickle 'coroutine' object" - он же сам говорит
Он не может в бинарный формат корутину перегнать чтоб потом ее десереализовать
Screenshot 2021-04-10 at 21.05.26.png27 Кб, 466x340
158 1992105
>>1992098

А почему трэдинг может?
170527728.jpg55 Кб, 1280x720
159 1992106
>>1992105
Потому что он ничего не сериализует. Очевидно же
160 1992108
>>1992106
Спасибо улиточка, но ни хуя не понятно
161 1992137
>>1992105
Неправильно, пикл это любые маринованные штуки.
162 1992259
tkinter
163 1992307
>>1992108
Общее пространство памяти, не надо передавать объект в другой процесс ( для передачи его надо запаковать - pickle).
И для трединга другая метода передачи объектов из одной asyncio.loop в другой
164 1992383
>>1992307

>для трединга другая метода передачи объектов из одной asyncio.loop в другой


трединг же независим от asyncio?
165 1992417
Аноны, посоветуйте литературу по AWS. Хочу расширить границы познания дальше простых операций с EC2 инстансами.
166 1992490
>>1992307
Фигасе сколько тонкостей
167 1992492
Всем привет.
Начал, как тот торговец-каджит выше, вкатываться в программирование на питоне...
35, 5 лет вахты ведущим инженегром ПТО, в/о теплоэнергетик, программировал в школе на турбопаскале. Сам с микропосёлка в залупе мира.
Повелся на пиздеж отца, что энергетик царь и бог + электростанция под боком.
Пришел к тому, что заебло морозить жопу в ебенях с уральским и прочим быдлом настолько, что уже физически тошнит от тупорезов + потолок по зарплате в моей сфере это 150к~2k$/
Так шо пока сижу на работке, изучаю Питон, прохожу Я.Практикум, хочу заказать на алике ардуино наборчик, собрать какого-нибудь робота с племянником и прикрутить к нему питон, сделать простое приложение на телефоне, чтобы можно было управлять и тд.
Короче, вот такое хобби.

На вахту поехал, потому что нет вариков больше, как поднять тонну бабла за относительно короткий период времени, а это был самый логичный вариант, купил хату в итоге на скопленные рублики...
В общем, хочется сменить сферу и в более перспективную и интересную область перейти, в сфере программирования и робототехники, потому что за этим будущее/настоящее.
Хотя, пока в перспективе из программирования+роботы первое, что на ум приходит это прошивка и ремонт домашних роботов пылесосов)))
168 1992495
>>1992492
полюбому пасто откуда то
169 1992497
>>1992495
ммм, нет, можешь яндекснуть/гуглануть.
171 1992505
>>1992495
Не, не паста. А если паста, то неизвестная.

>что энергетик царь и бог


Но это ведь правда.
172 1992521
>>1992505
царь и бог говна, пара и электричества
173 1992522
Лутц выбесил. Про сраное импортирование столько воды налил, что пиздец. Раза в два больше, чем про функции. При чём функции как раз надо разжёвывать в деталях с кучей примеров, но он оче кратко всё описал и побежал дальше. А ебаные каталоги и импортирование модулей у него размазано на миллиард абзацев, при чём часто повторяя одно и тоже. Сука. Там вся инфа на 2-3 страницы от силы.
174 1992524
>>1992521
Говно и электричество будут всегда. Кому-нибудь всегда надо будет всё это хозяйство обслуживать, а оно с каждым годом всё сложнее и сложнее.

А программу один раз написал, и она после этого работает, ты не нужен становишься.
175 1992530
Есть два стула: pytest-bdd и behave

На какой сам сядешь, на какой девопса посадишь?
176 1992532
>>1992524
надоело уже...
хочется эволюционировать)
177 1992538
>>1992524

> электричество будут всегда


Разве что статическое, когда трешь кота.
178 1992610
Сап питонач.
Я в процессе вкота в питон, для начала запилил простенького дискорд-бота для практики и теперь думаю что делать дальше. Из того что я уже нагуглил/прочитал в нюфак треде - для того чтобы иметь хоть какие-то шансы на трудоустройство нужно изучить какой-нибудь фреймворк и REST api. Решил начать с фреймворка и выбрал Джангу, но пока гуглил гайды - понял что в некоторых местах мои знания явно проседают. В шапке дохуя книг, но какие из них нужны - непонятно.

Посоветуйте книжку по Джанге и книжку по Ресту, да и вообще разных советов мудрых.
179 1992745
>>1990847
Спасибо, анон. Таки нашел пример с вебсокетами, где клиент шлет запросы из браузера, очень годно. https://www.youtube.com/watch?v=4haMUvUxUJI&list=LL&index=1
Теперь есть еще пара вопросов, если вкратце направишь буду крайне благодарен.
1) Я хочу сделать любую веб игру в которую играет 2 человека, хоть крестики нолики, главное чтобы состояние игры менялось после ходов игроков. Я так понимаю, что состояние игры и очередность хода без проблем будет считаться на сервере, хоть в каком нибудь словаре, а клиенты будут обращаться к серверу, видеть очередность хода и от этого уже можно будет сделать ход или нет и т.д. Как это масштабировать, чтобы одновременно могло несколько сессий проходить, чтоб разные люди могли играть. Тоже самое, только в словаре несколько сессий хранится? Подозреваю, что есть стандартное решение этого вопроса
2) Как проще всего вывести и вести разработку на реальном сервере, чтоб можно было не с локалхоста ебошить, а по нормальному адресу, чтоб можно было корешам скинуть показать что уже получилось, какой самый быстрый / легкий вариант?
180 1992851
>>1992745
Не смотрел, ткнул в пару мест.

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

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

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

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

>Тоже самое, только в словаре несколько сессий хранится?


Самое простое, ты хранишь id сессии, и словарь объектов-состояний игры. Скажем игровое поле, чей сейчас ход и т.п.

Следующий уровень, это когда ты состояние хранишь в каких-то внешних сервисах, вроде redis, БД или чём-нибудь ещё. Так можно устойчивость и большое масштабирование сделать, но для твоих задач это не нужно.

>какой самый быстрый / легкий вариант?


Вариант только купить себе хостинг на VPS, цена вопроса на уровне 5 долларов в месяц. Можно дешевле что-нибудь найти, но за 5-10 долларов в месяц есть какие-то очень-очень приличные варианты.

Бесплатно такие вещи не очень дают из соображений безопасности.
181 1992923
Я делаю учебный проект в котором с каждым шагом накидываются дополнительные задачи. Нигде не пояснено - могу ли я в проекте каждую подзадачу делать в отдельном файле, чтобы титульный у меня только спрашивал какую функцию я хочу запустить и брал их из файлов, так же нигде пока не написал - нормально ли это писать все просто в одну страницу, но лично мне так кажется как-то монструозно.
Где почитать или может есть простой ответ как разбивать проект на файлы и оформлять по человечьи сразу?
182 1992999
>>1992985
Спасибо, я уловил, вот только понятия класс еще не видел(я знаю что это такое, но в "программе" пока не подразумевается что мне стоит париться с этим пока)
Но главное что я понял что это import. Т.е. он сразу поймет что я импортирую из соседнего файла в проекте, а на будущее - если я захочу импортировать из другого проекта - мне надо сначала добавить фаил в проект или можно как-то import ~/Pidoras/musor/proecthuini hyinya.py zashkvarclass? Или так делать не принято из-за неразберихи с файлами и невозможности запустить проект если я забуду отправить все человеку и он не распихает все по директориям так же(или у него вообще винда)?
1618170767564.jpg117 Кб, 422x594
183 1993007
Я не могу осилить эту книгу. Что со мной не так? Дошёл до for и while и не смог выполнить задания в конце главы. Я один такой?
184 1993010
>>1993007
Какое задание?
И почему ты выбрал для детей книгу?
185 1993080
>>1993007
Я решил открыть рандомную книгу, только не для детей и понял информацию сразу. А эта книга создана дьяволом. Я даже не представляю, как её смогут понять дети.
186 1993083
>>1993080
Там в аннотации не написано что она должна даваться детям в придачу к преподу?
187 1993163
>>1993007
Надо было с сишки начинать, она более понятна для новичков.
188 1993272
>>1992522
Так блять с импортами в питоне пиздец тонкостей дохуя. А функции это прос о функции. Ничего необычного.
189 1993286
Тяжело у вас вообще первую работу найти?
190 1993297
>>1993286
Я учу по фану и мне похуй, но я уже вижу что работы "хуила питоновая" не существует как с джавой, например, это либо дрочила цифер у которого плюсом идет ЛЮБОЙ скриптовый язык, либо питон написан десятым языком в требования, либо вообще в позиции "ну было бы не плохо, а вообще нахуй надо". Смотрел по питеру если что. Я не знаю почему я выбрал питон, но я уже чувстую со всех сторон намеки на туповатость этого выбора.
191 1993303
>>1993297
Для работы думаешь лучше жаву дрочить?
192 1993307
>>1993303
Меня лучше не спрашивать, я еще неделю назад хеллоу ворлд писал
193 1993316
>>1993307
Понял. Бтв почекай вакансии на джангу и фласк. Их вполне себе по количеству. Ну по крайней мере если ты в дс...
194 1993382
>>1993007
ты не очень умный...
программист питон.jpg335 Кб, 1913x947
195 1993385
196 1993387
>>1993385
уха, шашлык, плов, пельмени, блять...
197 1993425
>>1993385
Пельмени к уху. Кринж то какой.
16181671797210.jpg61 Кб, 422x594
198 1993436
199 1993462
>>1993385
Это я должен прогать, а потом ещё шеф-поваром на лыжах у костра скакать с гитарой?)
200 1993532
>>1993462
во время
201 1993612
>>1989943 (OP)
Почему при асинхронном доступе к базе (например aio sqlalchemy) мы совершает await дважды: при запросе в базу и при доставании результата как вот тут:

async with self._connector() as connection:
----query_result = await connection.execute(query)
----rows = await query_result.fetchall()
202 1993613
>>1993612
Достаточно же 1 await сделать - первый, что мы можем await-ить после?
203 1993728
>>1993613
Чего там даже эвейта внутри не видно https://aiopg.readthedocs.io/en/stable/_modules/aiopg/cursor.html#Cursor.fetchall
204 1993750
>>1989943 (OP)

> Параметры должны приниматься как в JSON, так и в POST формате параметров запроса.



Аноны, что за POST-формат параметров запроса? Это мне кастомные хэдэры передавать надо?
205 1993777
>>1993612
Рискну предположить, что первый раз ты говоришь базе выполнить операцию, второй раз - получаешь от базы данные
206 1993786
>>1993750
Это скорее всего формат form-urlencoded
207 1993790
>>1993786
Хм, спасибо. Ни разу в REST с таким не сталкивался
208 1993802
Пытаюсь подключиться к устройству в локальной сети:

import socket
s = socket.socket()
s.bind(('192.168.0.1', 1488))


Какой бы локальный айпишник не указывал получаю

OSError: [WinError 10049] Требуемый адрес для своего контекста неверен

ЧЯДНТ?
Y8PQLF4q56U.jpg188 Кб, 800x800
209 1993831
Антоны, скажите правильно ли я составил список действий для того чтобы устроиться на работу по программированию?
Читаю грохаем алгоритмы>читаем лутца и выполняем задачи оттуда> опционально читаем кнута, параллельно пишем какую-то программу (и тут вопрос, для того чтобы путь от профана до работника был максимально краток, мне нужно акцентироваться на вебе, или можно заниматься приложениями? Хотелось бы конечно второе). Надо учить все так чтобы сразу засесть за работу, а не терять время на условной стройке, так что оклад устроит любой, лишь бы на еду хватало. И вообще сколько времени займет путь от профана до быдлокодера-работника?
210 1993844
>>1993831
С таким бэкграундом тебя не возьмут никуда.
211 1993856
>>1993844
Хорошо, я понимаю. Мне нужна хотя бы просто какая-то сверхзадача, чтобы на ней акцентироваться и от нее исходить. Есть какие-нибудь идеи вроде борды5000запросов в секунду как в той пасте?
212 1993870
>>1993802
sock.bind(('', 1488)) попробуй
213 1993889
https://www.youtube.com/watch?v=uAL-9AzQdQs

Поймал себя на мысли, что постоянно возращаюсь к питону, чтобы не начал изучать, за какой бы яп не брался или хотелся бы взяться. В чем подвох?
214 1993897
>>1993889
Он прекрасен, это вершина человеческой мысли, ничего лучше нет и быть не может.
Мне на работе намекнули, что можно подучить питон и скинули ссылку на курс хотя изначально я шел на другие дела в этот проект, я очень скептически отнесся, потому что тяги к самообразованию у меня давно уже не было, но мне невообразимо зашло. Просто влюбился в него с первого взгляда. Продолжаю его изучать и выбиваю себе задачи на питоне, жизнь удалась.
215 1993902
>>1993897
Если это не ирония, то в будущих версиях нас ждет оптимизация, еще более сахарный код, еще более плюшек, case конструкции, хз даже почему его так хейтят, мол для даунов и ничего не может. Веб, приложухи, даже уже микроконтроллеры есть. Как что еще нужно? Чел из видоса мониторил джобы по питону, на хх и прочих, там рили питон топ и больше всего строчек по нему. Даже по моей мухосрани строчек больше на питухоне чем на сях, жаве и прочем, но там практически только веб или всякие академгородки.
216 1994009
Ухтыбля, в питоне можно русские буквы в названии переменных использовать!
217 1994031
Как понять что я не пишу хуйню?
Тренировочные задачи, я решаю - изъебываюсь, затолкал все в функции, у меня идет работа с 5 переменными, которые я затолкал в листы, каждая функция либо лямбдой вычитает из оригинального листа количества, либо превращает некоторые элементы в нужные. Смотрю как ее васян со стак оверфлоу делает - тупо переменные +, переменные -, просто последовательный список операций с каждой переменной.
Короче у меня 50 строк, у него 97(с однаковыми отступами по ПЕП) и без комментариев.
Но с другой стороны у него как топор читабельно, у меня тоже(учитывая тупость учебной задачи), и обе задачи проходят проверку edutools
Вот это особо не поясняется кроме ублюдских видео на ютубе косого лысеющего хохла советующего не изобретать велосипед
218 1994033
Я тут что то по ностальгии заглянул в ваш тред и стало интересно.
А веб на питоне сейчас до сих пор пишут на джангоговне или появилось что то нормальное?

мимо нода-тс бэкендер
DASH480 (1).mp41,3 Мб, mp4,
480x480, 0:10
219 1994061
В общем чтобы не терять время я решил пойти по этому пути: https://m.habr.com/ru/post/311642/

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

Я: >>1993831
220 1994078
>>1994033
ASGI-фреймворки погугли. Starlette особенно.
221 1994084
>>1994078
Поглядел мельком, вроде прикольно. Но на вид, как будто это чисто новая мета. Или уже крупные дяди уже в проде используют?
222 1994090
>>1993856
Конечно есть. Напиши свою имиджборду. И чтобы она выдерживала 3000 запросов в минуту.
223 1994096
>>1994061
Это весьма очевидный список, ты его найдешь и в гугле, и если посмотришь программы курсов, там все есть прямо как на хабре. Я сегодня знатно проиграл, захожу на скиллбокс(потому что присылает мне рекламу в вк постоянно), там все эти курсы, вижу курс джанго за 12к, тысяча в месяц, думаю что когда дойду - подумаю стоит ли брать, типа тысяча немного, но я получу анального раба-препода отвечающего на вопросы, открыл этот курс, внизу кнопка - "скачать программу курса", нажимаю - кидает на главную страницу. КУРСЫ ЕБАНЫХ КОМПЬЮТЕРНЫХ МАСТЕРОВ, ПРОФЕССИЯ ВЕБ ДЕВЕЛОПЕР НАХУЙ ГЛЮЧНЫЙ ХУЕВО ОТОБРАЖАЮЩИЙСЯ САЙТ ХУЙНИ СДЕЛАННЫЙ КОНТУЖЕННЫМ ДИЗАЙНЕРОМ И ТАКИМИ ЖЕ ВЕБ МАКАКАМИ ЕБАЛ В РОТ.
И решил что сам когда придет время выучу джанго
djjpg.jpg46 Кб, 453x374
224 1994103
>>1994096

>вижу курс джанго за 12к, тысяча в месяц


И вы могли подумать что он на год, а нет, он блядь на полгода. И там все цифры такие, например тестирование мобильных приложений 58800 на 9 месяцев, и это всего 2450 в месяц!
Я не могу это объяснить
225 1994130
>>1994031

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


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

Код должен быть читаемым и сопровождаемым. Не уверен, что это про твой вариант.

>косого лысеющего хохла


Если ты голубоглазая пышноволосая русня, что ты вообще в программирование лезешь? Или в манагеры по продажам, там симпатяшки нужны. А не те, кто что-то умеет.
226 1994132
>>1993612
По идее, оба раза ты реально обращаешься к базе данных, по сети соответственно. Поэтому нужен await, синхронно лучше не делать.

Первым запросом СУБД разбирает запрос и помещает результат куда-то к себе в буферы. Из которого ты можешь запрашивать данные как построчно, так и все вместе. Вторым запросом бы именно выкачиваешь данные из СУБД к себе в процесс.
227 1994133
Test
hHQ1DedEvPA.jpg89 Кб, 590x590
228 1994134
>>1994090
То есть можно с этим прийти устраиваться?
>>1994096
Где то читал что нанимать препода - гиблое дело, у него ~30-50 учеников и отвечает он дежурными фразами, мол легче самому все это искать, а тому что могут дать на курсах ты один хрен сам научишься
>когда придет время
Звучит как оправдание не находишь? "Не получилось ну и ладно, главное что я старался". Не откладывай в долгий ящик
229 1994135
>>1994130

>голубоглазая пышноволосая русня


Ну не совсем, я голубоглазая пышноволосая полунемчина полу жидяра, может мне можно все таки? Я уже в манагерах и админах клуба был, не хочу больше.
230 1994136
231 1994137
>>1994134
Когда придет время я подразумевал когда я дойду просто до этого, я даже близко не подошел к разработке чего-то
232 1994140
>>1994134
Не верю, что может быть какой-то смысл в дешёвых онлайн курсах.

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

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

Тебе в обучении нужна обратная связь, а здесь скорее всего её не будет.

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

Возьми программу курса и сам изучи нужные темы по этой программе.
233 1994143
>>1994084
Было бы странно, если бы не использовали. Сейчас вообще у пайтоновского веба своеобразный ASGI-ренессанс - думаю, скоро стандартом станет.
234 1994191
>>1994031
Ты долбаеб в строчках оценивать качество кода? Два главных качества кода это поддерживаемость и читаемость. Чтобы оценить насколько все плохо у тебя с этим на данном этапе, напиши проект тысячи на полторы строк. Оставь его на месяцок-два, а потом открой и попробуй внести туда новый функционал. Вот как раза два-три такое придется сделать, так сразу поймёшь, что городить лямбды на ровном месте хуйня затея, что лучше написать топорно, чем хуячить редкоиспользуемые функции и модули, что экономия двух десятков строчек выливается в десятки часов ебли и охуевания от того, что ничего не работает.
235 1994195
>>1994033

> А веб на питоне сейчас до сих пор пишут на джангоговне или появилось что то нормальное?


Что у тебя за проблемы с джангой?
236 1994199
>>1994143
ASGI ренессанс потому что вышла ASGI джанга лол
237 1994207
>>1994191
А комментарии для чего?
238 1994216
Tkinter
239 1994219
>>1994207
Если ты пишешь код, для которого нужны комментарии, то ты уже пишешь говнокод. Как минимум, ты заставляешь человека не только поддерживать код, но и поддерживать комментарии. Но это половина беды, вторая половина заключается в том, что говнокод на то и говнокод, что комментарии у тебя будут на 30-40 строк, что не просто не улучшит, а лишь ухудшит читаемость кода.
Но вообще это все лирика, просто напиши петпроект за недельку на тысячи полторы строк. И попробуй его поддерживать новым функционалом раз в месяц-полтора хотя бы три-четыре месяца. Как перепишешь код в пятый-шестой раз, то приходи за азами кодстайла в тред.
240 1994244
>>1994219

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


Ты бросаешься в крайности. Комментариями надо пользоваться для того, чтобы пояснять, зачем нужен некоторый кусок кода и почему его не надо удалять при рефакторинге. Ну и для пояснения сложных алгоритмов, которые иногда таки приходится писать. Короче - по обстоятельствам.
241 1994254
>>1994244

>пояснять, зачем нужен некоторый кусок кода


Этот кусок кода должен пояснять сам себя. Если он этого не делает, то вместо дрочева комментариев его надо переписать так, чтобы пояснял.

>и почему его не надо удалять при рефакторинге


Для этого должны быть тесты.

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


Если речь о математических алгоритмах, то там максимум нужна ссылка на википедию.
242 1994259
>>1994254
Код сам за себя может пояснять, что он делает. Но он не может пояснять, зачем он это делает.
243 1994265
>>1994254

>Этот кусок кода должен пояснять сам себя


Код сам может пояснять только то, что он делает, а не почему. Это две разные вещи.

>Для этого должны быть тесты.


А если их нет?

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


Не совсем. Математические алгоритмы обычно заканчиваются подключением нужной библиотеки - тут комментировать не нужно. Я скорее про всякие ебанутые преобразования данных. Они встречаются в основном в датасаенсе, но и в других сферах тоже не исключены.
244 1994266
>>1994259
Это уже документация бизнес-логики или внешнего API, в комментариях сурс-кода такое не пишется и не должно писаться.
245 1994269
>>1994265

>А если их нет?


Если у тебя нет ног, то нет смысла обсуждать варианты педикюра.
246 1994271
>>1994269

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


Юнит-тесты имеются от силы у половины проектов, и тоже нуждаются как в комментариях, так и в поддержке.
247 1994273
>>1994266
Глянул ради интереса сорцы django, aiohttp и fastapi.

FastAPI очень-очень бедно задокументирован, aiohttp средненько с большим упором на docstring, а не комментарии.

Зато вот django просто конкретно закомментирован. А django всегда считался образцом, как надо проектировать, документировать, такое настоящее индустриальное ПО.
248 1994280
>>1994266

>Это уже документация бизнес-логики или внешнего API, в комментариях сурс-кода такое не пишется и не должно писаться.


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

Реальная логика действий может быть закопана довольно глубоко. У тебя функция вызывает другие служебные функции для внутреннего применения, не экспортируемые, они другие функции. В них ты закладываешься на некоторые вещи, что у тебя данные конкретного вида, что одно вызывается после другого и т.п. Много магии. Много не понятно, где смотреть. Это реальный код реальных задач.

Я видел народ, который считает, что код должен быть "самодокументированным", но их код обычно ни разу не саодокументирован.

Вообще чаще комментарии не пишут, чем пишут. Но и за код отвечают конкретные люди, кто просто знает что и зачем там без документации. Но это дурной стиль. Хотя в принципе удобно, когда тебя трудно заменить другим человеком.
249 1994281
>>1994271
Проекты без тестов нуждаются в первую очередь в тестах, а не в педикюре.
>>1994273
Либо ты говоришь "я комментирую, потому что так правильно, и вот мои причины думать, что так правильно", либо ты говоришь "я комментирую, потому что в джанге/хуянге так кто-то написал, на причины мне поебать".
250 1994286
>>1994280
В первом параграфе ни одно утверждение не следует из предыдущего. Неочевидную логику нужно наоборот описывать как можно проще и на видном месте, а не закапывать в слой комментариев в какой-то жопе.

>Реальная логика действий может быть закопана довольно глубоко


Ну значит откапывай, а не накидывай сверху еще комментариев лопатой.

>Много магии


Убирай магию, а не пиши некрономикон.
251 1994302
>>1994281

>Либо ты говоришь "я комментирую, потому что так правильно,


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

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

>Ну значит откапывай,


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

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

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

>Убирай магию, а не пиши некрономикон.


Когда ты пишешь большие и сложные вещи, с большой и сложной логикой, магия всегда будет. Особенно учитывая, что ты завязан на внешние данные и внешнюю магию.
252 1994323
После Укуса стоит на Лутца переходить? Или что дальше читать?
253 1994326
>>1993902
Python используется в автомобиле Tesla, так что изучай, не парься.
Скоро в каждом утюге будет.
254 1994394
>>1994195
Так это общеизвестный кусок дерьма. Просто один из самых первых фреймов под веб для питона и поэтому много где использовался. Если на питоне до сих пор основа веба это джанго, то слава христу, что я 5 лет назад дропнул этот питон нахуй и вкатился в нормальные технологии.
255 1994414
>>1994394
Веб-фреймворк Django используется в сайтах Instagram[9], Disqus[10], Mozilla[11], The Washington Times, Pinterest, YouTube, Google и др.

https://ru.wikipedia.org/wiki/Django
256 1994445
Почему у каждого треда одинаковое описание? Какой лучше,?
257 1994488
>>1990432
run_in_executor + ensure_future
258 1994499
>>1994323
Лутц же старый. Порешай задачи, почитай по стандартным библиотекам, почитай кукбуки.
259 1994504
>>1994323
Укусил питон, выебал Лутц - теперь ты настоящий питонист!
260 1994516
>>1994504
главное не перепутай! а то станешь пхпшником
261 1994518
>>1994244

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


Да, бывает, повторяю, бывает(!!!) иногда ситуация, когда без комментариев не обойтись. Какая-то охуительная схема по подготовке данных к отправке или оптимизация чего-то, когда целенаправленно жертвуют читаемостью в угоду скорости или сложным преобразованиям. Но в общем случае, наличие комментариев говорит о том, что в проекте лютый говнокод и комментарии это попытка хоть немного пролить свет на внутреннюю логику.

> почему его не надо удалять при рефакторинге.


Чего блять? Ты удаляешь все модули, в которых нету чёткого обоснования в комментариях почему их удалять не надо?

> Ну и для пояснения сложных алгоритмов, которые иногда таки приходится писать. Короче - по обстоятельствам.


Я выше написал. Иногда комментарии нужны, да. Но они мягко говоря не панацея
262 1994519
>>1994394

> Так это общеизвестный кусок дерьма.


Держи в курсе. Особенно смешно слышать это от человека, который пишет на ноде.

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


Питон в вебе использовали потому что была джанга, а не наоборот.

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


> в нормальные технологии


> нода-тс бэкендер


Ага. Понятно. Продолжайте вести наблюдение.
263 1994523
>>1989943 (OP)
Нужна помощь /pr/. Просьба к вам пройти по ссылке

https://2ch.hk/po/res/42808915.html (М)

И там по ссылке глянуть видео на Идель-Реалиях. Суть в следующем: есть семья. Отец-одиночка и три его сына: музыкант, программист, ихтиолог. Программист пишет код на Python и Java и ему Amazon дал личный грант. А также его взяли контрактором в распределённую команду канадской корпорации из 60 - 70 сотрудников. И там на видео бл скриншот кода. Мы там в теме спорим, действительно ли код адекватный для контрактора или вся семейка (музыкант, программист, ихтиолог) врёт, а код - Hello, World.
264 1994529
>>1994523
я не мэтр, но с SAVE_FILE_TO_AMAZON чот проиграл
265 1994540
>>1994414
Кек. А ноду юзает пейпал, нетфликс, фейсбук, амазон и тот же гугл. Дальше то что?)

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

>Держи в курсе


Говно орм - раз. Отсутствие асинхронности - два. Худшая в мире архитектура - три. Нихуя почти не развивается - четыре. Единственный его плюс - в коробке сразу много чего есть и не надо руками писать лишнее. То бишь, обычный макакинг. А, ну и про типизацию думаю сам допрешь.

В ноде есть божественный libuv, асинхронность, eventloop, прекрасный тайпскрипт и начали появляться нормальные инструменты по типу NestJS где реализована отличная архитектура DDD, охуенная масштабируемость, заточенность под микросервисы, и куча возможностей для кастомизации. Даже если нест не вкатил - нода пиздец как развивается, и можно спокойно без головной боли собрать охуенный кит для себя на основе того же express/koa.

Хотя нахуй я это пишу, если все что осилил джангодебил помимо ковыряния админок на своем помойном фреймворке это
я>Ага. Понятно

Сходи прочилься, сынидзе.
266 1994546
>>1994540

>1994414 (You)


Кек. А ноду юзает пейпал, нетфликс, фейсбук, амазон и тот же гугл. Дальше то что?)

Ничего)
Загуглил сочетание "джанга питон". Увидел, что пациент бредит. Отписался.
267 1994554
Как в существующий экземпляр добавить метод? Абстрактная задача.
268 1994564
>>1994554
Абстрактный ответ — никак.
269 1994567
>>1994564
Мы вам перезвоним.
270 1994593
Создаю класс. Потом его экземпляр. Создаю пустой класс с именем первого класса. Ссылаюсь на атрибуты экземпляра и он их выдаёт, хотя вроде как должен их искать в классе, а их там уже нет.
271 1994595
>>1994593
Бля, не так. Атрибуты то понятно - они присвоены экземпляру. Я вызываю методы класса. И они вызываются. хотя в классе, к которому принадлежит экземпляр, их уже нет.
272 1994605
>>1994595
Хороший вопрос на самом деле, вот я пожалуй не знаю как. Вопрос "нахуй такая архитектура нужна" не поднимаем.

Когда ты делаешь
class A:
____pass

a = A()

то запись вида
a.foo(value)
в случае, когда у объекта a есть свойство foo, то питон берёт значение и делает вызов как обычного callable объекта. Без подстановки a в качестве первого аргумента.

Если нет, то включается механизм mro, и там это, по идее, эквивалент записи
A.foo(a, value)

Слёту кривой выход, если у тебе определён
def external_method(self, value):
____print(self)
____print(value)

и ты хочешь связать его с a, но не классом A, то можно сделать что-то вроде
a.foo = lambda(value): external_method(a, value)

Но не очень симпатично смотрится
273 1994614
>>1994595

>Атрибуты то понятно - они присвоены экземпляру. Я вызываю методы класса. И они вызываются. хотя в классе, к которому принадлежит экземпляр, их уже нет.


Методы на самом деле такие же атрибуты. Там работает механизм MRO.

Суть в том, что если у объекта нет своего собственного атрибута, либо метода, либо просто другого объекта, то тогда питон смотрит, нет ли такого атрибута у класса этого объекта. Если нет, то смотрит на родительский класс и т.д.

У тебя ведь могут быть не только методы, но и переменные класса, доступные в экземплярах.
274 1994618
>>1994614

>Суть в том, что если у объекта нет своего собственного атрибута, либо метода, либо просто другого объекта, то тогда питон смотрит, нет ли такого атрибута у класса этого объекта. Если нет, то смотрит на родительский класс и т.д.


Я это понимаю. Потому и не понимаю откуда он берёт метод, если класс я удалил уже, а в экземпляре метод не переопределялся.

class Test:
_def Жопа(self):
__print("Ыть")

biba = Test()

class Test: pass
del Test

biba.Жопа()

Почему выполняется метод Жопа()? Он же долже был искаться в классе, а класс уже тютю.
275 1994626
>>1994618
Класс не тю-тю. Он просто недоступен по имени Test. Но в объекте он хранится не по имени, а по ссылке.

То есть после такого у тебя реально в памяти будут оба класса. При этом по имени Test доступен новый класс, а в объекте biba старый класс
Попробуй сделать
print(id(Test), id(biba.__class__))
до и после изменения класса
276 1994629
>>1994626
Спасибо огромное. Причём я так блядь и знал что питон это где-то хранит. Такой же заёб был с перезагрузкой объектов, импортированных через from.

Ещё вопрос. Я правильно понял, что в питоне встроенные операции не ищут метод в экземпляре, а только в классе?
277 1994673
>>1994605
А зачем прослойка в виде лямбды?
278 1994678
>>1994673
А как без ламбды? Её роль в том, чтобы связать функцию external_method с объектом a
279 1994706
>>1994629

>Я правильно понял, что в питоне встроенные операции не ищут метод в экземпляре, а только в классе?


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

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

Короче пока не знаю. Но итересный вопрос.

Думаю, всё-таки можно и операторы вроде __call__ и __eq__ каким-нибудь образом переопределить для конкретных объектов, а не для классов в целом.
image.png225 Кб, 536x931
280 1994717
>>1994706
Так то вот. Просто Лутц это такое... Вроде понял, а вроде и нихуя не понял. Это "Изучаем питон", 5 издание, том 2, 78 страница.

>>1994706

>Попробовал, не работает так просто


Как ты попробовал? Я же ради теста этой параши и затеял всю эту ебатеку с встраиванием метода в экземпляр.
image.png15 Кб, 303x286
281 1994751
>>1994678
Если этот метод мы встраиваем в конкретный экземпляр, почему явно не написать его под этот экземпляр? Без аргумента self вовсе.
Может я хуйню конечно сделал, но я только начинающий макакен + уже сам запутался в своём вопросе уровня "как удобнее есть говно зубочисткой".
282 1994753
>>1994717
Я пробовал через консоль idle, смотря что происходит с элементами через __dict__, id, получается ли переопределить разным образом и что происходит при этом.

В принципе и более умные способы существуют.

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

Лутца мне кажется тебе надо или обновить, или какую-нибудь другую книжку взять. В твоём скрине упор на питон-2, это морально устарело, всё, что касается объектной модели, там радикально переделали. В плане кишок там вообще всё очень сильно переделали.

Только голову себе ломать вот этими разными версиями. В общем лучше смотреть книги, где именно про питон-3, может с отсылкой иногда к тому, как было в питон-2. Сам когда-то очень давно такое читал, норм а потом пошёл на работу, где был питон-2, вот это не норм
283 1994757
>>1994753

>В общем лучше смотреть книги, где именно про питон-3, может с отсылкой иногда к тому, как было в питон-2.


Так у Лутца так и есть же.
284 1994758
>>1994751
Это если ты пишешь метод с нуля. А если у тебя есть функция-метод, которые ты хочешь привязать к конкретному объекту?
285 1994764
>>1994758
Ок, понял. Спасибо.
>А если у тебя есть функция-метод, которые ты хочешь привязать к конкретному объекту?
То мне пора в дурку.
286 1994768
>>1994757
В твоём скрине явно речь идёт о питон-2, с отсылкой к тому, что в питон-3 уже несколько иначе. Тебя учат в первую очередь второму питону.

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

Особенно все эти классы старого стиля.
287 1994784
>>1994768
Ненене. Книжка про 3, просто он много рассказывает про то как было и что делать, если вы ещё сидите на 2 или переходите.
288 1994796
>>1994758

>А если у тебя есть функция-метод, которые ты хочешь привязать к конкретному объекту?


Задача изначально была оторванная от реальности, но всё же: как может так получиться, что у меня уже есть готовый метод, который принимает аргумент self?
289 1994806
>>1994796

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


Легко в общем-то. Ты можешь пытаться использовать метод из другого класса для своего объекта. Либо метод, сделанный чтобы его в качестве MixIn использовать. Это как раз нормально.
290 1994809
>>1994806
Понял.
image8 Кб, 451x286
291 1995690
Добрый день. Почему-то не срабатывает input в теле функции, может, я что-то сделал не так?
image9 Кб, 507x288
292 1995719
>>1995690
Забыл преобразовать summ и percent в int, классика.
293 1996137
>>1995719
Ты реально ощущал пиздец надобность пофиксить эту хуйню?
294 1996207
Случается такое что мой бот из-за проблем с интернетом не может выполнить какой-то запрос.
И нужно поставить скрипт на паузу time.sleep(60) и попробовать повторить перевыполнить функцию пока не получится нормально передать запрос.
Хочу написать обработчик ошибок.

Проблема в том, что скрипт из разных модулей, есть класс, в классе эвент-луп со своей логикой и вызовом разных функций которые принимают разные аргументы. Эти функции, иногда завершаются ошибкой.
Отлавливать и писать логи ошибок я научился, код для этого лежит в отдельном модуле.
Получается следующее:
Я вижу что "Ошибка в функция_нейм". Я даже могу вызвать эту функция_нейм() но я не знаю как получить те самые аргументы для этой функции, которые передались как-то в эвент-лупе класса, да еще и в другом модуле.

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

Какие есть варианты более подходящи для моей ситуации?
Ссори если написал запутано
295 1996215
Аноны, как получить отсортированный по ключу dict, содержащий в себе несколько list? https://ideone.com/7sVLQe
296 1996256
>>1996215
Параметр key в sorted должен быть функцией, которая получает на вход элемент сортируемой последовательности, а возвращает значение, которое будет использоваться для сортировки, функция-ключ может быть и лямбдой. Я так понял, тебе надо отсортировать именно список размеров, а не словарь date, ведь там только один элемент, собственно sizes, так что в итоге получается как-то так:

sizes = sorted(data['sizes'], key=lambda size: size['height'], reverse=True)
297 1996264
>>1996256
Спасибо, ты мне очень помог.
298 1996268
>>1996256

>sizes = sorted(data['sizes'], key=lambda size: -size['height'])


мимо математик
299 1996286
>>1996207
Нихера не понял. Если у тебя asyncio и один процесс интерпретатора, то что ты не можешь получить из одной области памяти?
Ты делаешь запрос, есть какой-то payload и тебе надо повторить запрос с измененным payload?
Скинул бы ссылку на git, так хоть можно понять о чем речь идет
300 1996333
>>1996207
Нихрена не понятно, но скорее всего тебе надо реализовать "менеджер заданий".

У тебя есть или отдельная asyncio-задача, или отдельный тред, которые занимаются тем, что выполняют специфичные задачи. Задачи они получают в виде словаря с какими-то параметрами. Для этого они случают очередь.

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

Самый общий паттерн.
301 1996363
>>1996268
В данном случае, это может и так, только вот в общем случае это может не сработать. Чтобы сортировать коллекцию, элементы которой принадлежат типу T, (ну, или функция-ключ возвращает значение типа T), необходимо и достаточно, чтобы у этого типа T были реализованы операции сравнения, при этом, реализация каких-либо других операций, например, операции вычитания, для этого типа T вовсе не требуется для выполнения сортировки, то есть, существование параметр reverse более чем оправданно.
302 1996381
>>1996363
Полностью согласен, но придется ответить духотой на духоту: операция вычитания и операция обращения знака это разные операции.
303 1996480
Понял, что на работе деградировал и разучился пользоваться нормально реббитом и настраивать CI/CD потому что все уже давно настроено, а добавление микросервиса сведено до написания трех строк
Хочу сделать пет в несколько этапов, что бы все вспомнить
1) Сервис для получения курсов валют раз в 10 минут, на который можно было бы подписаться и который отсылал бы дифы на подключившиеся сервисы + либа-клиент для него
2) Реализация простого rpc-сервера, который можно было бы превратить в любой нужный сервис просто добавили методы
3) Деплой на gitlab без выхода в сеть
4) Деплой на амазон с выходом в сеть через бесплатный аккаунт

Как еще можно поиграться с кроликом?
304 1996483
>>1996137
Не понял вопроса. Мне нужна программа для расчетов, эта функция высчитывает проценты, что непонятного? Единственное, что мне было нужно - заставить скрипт работать и я сам с этим справился. Не понимаю вообще, зачем ты что-то мне пишешь, дружок.
305 1996490
>>1996483
Испытал те же чувства, что и тот аноним. Сложно словами описать. Ну типа ты пишешь примитивные вещи и при первой же ошибке пишешь на двач, вместо того чтобы подумать и погуглить.
В функции print разделитель по умолчанию - пробел, поэтому в строке результат не нужен пробел после двоеточия, у тебя получается два пробела подряд в выводе.
Лучше писать int(input())
Sum по-английски пишется с одной m
Press any key будет работать не так, как должно работать, а ждать, пока ты нажмёшь enter
Не знаю, зачем я это пишу, все равно из тебя ничего путного не выйдет
306 1996492
>>1996490

>Sum по-английски пишется с одной m


Здесь ты не совсем прав, в том смысле, что sum всё-таки базовая встроенная функция питона и использовать такие имена переменных крайне дурной тон. Поэтому summ довольно общепринято.
307 1996496
>>1996490

> Испытал те же чувства, что и тот аноним.


И с чего ты взял, что меня ебут ваши чувства, дядь? Ты аустист что-ли?

>Сложно словами описать.


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

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

Тл;др
Нахуй иди долбоеб и советы свои в задницу засунь, а я буду делать что захочу и где захочу.
308 1996497
>>1996483
Ты, анон, не обижайся, но смотрится так, как будто ты первый-второй день изучаешь программирование с нуля, посмотрел урок, попытался написать, и решил сюда что-то кинуть. Может потому, что скучно.

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

Дам тебе дельный совет. Пользуйся питоновской idle, думаю ты знаешь, что это такое. Там ты можешь каждую операцию более-менее оттестировать, каждую конструкцию проверить. Это сильная сторона питона и помогает быстро прокачать скиллы.
309 1996514
Пытаюсь в первый проект. Подскажите, что почитать для понимания работы сервиса. Интересует момент общения бэкенда и фронтенда, как передавать информацию между ними.
310 1996553
Нужно за короткую юзеровскую сессию делать где-то 300-400 асинхронных реквестов в один API. Есть какие-то тулзы, которые автоматизировали бы отправку этих реквестов через разные прокси для разных юзеров, чтобы API не заблочил? Или в таких случаях прокси мануально скрейпят?
311 1996599
>>1996514
REST, JSON API
312 1996614
>>1996514
Попробуй по HTTP. Тебе понравится
313 1996627
>>1996496
Ух, как же тебя разворотило! Надеюсь, никогда не вкатишься, не хочу с истеричными мартышками в одном айти работать.
314 1996644
>>1996480
Никак, упрешься в прожорливость erlang
315 1996646
>>1996286
У меня нет гита. Да и честно не хочу палить свой говнокод.

>>1996333
Мне кажется, что мне нужно что-то подобное как ты описал.
Спасибо, погуглю.
316 1996697
>>1996646
Почему нет? Можно делать приватные репозитории, бесплатно
317 1996746
>>1996553
Создаешь лист с проксями, при каждом запросе дергаешь рандомом или если можно последовательно, то через itertools.cycle
https://docs.aiohttp.org/en/stable/client_advanced.html?highlight=proxy#proxy-support
318 1996779
>>1996627
Не вкачусь, это моё хобби.

>>1996497
На что обижаться? На то, что вы настолько охуевшие, что нельзя вопрос задать и, сука, самому на него ответить?
Это не со мной что-то не так, раз вы не можете пройти мимо пусть даже самого тупого на свете, но уже закрытого, блядь вопроса со своим неебически важным мнением.

Вот мне действительно не стоило больше писать итт, кормлю последний раз.
319 1997188
Сейчас будет даунский вопрос, сразу предупреждаю.
Изучаю пайтон (не как основное ремесло, а как вспомогательный инструмент).
Хочу сделать на нем какой-нибудь пет проджект.
Идеи есть, но суть не в этом.
Что мне вообще сделать, сайт на джанге или десктоп на PyQt (или аналогах)?
Хоть и не планирую писать сайты промышленно, склоняюсь к джанге, потому что она хотя бы на слуху. С другой стороны, для сайтов еще кучу всего надо знать. Десктоп будет проще, наверное, но десктоп на пайтоне кажется совсем мертвой темой (извините ради бога, если ошибаюсь).
Помогите определиться.
320 1997199
>>1997188
В принципе клепать фронты на питоне можно, но зачем? Логичнее было бы написать HTTP сервак.
321 1997202
>>1997199
Да мне именно для практики питона, не то чтобы я мечтаю делать сайты или приложения.
322 1997208
>>1997202
Ну запили тогда рисовалку фракталов и рендерь её прям в консоль. Прям в ту у которой 16 цветов и 80x25 размер экрана.
323 1997216
>>1997188
Я бы веб-приложение пилил, клиентскую часть можно запустить без боли везде где есть браузер, серверную часть можно запустить хоть на утюге, хоть на другой стороне глобуса. Всяких UI-kit сотни, интерфейс сразу будет выглядеть прилично. Можно использовать возможности браузера, push-сообщения, pwa и все такое. Без js не обойтись, но зачем на одном языке зацикливаться.
324 1997232
>>1997208
С одной стороны да, а с другой стороны хочется что-то осязаемое, чем потом можно будет и с людьми поделиться.
>>1997216
Звучит интересно, js я тоже не против знать для общего развития.

>UI-kit


Про эти штуки расскажи подробнее, чем пользоваться?
xfOqp.png14 Кб, 379x848
325 1997258
>>1997232
Чем тебе консоль с фракталом не осязаемое? Ей очень даже можно с кем-нибудь поделиться.
326 1997390
А если из функции возвращать несколько результатов вычислений этой функции, то она всегда вернет их кортежем?
Ну типа
def test():
__a = 5
__b = 6
__c = 7
__return a,b,c
327 1997441
>>1997390
порядок возврата в этой хуете не гарантирован, это же дефайн сишка с костылями, если хочешь то берешь и в массив суешь
328 1997442
>>1997390
и вообще тебе скорее нада глобалки тащить или создавать пустышки, после передавать в функцию и менять через глобалку.
329 1997456
>>1997390
Да, кортежем будет

>>1997441

>порядок возврата в этой хуете не гарантирован


Ты ебанулся?
330 1997488
>>1996746
Это я понимаю, я другое имею в виду - как по-православному скрейпить эти самые прокси-то? Просто как-то не верится, что для такой задачи нету какой-то стандартной тулзы.
331 1997502
>>1997488
Оно слишком просто пишется, что бы иметь стандартную тулзу, у тебя по сути есть просто словарь c доступами, которые тебе нужно выбрать по определенному признаку.
332 1997506
>>1997502
Вот как пример
https://pastebin.com/SMhYGVEa
333 1997566
>>1997442
Хуй знает чел, я хоть и начинающий, но слышал, что глобалки зло, и нехуй их использовать.
334 1997578
def range(start, stop):
____def step():
________nonlocal start
________res = start
________start += 1
________return res
____return iter(step, stop)

Не понимаю, почему эта конструкция работает, как итератор. Мы же в iter() передаем функцию, а не итерируемый объект, или внутри range сохраняется состояние start?
335 1997621
>>1997502
>>1997506
Нет, так тут фишка же в чём: если поток пользователей через прокси пропускать, то лист с этими прокси должен иметь вменяемую степень валидности, то есть, количество мёртвых или медленных прокси должно быть сведено к минимуму, а желательно вообще к нулю. Поэтому странно, что нету каких-то общеупотребимых инструментов/сервисов под пайтон, которые бы автоматизировали эту фильтрацию.
Так-то, конечно, можно и самому это написать, но, понятное дело, лень.
336 1997627
>>1997621
Думаю, что такое будет только за денежку
http://pubproxy.com/
337 1997629
>>1997627
Да, я вот только на такие сервисы и наталкивался. Обдиралово натуральное.
Наверное, придётся свою либу писать.
338 1997636
339 1997662
>>1997188
https://2ch.hk/pr/res/1989943.html#1997629 (М)
вон чел хочет писать самодельную библиотеку для запроса к апи по списк прокси. напиши свою реализацию. нафиг нужны всякие вебы да десктопы.
340 1997667
>>1997188
веб делай, задеплоить можно без проблем и доступ будет откуда угодно, джанга я думаю более задокументированная, чем десктоп либы, да и информации на стековерфлоу побольше будет, а для веба особо знать ничего не надо, ты же для собеса готовишься, поэтому протоколы, бд и прочее тебе и не нужны, по сути будешь по гайдам делать обертку для своих функций
341 1997668
>>1997566
не пользуйся глобалами, порядок гарантирован, хз откуда взял тот чел про то что это не гарантированно
342 1997689
>>1997390
Описание кортежа прочитай в доках. Всё он вернёт упорядоченно. Это до 3.6 версии была "фича", что возвращаемый словарь был неупорядоченный, а не кортеж.
343 1997693
Каво
344 1997715
>>1997232

>UI-kit


Это набор готовых графических элементов в едином стиле. Скорее всего ты слышал про twitter bootstrap, но есть еще много других. Чем пользоваться не подскажу, я в них не разбираюсь. Сам использую vuetify, потому как фронт на vuejs, мне норм.
345 1997717
>>1997578
В дебаг моде посмотри значение step, хули гадать
346 1997719
>>1997662
>>1997667
>>1997715
Спасибо за ответы!
347 1997870
>>1997578
НУ НАПИСАНА ЖЕ:
If the second argument, sentinel, is given, then object must be a callable object. The iterator created in this case will call object with no arguments for each call to its __next__() method;
348 1997881
>>1997629

>Обдиралово натуральное


Ну так нужно выгружать список проксей постоянно из разных источников и проверять их актуальность, хули ты хотел?
349 1998017
Посоветуйте видеоуроки по ооп, нашел на ютабе годный курс, прям чел так ясно излагает про атрибуты и методы, прям все так ясно, потом хуяк, когда до самого доходит - платная подписка. Я в ахуе, но если бы досмотрел точно бы разобрался во всем. Но платить не хочется, он там типо только партнерам рассказывает хитрый пидор.
16148642240660.png457 Кб, 611x654
351 1998055
Анончики помогите пжта. Написал простенькую программу. Вначале необходимо ввести текст. В онлайн интерпритаторах можно вводить только одной строкой. Есть ли какое-то просто решение, как можно поделиться с кем то программой, чтобы можно было вводить большой блок текста. В http://pythontutor.com/live.html#mode=edit
например спокойно копирую из блокнота, что угодно и вставляю. Все работает без ошибок.
352 1998065
>>1998055
В итоге хочется видеть, что-то похожее на replit.com Делишься ссылкой. По ссылке сразу запускается программа.
353 1998070
>>1998021
На иврите балакает жид. Ничего не ясно.
354 1998088
Аноны, поздравьте меня я с вами уже больше года и наконец получил свой оффер, сразу на неплохую зп, задавайте вопросы
355 1998093
>>1998088

>на неплохую зп


На какую? В каком городе? Какой стек?
356 1998097
>>1998093
50к первый месяц, мск, для 19 лет просто великолепно, еще и удаленка, постараюсь с учебой совмещать. На проекте вроде сейчас фласк, алхимия и ребит используются, хотя я больше по джанге, думаю разберусь
357 1998107
>>1998097
Пойдет, успехов в карьере!
358 1998118
>>1998107
Спасибо :3
359 1998170
Ньюкекный вопрос. Дошел до классов, не понимаю нахера это нужно, в моих курсах отвечаю на вопросы правильно, задачки пишу правильно, но все равно нахер не понимаю нахрена это относительно простого присваивания. Я понимаю что в больших программах и принципах ООП это все более нужно, но пока что это просто какой-то кастыль, куски лишнего кода, инит, селфы, скоуп какой-то ради того чтобы сделать то что я пока делаю в три раза проще без всей это лажи.
360 1998173
>>1998170
Ну посмотри на стандартные базовые типы вроде листа-дикта-стринга.
Ты просто и элегантно пользуешься ими как объектами. А теперь представь это со свом в три раза проще.
361 1998193
>>1998170
Просто посмотри на библиотеки которые используешь и поймешь что все программирование на питоне по большей части это ооп, типа метод гет у сессии, метод джоин у строк, гет у словарей и т.д и даже когда ты принтишь вызывается метод объекта __str__
362 1998196
>>1998170
Лучше вкатывайся в ооп как можно скорее, чтобы потом говна не пожрать, как я. 5 лет писал на сикуле процедуры и функции, а как в сисярп и питухон залез, так до сих пор ебусь с классами, конструкторами и методами.
363 1998235
>>1998196

>5 лет писал на сикуле процедуры


Круто, я тоже. До какой зп дорос?
364 1998493
Опытные человечки, подскажите.
Есть сторонняя система, обеспечивающая кусок бизнес процессов. Она интегрирована с другими приложениями предприятия через самописный рест апи. И апи и другие приложения написаны на питоне. Вопрос: какие есть лучшие практики, для того чтобы формализовать структуры данных, которыми апи общается со своими потребителями?
Пока что я пришел к отдельному пакету, в котором эти структуры описаны как frozen dataclass. То есть апи из этого пакета взял датакласс, инициализировал и бросил в сериалайзер, консьюмер апи взял ответ апи, кинул его в конструктор датакласса и гарантированно не будет ошибок.
Проблема в том, что теперь нужно поддерживать и деплоить еще один пакет.
Как можно сделать проще?
365 1998661
>>1998493
Никак, по сути у тебя есть SDK для апи написано. Можно заебаться с каким нибудь универсальным протоколом типа протобафа или любого другого с кодогенерацией, что бы описывать все в одном файле, но это тоже такое себе.
366 1998780
>>1998661
Ок, спасибо.
photo2020-08-0201-50-52.jpg95 Кб, 760x797
367 1998782
Аноны какой рассово верный способ работы с sql?
Если допустим мне надо один единственый запрос отправить если смысл корячить для этого sqlalchemy? А если два? Где эта граница, когда уже надо имплементировать?

Не ясен хуй, проще пиздык-хуяк-и_в_продакшен. Но как правильно?

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

>Меня не обоссут за то что я для одного запросы алхимию тащу


Менеджерам и прочим кабанчикам все равно, лишь бы работало, остальным наверное даже лучше, придется разбирать говнокод только на питоне.
369 1998803
Подскажите где можно читнуть про параллелизм, асинхронность, вот про это все. Про ооп уже изучил. Хочется вот этого модного. Также изучил про парадигмы программирования, про императивное и декларативное.
370 1998810
>>1998782
Запиши его в файлик и оттудова бери
372 1998831
>>1998803
Разрозненно если только medium.com/hackernoon.com, в Ютубе или на reddit. Потому что с 3.6 библиотека изменилась, из node js пришла uvloop, методы многие поменялись, теперь миксуешь asyncio.method() И loop.method() методы.
В 3.9/3.10 вместо loop.run_in_executor(Executor, func(*args)) вообще asyncio.to_thread(). Дохрена изменений в каждом выпуске, уже заебали если честно. Девы какие-то ебанутые.
373 1998833
>>1998782
Peewee легковеснее, если не нужна асинхронка. Да и синтаксис там получше. Алхимия в бенчах везде на дне.
374 1998834
>>1998493
Pydantic
375 1998838
>>1998833
что-то там у него список поддержки баз бедный, даже оракла нет.
376 1998851
>>1998833

>в бенчах


К реальной жизни бенчмарки отношения не имеют. Если профилировать среднестатистическое приложение, то 90% времени там уйдет не на орм, а на системный ввод-вывод, так что можно поначалу не ломать голову над выбором. Ну а если ты уверен, что у тебя сразу будет хайлоад, то там уже будет другая архитектура приложения, заточенная на масштабирование.
Как-то читал статью каких-то чехов, которые взяли затестили веб-фреймворки питона не в вакууме, а в обычных условиях, с обращениями к бд, и вышло что супер-йоба-быстрый фастапи выдал ~20 рпс, а медленный устаревший джанго - где-то 15. Экономия на спичках.
377 1998892
Мне вчера Марк рассказал, что если у функции на питоне дефолтным значением аргумента будет пустой лист [], то это будет работать не так, как ожидается. Правда, он конкретных примеров не привел. Вы слышали что-нибудь про это?
378 1998895
>>1998892
Пустой лист создается при определении, а не при каждом вызове функции. После любых модификаций он уже не будет пустым.
379 1998896
>>1998895
Вот тебе пример https://ideone.com/WRmkCx
380 1998900
>>1998895
>>1998896
Неожиданно, спасибо большое!
381 1998944
>>1998895

> лист создается при определении, а не при каждом вызове функции


А почему это именно так работает? Я понимаю, что это как-то связано с изменяемостью/неизменяемостью типа, но все равно не могу логику уловить.
А какие еще неочевидные вещи знаете, которые любят на собесах спрашивать?
382 1998962
>>1998944
Области видимости
383 1998998
>>1998944

> Я понимаю, что это как-то связано с изменяемостью/неизменяемостью типа, но все равно не могу логику уловить.


Просто мутируемый тип можно собственно смутировать, а немутируемый ты просто заменишь в текущей области видимости на время вызова функции.
Почему определяется только раз, а не на каждом вызове - хуй знает.
384 1999015
>>1998838
Если нужен оракл, то бери Алхимию, в чем проблема? Оракл уже другая нагрузка. PG, MySQL для дешмана, тут peewee зайдет. Если база дешман, значит и нагрузок таких нет
385 1999018
>>1998851
Асинхронка не про скорость, а про отказ от task managers.
FastAPI надо уметь запускать, когда Джанго хуяк хуяк и а продакшен с оверхедом.
Gunicorn uvicorn workers нужны и быстрый uvloop, видел бенч такой именно и там Джанго дали пососать.
386 1999020
>>1998851
Алсо, ещё выкатывают tortoise ORM, тоже охуенная тема, но версия там 0.17.* ещё 2 года до готового релиза.
387 1999043
Пару вопросов по
Многопоточность это и есть параллельное программирование?
Чем отличается асиннхронность от многопточности? Стабильностью?
И где это можно заюзать, это все про веб? Или питон может и десктоп-моб?
И если дрочить джангу-фласк, там все это есть? или надо дрочить aiotop?
388 1999095
Нубовопросы. Как можно добавить записи в json? Нужно добавить еще словари в "c"

{
"a": "1",
"b": "1",
"c": {
{
"c11":"3",
"c12":"4"
}
}
}
389 1999126
>>1999018

>Асинхронка не про скорость, а про отказ от task managers.


Нет, менеджить таски ты спокойно и в питонячьем asyncio может, и вообще суть не про менеджмент, оно и в ГОвяших гринтредах есть, а про конкурентную многозадачность в рамках одного системного треда.
390 1999127
>>1998170
Аноны, раз уж так пошло, я видимо выбрал хуевый курс, где толком не поясняется значимость классов.
Я прошел его, на вопросы ответил, как их билдить, инит-хуит знаю, но как это в общую программу записать, и главное зачем не могу уловить.
Есть ли какой-то адекватный источник, желательно объемный, типа книги по ООП и классам, их методам, функциям, коллам, а то я пытаюсь монстрячить какую-то херню и понимаю что он меант ту би с классами, а не просто в линию с деревьями иф елиф ваил.
391 1999135
>>1999127
Классы это просто структуры данных с забиндеными на них методами. Представь, что у тебя есть словарик с данными, с которым ты часто юзаешь определенную функцию. Для удобства работы с ними ты объединяешь их в одну модель.
392 1999136
>>1999135
Да это я могу и вики прочитать и в мануале.
Мне нужно всякую логику их использования, как вызывать методы(?) класса дальше в программе и почему я не могу просто понаписать десятки функций
393 1999144
>>1999136
Ну например, сделал ты запрос через requests или aiohttp и тебе пришел экземпляр класса Response у которого есть готовые методы, а внутри него лежат определенные данные. Если писать все на функциях то тебе нужно помнить для какого именно класса оно предназначается и импортировать их при этом не проебав перезапись имен потому что названия действий могут быть одинаковы в разных контекстах. Еще классы дают доступ к ООП, когда ты можешь четко определить интерфейс хотя в питоне можно так и для функций обычных сделать и отнаследовать сам класс для его модификации.
394 1999163
>>1999136
Потому что когда у тебя в программе внезапно появятся сущности HttpRequest, BlogPost, Email и NaHui и у каждой из них должен быть метод send, ты начнешь писать десяток функций sendHttpRequest, sendBlogPost, sendEmail, sendNaHui. Когда у тебя таких сущностей станет не 10, а 110, то и функций у тебя будет 110 и все с разными именами. И вместо того, чтобы писать x = new Some(); x.send(); x.elsewhere(); x.nahui(); ты будешь писать x = createSome; sendSome(x); elsewhereSome(x); nahuiSome(x); Занимаясь бесполезной хуетой.

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

Когда же ты откроешь для себя, что определенные сущности могут иметь одинаковое или отчасти похожее поведение и откроешь для себя композицию или наследование, то вообще ахуеешь.
395 1999220
>>1999043

>Чем отличается асиннхронность от многопточности? Стабильностью?



Ну ёбана смари. Вот есть у тебя шлюха, которую надо повыаебать. У неё три дырки, а хуй у тебя только один. Многопоточность, это когда ты как ебанутый поочереди вставляешь в каждую дырку. А асинхолнность, это когода говоришь, что я тебя буду ебать две секунды в пизду, а потом две в сраку и тд.
396 1999223
>>1999095
Это невалидный жсон. Должен быть ключ, тогда добавляешь ключ со значением. Если нет ключа, то это массив с квадратными скобками, добавляешь как в список.
397 1999225
>>1999220
А где это можно применить? Не для написания же скриптов это надо. Для веба? В джанге и фласке есть такая реализация асиннхронности? Или это только про торнадо? Или только для десктопа?
398 1999232
>>1999223
Спасибо. Еще порылся на стаковервлоу, вроде работает
399 1999239
>>1999225
В вебе, в sql. Когда отправил запрос и пока ждёшь ответа, не сидишь мнёшь вялого, а посылаешь ещё запросов, пока тебе ответят.
400 1999321
Где почитать и разобраться раз и навсегда со всякими ювикорнами, гуникорнами, гиперкорнами, гевентами и прочими единорогами? Какой из них для чего нужен.
16186774681940.jpg202 Кб, 605x809
401 1999504
Питонята, такая проблема: вот я уже 3 года работаю, основной стек это DRF и Flask, но не знаю как и куда дальше расти. ML не хочу, да и сам веб-стэк мне нравится, но хочу апаться до синьора. Что посоветуете? На работе всё обычно сводиться до построения API для фронта/мобилки, нестандартных задач мало, да и то обычно сводятся до юзания какой-нибудь библиотеки.
402 1999558
>>1999126
Я подразумевал Django+Celery
403 1999634
>>1989943 (OP)

Сап, анонсы, а как с помощью скрипта на пистоне узнать версию pip, например?

Типа, ну вот пишу я print('pip - v'), но ничего не происходит. Как это делается? Как запустить через пайтон команды как для консоли? Например, скрипт, скачивающий какие-то пакеты?
405 1999643
>>1999638

Сенк ю, мой ночной друг, чая, тортикрв и добра тебе, любезный человек
406 1999687
За скока времени научусь парсить сайт если могу написать только хедо ворлд?
407 1999699
>>1999687
За день?
408 1999726
>>1999687
Зависит от сайта, где то одного запроса с извлечением тегов хватит, а где-то аутизм с селениумом с обязательным логином, гуглокапчей и прочим говном
409 1999738
>>1999726
А что, есть что-то, что может селениум, чего не может бутифулсоап?
410 1999750
>>1999738
Как только ты захочешь парсить нормальный сайт, там будет защита от таких умников, чекающая, заходишь ли ты с браузера, для чего нужен силениум. Ещё более солидные сайты и с силениумом особо не попарсишь, марин трафик я пытался как-то парсить, так там такая защита анальная, что пришлось забить на это дело. Но васянский сайт без проблем спарсишь и с супом, да.
411 1999795
>>1999738
Любые жс подгрузки, суп умеет работать только если тебе сразу по запросу выдают хтмл с нужной инфой.
412 1999798
>>1999738
В 90% для всяких жс-защит от парсинга, остальное всякие сверханальные рендеры на клиенте.
413 1999853
>>1999504
Прочитай для начала "Совершенный код".
Потом позакапывайся в туториалы по языку на официальном сайте, разберись досконально, как работает язык, на котором ты пишешь.
Потом почитай Clean Architecture, попробуй спроектировать какой нибудь сервис с т.з. чистой архитектуры. Когда станет получаться, можешь считать, что ты уже на правильном пути. Плюс, ты должен стараться писать код на работе так, чтобы к тебе было меньше претензий со стороны qa.
Ну и наконец, алгоритмы тоже надо по чуть-чуть прокачивать. Попробуй задачки на литкоде порешать.
изображение.png39 Кб, 811x387
414 1999877
У меня довольно тупой вопрос. Есть метод класса, который в том числе через async запрашивает с restapi данные, и вместо того чтобы вернуть результат, он говорит, мол я еще незакончил делать то что в асинке, и нихуя невозвращает.
415 1999883
>>1999750
Ночью все-таки взялся за этот сайт. Вроде серьезная контора, продают свое ПО и довольно недешево, но все данные которые мне нужны лежат в открытом доступе на сайте. Ограничение на запросы с одного айпи есть, но если зарегаться и оплатить подписку за 100500 рублей то ограничение частично снимают. Я уже хотел было забить, но зарегистрировался (без оплаты) ради интереса, и сделал удивительное для себя открытие. У этих додов просто создает субдомен типа твое_имя.site.ru а там таких субдоменов дохуя естественно, все ищутся в любом сервисе поиска поддоменов. Я думал сначала подставлять те, что живые, у которых еще лимит не кончился, но потом нашел вообще охуительный субдомен API.site.ru на запросы к которому вообще нет никаких ограничений. Короче я начал писать на бутифулсоп, надеюсь получится.
416 1999924
>>1999883
Нихуя ты угроза
не хакай двач пожалуйсто
417 1999947
>>1999924
Это же законно, разве нет?
418 1999976
>>1999504
ЛОЛ, нахуя лягушки на него запрыгнули?
419 1999990
>>1999947
Это тебе дяди из СБ объяснят, омежка.
420 2000003
>>1999990
Я за семью проксями ващето.
421 2000006
>>2000003
Сдадут с потрохами, ибо ты чмо никому не нужное.
422 2000007
>>2000006
Да не пизди, это же хуйня.
423 2000021
>>2000007
Вот так пацанам из СБ и рассказывай только выбитые зубы подбери сначала
424 2000125
>>2000021
и что они ему сделают? Думаешь из конторы рога и залупы, его вычаслят по ип и набьют ебальник?
425 2000130
>>1999853
Спасибо, схоронил
426 2000131
>>1999976
Вкатывальщики осваивают питон
427 2000237
>>1999877
У тебя обычный def, а должен быть async def. Странно, что тебе IDE об этом не орет.
428 2000246
>>1999853

>совершенный код


Более мерзкой книги по кодингу я не видел, автор льет воду в виде мотивационное залупы 90% текста, все полезные идеи умещаются несколько статей.
пятерочка чел кассир тату.png1,3 Мб, 1261x998
429 2000249
430 2000283
>>1999877
Не складывай строки. Объединяй join'ом
431 2000361
>>2000246
Он прост обосновывает, что не с потолка взял.
"У функций должны быть понятные имена, это подтверждает внутреннее исследование в компании Zaloopa Inc. в 1989 году, где после внедрения человекочитаемых имен число самоубийств программистов сократилось на 6%".
А дядя Боб напишет то же самое, но с мотивацией "я на этом еще в 70-е года на pdp-11 погорел, так что верьте".
432 2000364
>>2000283
Не объединяй join'ом. Вставляй в f-string
433 2000368
>>2000283
Почему лучше обьеденять джоином?
434 2000416
>>1999976
У лягунов сезон спаривания))))))))
435 2000428
>>2000368
Так больше на джаву похоже. Как будто энтерпрайз.
436 2000457
>>2000416
А почему на питоне порятся? в чем смысл?
437 2000481
Если set() асимптотически пиздатая структура данных, ищущая в себе значения за О(1), то и len(set()) будет работать хорошо? Или же мне лучше хранить размер в отдельной переменной? Предположим я заполняю set с нуля и в цикле каждый раз проверяю условие на его длину.
438 2000500
>>2000481
len для стандартных типов берется из отдельной переменной внутри сишки, для них всегда О(1)
439 2000506
>>2000481
1. Алгоритм работает.
2. Алгоритм работает недостаточно быстро.
3. Алгоритм исследован профайлером и установлено бутылочное горлышко.
Если ты не на пункте три, тебя не должно ебать, насколько быстро работает len в питоне.
440 2000520
>>2000368
Строки имутабельны и каждый "+" - это создание новой строки
441 2000526
>>2000520
А джойном не создается? Они же иммутабельные.
442 2000667
Подскажите что я упустил по видам алгов.

Брутфорс
Разделяй и властвуй
Динамическое програмирование
Жадный алгоритм
Поиск с возратом, аля бектрекинг
Локальный поиск
Трансформируй и властвуй.

Есть еще что-нибудь?
443 2000672
>>2000667
Трансформируй поиск.
Жадный бектрекинг.
Локальный разделяй.
444 2000764
>>2000526
При сложении строк с помощью "+", при каждом сложении будет создаваться промежуточная строка, например, выражение "собака"+" "+"грызет"+" "+"кость" создаст целых четыре строки: "собака ", "собака грызет", "собака грызет ", "собака грызет кость".
А " ".join(["собака", "грызет", "кость"]) берет все строки, что ему дают, и сразу выделит необходимый размер памяти и создаст новою строку только один раз, сразу создаст "собака грызет кость".
445 2000766
>>2000764
А какой из этих вариантов легче читается? Покажи большой проект, где джойнами склеивают строки.
446 2000770
>>2000457
Питон няшный
что за пидор дефо.mp45,8 Мб, mp4,
722x456, 0:37
447 2000788
>>2000770
Он заставляет их пороться в некотором роде?
449 2001052
>>2000506

>Если ты не на пункте три, тебя не должно ебать, насколько быстро работает len в питоне.


Это ты не совсем прав, тебя должно волновать, какая сложность у какой из операций. Например если сложность O(N), то это как бы очень нехорошо.

Вот скажем как тест на вхождение в список vs тест на вхождение в множество или как ключ в словарь.

В случае len() всё просто, уже ответил анон, работает за O(1). Поэтому заводить прочие переменные не нужно.
450 2001377
Ананас, как красиво сделать инстанс модели джанги неизменяемым через некоторое время после создания, скажем, через неделю?
451 2001403
Пиздец как забавно, начал как хобби учить питоне лет 5 назад, смотрел ролики, почитал даже лутца. Но самое интересное, что норм видосы, наши и бурж стали снимать только щас, причем так понятно, что я ваще все понимаю о чем пиздят. Даже про ооп. В голове такая ясность. А пару лет назад несли такую хуйню. Но я все равно пытался понять все. И понял.
452 2001426
>>2001377
Через сигналы
453 2001429
>>2001403
Это называется плато.
454 2001452
Что эффективней, завести одну очередь и забирать оттуда по параметрам сообщения, либо завести n очередей и чтобы каждый консьюмер забирал из своей? Много очередей не будут требовать сильно больше памяти\цп?
455 2001473
>>2001452
Извините, я совсем не опытный, но мне кажется, что из очереди сначала считывают, а потом узнают все параметры...
456 2001493
>>2001429
Ясное дело что не на сухую продолжил. Но рили, вот стали снимать очень ясно, структурировано. Видимо сами научились. Или я стал старше-умней. Осталось дело за малым, просто найти работу) погромистом. Но это самое простое же.
457 2001514
>>2001377
Блокировать save если created_at старше недели?
458 2001644
>>2001403

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


А можно примеры видосов?
Мимо вкатывальщик
459 2001648
>>2001644
Кстати, пиши python 2021 или также только ооп. И смотри все подряд. Я так и делаю. По ооп дохуя уже просмотрел, становится ясно уже. И на кодворзе по ооп каты щелкал. Уже шарю за поля, методы, инстансы и тд и тп.
По самому питону можно смотреть все что за час, далее, ооп. Еще можно мнопоточность и асиннхронсть смотреть. Про джангу также кстати, год только писать 2021 и все. Там выведет куда надо.
460 2001650
>>2001648
Понял, спасибо
461 2001652
>>2001650
Ну вот например https://www.youtube.com/watch?v=-pEs-Bss8Wc&t=2223s индус норм поясняет за ооп. Все ясно четко и понятно.
462 2001668
Хай, народ! Такие вопросы:

1. Много ли вы знали(прочитали там книг по Python, алгоритмам + изучали годные курсы + решали задачки каждый день), когда приходили устраиваться на работу программистом ?
2. Могли ли вы применить Python для решения проблем на ПК/в реале ?
3. Можно ли делать норм софт на пк (исп. Python+...?; примеры есть?) ?
4. Можно ли делать норм(не тормознутые) приложения/игры(2d, 3d, online) для Android (исп. Python+...?; примеры есть?) ?
Или Android Development в основном для Java/Kotlin ?
5. Для Python актуальны пункты /3./4./ ?
Или есть пути разработки проще/правильней для 2021 ?
463 2001692
Есть 60000 строк в текстовом файле 1.
80000 строк в текстовом файле 2.
Нужно вычленить в файл 3 все полностью совпадающие у файлов 1 и 2 строки,
а в файл 4 совпадающие частично.
Частично - значит, что строка файла 1 имеет вид XXXX-YYYY-NN, а строка файла 2 имеет вид XXXX0-YYYY-ZZ или наоборот. Если найдены такие строки, то они должны быть идентифицированы как частично совпадающие и выгружены рядом друг с другом в файл 4.
Подскажите, может есть какие-то библиотеки, работающие с большим количеством строк? Мое решение работает для небольшого количества, но спотыкается на больших файлах, игнорируя некоторые дубликаты.
464 2001719
>>2001668
1) я начинал не с питона и питон не был основным языком.
2) да
3) Можно. Из того, чем пользуюсь я - торрент-система Deluge. Полноценный торрент клиент с gui, внешне по нему не скажешь, что он на питоне сделан.
5) ХЗ, но в целом мне кажется, что скорее нет, чем да. То есть питон плохо заточен под GUI приложения, под настольные приложения в целом. Для сервисных и серверных приложений да, для обработки данных да, но под десктоп бедновато как-то.

Вопрос в том, какие задачи тебе интересны. Хочешь разрабатывать игры и подобные вещи - ищи другую платформу. На питоне такие вещи стоит делать только если ты фанат питона.

Нудство по п.1. Программирование != знание языка. Тебе больше надо понимать технологии и уметь программировать. Особенно если речь не идёт о тяжёлых индустриальных языках вроде C++ STL, Java.
465 2001725
>>2001692

>Частично - значит, что строка файла 1 имеет вид XXXX-YYYY-NN, а строка файла 2 имеет вид XXXX0-YYYY-ZZ или наоборот.


Нужно подробнее. Самое главное тут формально описать функцию сравнения и может быть придумать какие-то инварианты, которые общие для двух строк (условно YYYY-NN часть строки).

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

Вторая задача сложнее. Идея может быть такой, что ты хранишь какие-то хеш признаки, которые одинаковые для двух похожих строк. И у тебя хеш-таблица, по которой ты поиск производишь и уже точное сравнение для строк с этим признаком.
466 2001736
>>2001692
1 - залить файлы в сикульные таблицы, посчитать от строк хэш и заджонить, всё это можно и в пандасе сделать, объемы маленькие, в крайнем случае можно разбить на чанки
2 - нужны списки возможных масок частичного совпадения, дальше всё тоже самое, что 1, только при сравнении применять функцию, которая будет маски сравнивать
467 2001737
>>2001736
Добавлю ещё, если строки всегда имеют одинаковый вид и 2 разделителя, то можно разбить их на столбцы, для 2 случая так даже быстрее будет
468 2001741
>>2001692
Из каждой строчки берешь эти самые XXXX-YYYY и пихаешь в словарь ключем, внутри список с полным значениями.
Потом обрабатываешь проверяемый файл так же, если ли в словаре, и есть ли полное значение, соответственно частичное и полное совпадение.
469 2001744
>>2001692
Первая задача изящно решается через метод intersection() типа данных set, а вторую я отказываюсь решать, пока она нормально не поставлена.
470 2001757
Прочитал книгу укус питона, в конце была дана задача "Адресная книга", которую я не смог сделать. В книге меня не сталкивали напрямую с чем-то подобным. Пришлось гуглить и смотреть, как ее сделали другие люди. Правильно ли я понял, что можно тупо нагуглить, понять логику задачи, переписать ее по-своему, и таким образом произойдет обучение, запоминание, как делать подобные задачи? Или этого недостаточно?
471 2001768
>>2001725
>>2001736
>>2001741
>>2001744
Всем спасибо за наводки. Уже примерно набросал что-то близкое к решению.
Но еще вопрос такой: изначально строк было 500000, после выравнивания регистра и new_list = [elem for elem, _ in groupby(orig_list)] осталось всего 80000 строк. Насколько этому решению можно доверять? Не могло оно удалить лишнего?
472 2001771
>>2001768
Тфу, забыл пояснить, что изначально хотел оставить только уникальные значения в файлах 1 и 2 для дальнейшего сравнения, тк. строки в них тоже дублировались.
image.png22 Кб, 428x182
473 2001781
474 2001784
>>2001781
помогити, я не помню, зачем это написал
475 2001797
Как развить логическое мышление?
476 2001799
>>2001797
попробуй if else
477 2001847
>>2000766
Думаю, когда нужно составить строку из нескольких переменных, лучше использовать что-то вроде f-strings, а там где прям список строк, причем, возможно, генерируемый в ходе исполнения программы, то там, кончено, лучше join.

Что касается проектов, можем взять любой крупный питоновский проект на гитхабе, например django, flask, sphinx, tensorflow, sqlalchemy, или еще какой-нибудь, и поискать там склеивание строк джоином, там их достаточно много.

Вообще, это такая рекомендация есть, для склеивания большого количества строк предпочитать джоин.
https://wiki.python.org/moin/PythonSpeed/PerformanceTips#String_Concatenation
CC1A484C-40E4-4C73-AD8F-BD9BE073EA0E.jpeg2,4 Мб, 4032x3024
478 2002015
Уважаемые знатоки, с какой из этих книг вкат будет проще и продуктивнее ? я зеленый
479 2002105
>>2002015
ты реально будешь читать бумажную книгу?
и что значит зеленый? тролль?
1618904312220.jpg60 Кб, 422x594
480 2002120
481 2002155
>>2001757
Можешь брать целые куски кода и копировать если совсем не понимаешь, главное либо запомнить принцип, либо разобраться потом почему и как, чтобы через время ты мог не подглядывать ни в синтаксис, ни в решения(я первые пол года постоянно сидел с вкладками с методами словарей и списков, когда скопировал 100 раз .append() я запомнил)
482 2002409
Насчет алгоритмов. Да есть геометрические и дохуя математические.
Но в овносном их делят на линейные, ветвление и циклические. Я так понимаю по логике. И по способу решения,
брутфорс
разделение на подзадачи
динамическое программирование, типо кэширование
жадные алги
бектрекинг
локальный поиск
и трансформация.

Помимо этого что еще нужно знать?
И такой вопрос. Где-то читал про основные понятия, пермутация... трататация и еще что-то. Это к чему относится? Чую что тоже важно.
483 2002429
Придумайте мне задачку
484 2002466
>>2002429
Генератор собак
485 2002470
>>2002429
Напиши программу для придумывания задач.
486 2002517
>>2002409

>Помимо этого что еще нужно знать?


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

>бектрекинг


>локальный поиск


>и трансформация.


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

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

Ты реально какой-то хернёй занимаешься.

>понятия, пермутация


pertumation = перестановка
Ты уж или по английски пиши, или по русски, а этого треша не надо. И ХЗ, как это классифицировать, и ХЗ, зачем это вообще классифицировать.

Алгоритмы о том, как получить все возможные перестановки, например. Кстати там есть разные варианты.
Frame 33.png116 Кб, 400x400
487 2002571
488 2002754
pandas
489 2002814
Сап анон. Сейчас пишу небольшую программу, где требуется использовать логин и пасс от сервиса. Я планирую просто положить логин и пасс в тхт-файл, а уже из него забирать это в основной код программы, где происходит логин. Как мне в этом случае передать логин и пароль в качестве переменных в .py-файл? На ум пришло только открывать тхт-файл через with open и забирать оттуда логин и пароль, а потом подставлять их индексом в программу. Но должно быть менее уебанское решение?
491 2002974
>>2002875
Добра.
492 2002989
>>1999504
Попробуй fastapi
493 2002994
>>2002015
Нахуй ты их купил? Я понимаю еще лутца( и то идиотизм), все книги надо пролистывать(конкретно лутца,т.к. там душная книга но много инфы, увидел то что не знаешь гуглишь для лучшего объяснения), единственную которую можно читануть если 0 - укус питона.
494 2003052
Не могу разобраться с переносом результата функции в другой компонент.
Допустим, у меня есть файл example1.py в котором я выписываю определение функции с еще кое-какими данными и возвращаю ее результат (return result), в result лежит список.
Далее, я хочу задействовать этот список из result в функции из другого файла - example2.py. Например хочу превратить этот result в стрингу и конкатенировать ее с чем-нибудь еще или сделать из нее сет и так далее.

from example1 import func1

def funktsia2():


И вот тут я завис.
495 2003053
>>2001403
Это норма, это развитие ютуба и общего поля подачи информации, твои деды были вынуждены читать очень нудные книги, ковырять платы своими крабулями, писать какую-то мутнейшую залупу. Потом был период когда задрот-индус просто 2 часа кодил с невероятной скоростью называя это мануалом. А теперь найти полноценные обучающие видео, с пошаговостью, с источниками, с конкретными примерами применения, с объяснением математики если она используется - очень просто и этого добра навалом. Сейчас курсы гарвардов и МИТов уже очень хорошо сделаны(и бесплатны, только если хочешь диплом бумажный купить надо платить), есть всякие сайты типа бриллианс для совсем уж детей(но неплохо по ним изучать косвенную хуйню типа логики, начальной робототехники или инженерии), есть кодеварс где ты натурально качаешь своего эльфа 80го уровня и пиздишься с другими эльфами качая его за очки полученные решением микрозаданий на своем языке, и можно посмотреть у представителей какого языка самый длинный хуй, клан джавы накидал клану сиплюсов ололо, а завтра все поменяется, мы будем отомщены.
Я не представляю зачем современные люди вообще покупают курсы за деньги, это просто ебланство(ну и лень, и отмазы, и тупость, и непонимание принципов обучения и что нужно работодателю)
Capture4.PNG11 Кб, 1009x172
496 2003054
Халп, позязя.
Есть пикрил. Нужно подставлять значения из списка без комы в конце. Как эту ебучую кому убрать?
В списке - куча datetime по которым нужно отдельно выгружать данные, потому и цикл.
497 2003059
>>2003054
Уже нашел.
.replace(',', '')
498 2003238
>>2001757
да, если сможешь сперва адаптировать чужой код то это нормально.
потом придрочишся и уже сможешь писать свой.
а так в программировании юзают чужой код постоянно.
Собственно почему один из главных скиллов кодера это писать понятный другим код - потому что код пишут один раз, а читают дохуя раз и дохуя людей.
499 2003277
Что происходит, когда к условному веб-приложению на Flask'е (или на чём-нибудь другом), задеплоенному через какой-нибудь Gunicorn, прилетает запрос от нового пользователя - получается, сервер создаёт в памяти дубликат этого приложения и, как бы, несколько пайтоновских интерпретаторов начинают работать параллельно? Или как это устроено?
И есть ли в этом вопросе отличия между WSGI и ASGI серверами/фреймворками?
500 2003401
>>2002015
Эрик Мэтиз — то, что нужно, хорошая книжка. А вообще, раз уж у тебя 2 книги, то обе и читай, в чём проблема-то?
Screenshot 2021-04-21 at 19.48.58.png14 Кб, 616x152
501 2003643
Тучик, какого хуя?
502 2003690
>>2003643
True == True
хули ты хотел?
503 2003693
>>2003690
(мужик and пидор) == (баба and пидор)

Схуяли это True?
Screenshot 2021-04-21 at 20.34.49.png19 Кб, 388x270
504 2003696
Да. Странная логика
505 2003784
Пасаны, а это нормально делать с threading:
for thread in threads:
....thread.start()
for thread in threads:
....thread.join()

Тралов получается в районе 30 каждый просто делает апи звонок на статус.
506 2003806
>>2003784
Через ThreadPoolExecutor красиивее, а вообще лучше учи asyncio
507 2003810
>>2003696
Ну для того, кто даже логику первого порядка освоить не смог, конечно странная
508 2003813
>>2003277
Gunicorn создает указанное количество дубликатов при запуске и они работают вместе сразу. Дальше запросы балансируются между ними nginx'ом, например. asgi создает на запрос отдельную асинхронную корутину
509 2003819
Где можно понятно почитать про еблю с джейсоном, как вызывать через урл, как печатать и сравнивать нужные строки, обязательно ли это ебошить всегда через дикшинари, почему формат типа a = requests.get(url).json() и дальше я делаю a['заметки о залупах']. Типа я вроде понимаю что джейсон скорее всего в формате дикшинари и есть, ключи и вальи, но бля, делал проект, натыкал как-то и сам не понял нихрена.
510 2003847
>>2003052
Как-то так. А что у тебя не работает?
511 2003867
Сообщаю, что спиздили high performance python второе издание, там есть экономия на спичках, мультипроцессинг, очереди, асинхронщина и всякие кулстори из жизни.
513 2003922
>>2003819

>обязательно ли это ебошить всегда через дикшинари



Если пользуешься встроенным json декодером из модуля requests, то да - это то, что он возвращает. Хотя, строго говоря, он может вернуть список словарей, а не один словарь. Попробуй посмотреть, например, на результат requests.get('https://api.github.com/events').json()
514 2004053
>>1999127
Посмотри на ютубе видосики про SOLID на любом языке. Мне помогает.
515 2004054
>>1999144
А можешь ссылку на какой-нибудь проект на гитхабе скинуть? Чтобы там интерфейсы были.
516 2004147
>>2003813
Понял.
А вне Gunicorn'а это приблизительно так же выглядит? Или какие-то другие механизмы?
517 2004456
Напишите пожалуйста эту "эквивалентную реализацию через getitem". А то я не могу понять как бы она работала, не смотря на объяснение.
Screenshot from 2021-04-23 02-19-40.png46 Кб, 491x338
518 2005127
>>2004456
Видимо имеется в виду мимикрия под list.
519 2005181
>>2005127
Круто, спасибо.
Тред утонул или удален.
Это копия, сохраненная 4 июня 2021 года.

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

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