Этого треда уже нет.
Это копия, сохраненная 8 сентября 2020 года.

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

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

Предыдущий: >>1665888 (OP)
Литература:
Автоматизация рутинных задач ч.2 - https://anonymousfiles.io/3CBCoy1o/ <-- тут только одна книжка. Кто может, залейте её на ЯД к остальным.
Ещё книжки: 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/aaNRDPe2xXh2
2 1676600
>>76587 (OP)

Возможно актуально
>>1674111 →

>Аноны, стоит ли объединить все наши репы с книгами в одну большую и живую?

3 1676709
Какие есть альтернативы formencode ? Что нибудь, что нормально поддерживается.
4 1676713
>>76709
pydantic, marshmallow
?
5 1676720
Прочитал про asynс и тут выясняется, что теперь все библиотеки требуется переписать на событийный цикл. И большая часть их не переписана.
В том числе kivy.

Ну нахуя столько хайпа? Какие проблемы синхронизации убирает async ?

рандомному двачеру не верите, так хоть Хабр почитайте
https://habr.com/ru/company/hh/blog/280892/
6 1676738
>>76720
асинхронность - не панацея, если ты не знаешь зачем она конкретно тебе нужна, то она тебе не нужна
7 1676740
>>76720

> asynс


> kivy.


> Ну нахуя столько хайпа?


> торнадо


Чел ты вообще понимаешь о чем пишешь?
8 1676746
>>76720

>Какие проблемы синхронизации убирает async ?


Нет такой проблемы как thread-unsafe, переключение потоков идёт в заранее известный момент времени.

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

>рандомному двачеру не верите, так хоть Хабр почитайте


Автор путается в понятиях. Асинхронность в питоне ровным счётом не про callback-hell. И они переписывали на java, которая ориентирована на многопоточность. Там автор скорее рассуждает, что многопоточность там хорошая и можно от неё не отказываться.
9 1676751
>>76738
Тут в треде переодически пишут что это нербходимый навык мидла
10 1676753
>>76746
Посыл статьи таков, что можно было бы переписать на питоне с тредами и стало бы заебись. Gil не считается заметной проблемой
11 1676756
>>76751
Все правильно пишут, мидл должен понимать где её применять.
12 1676759
>>76756
Ну и где, если приложение с < 500 коннектов вроде бы не выигрывает?
13 1676761
>>76759
асинхронность и многопоточность это не противоположные вещи, во-первых
https://discuss.python.org/t/what-are-the-advantages-of-asyncio-over-threads/2112/6 , во-вторых
14 1676763
>>76759
Чел мне лень разбирать их говнопример, могу тебе сказать что там был торнадо и во вторых с помощью async await легко реализовать PubSub вебсокет например.
15 1676769
>>76753
Нет так такого посыла, автор смотрел исключительно на треды в java, питон там вообще был не при деле. Просто на питоне был исходный код, который они портировали, чтобы весь код был на java.

На питоне треды вообще смысла не имеют, только в контексте, они выигрыша не дают. Но их можно использовать, чтобы портировать какой-то старый код в тот же асинкио.
16 1676783
Всем привет, буду благодарен.
stackoverflow.com/questions/61599310/pytelebot-schedule-send-msg-at-certain-time
17 1676802
>>76783
у тебя твоя функция job принимает аргумент message, ты передаешь функцию job какой-то хуйне чтобы она эту функцию вызвала, но откуда взять message ты ей не сказал

питон тебе пишет
Бля, в метод job не был передан аргумент message

я хз что ты сделать хочешь, но крч проблема вот такая
18 1676816
>>76802
Это я понял, спасибо
19 1676887
Есть кто-нибудь кто готов будет ревьюить мой говнокод (django), в замен могу помогать с рутиными задачами.
20 1676892
>>76887
Что умеешь?
21 1676897
>>76892
По специальности дата-сатанист стек соответсвующий, параллельно могу в автоматизиацию разных рутинных задачек (агрегация, рассылка, внедрение моделек в прод), парсинг разной сложности, синтаксический анализ. Веб пока как хобби (пилю интернет магазин для знакомых).
thumb6765e62082f82682c64e0e952e5[1].JPG36 Кб, 676x451
22 1676951
23 1677011
>>76897
Одменку для рассылочки через ВК бота осилишь написать?
Можно на основе фласка/джанги.
sage 24 1677058
>>76769
Ну а я прочитал именно так.
В конце концов, программисты десятилетиями использовали треды. Откуда эта мода на асинхронность во всех языках одновременно примерно в 2014-2017? Даже в 1с анонсированы асинки буквально на днях.
Все решили написать nginx? Так nginx давно написан.

Мне нужно практичное объяснение феномена
25 1677076
>>77058
Просто тренды. Раньшше был ООП, потом функциональщина, теперь это.
26 1677095
>>77011
Да, там вроде API очень удобное у них есть, пиши куда стучаться.
27 1677244
>>77095
Насчёт удобства API я хуй знает, но писать сюда:
homme.le.tQm/ranquilleANUSy~VrandexPUNCTUMbtUry
28 1677271
>>76897
Бро, подскажи что учить и как вкатываться в дата-саенс?
Сам я интернет-маркетолог года 3 как, могу в PBI (dax и m), sql на норм уровне, основы статистики. Питон на уровне выгрузки данных из апишек систем веб-аналитики/веба.
Пытаюсь подступиться к глубокому анализу данных (решаю задачки с pandas) и машинному обучению, но не знаю с чего начать. Лин.алгебра? Или погрузиться нормально в питон? Или все параллельно изучать?
Заранее большое спасибо!
29 1677291
Аноны, дайте список того, что нужно знать и уметь для изучения машоба и комп. зрения. Сейчас дочитал главу про системное программирование у Лутца и задумался: нужно ли оно мне? (Стандартную либу всю проштудировал). Всякого рода офисную хуйню, ботов для телеги и парсеры писать не намерен, мне нужен именно машоб и зрение. Что делать?
30 1677343
>>77291

>Что делать?


Начни с получения вышки по математике.

Или ты думал, что можно просто написать:
from data_science import ML
ai = ML.train()
ai.enable_vision()
И тебя сразу возьмут на 300к в наносекунду?

Наивная буратина, иди в толока тред, там тебе всё подскажут.
31 1677354
>>77343

>Или ты думал, что можно просто написать:


>from data_science import ML


>ai = ML.train()


>ai.enable_vision()


>И тебя сразу возьмут на 300к в наносекунду?


на 300к вряд ли, а на килобакс - вполне

мимо
32 1677385
>>77343
Ничего я не думал и 300к мне не нужно. Изучать буду для себя ибо есть идея для стартапа и лучшей реализации кроме как на перечисленом мной я не нашёл.
33 1677387
>>77385

>есть идея для стартапа


)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
34 1677390
>>77387
По сабжу сказать нечего?
35 1677395
>>77390

>иди в толока тред, там тебе всё подскажут


У тебя память как у золотой рыбки.
36 1677397
>>77395
Какая толока? При чём здесь "буратина"? Каким хуем моя память относится к сабжу?
37 1677400
>>77397
Этот стартапер порвался, уносите.
38 1677401
>>77400
Вот и поговорили.
39 1677425
>>76756

>Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4



Когда это говно из шапки уберете? просто ебалайка и потерянное время.
40 1677444
>>77076
я ебал такие тренды.
однако и ООП и функциональщина обусловлены конкретными проблемами и, как минимум, после спадения хайпа, умеренно обогатили программирование нужными концепциями .
с асинком не очень понятно.

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

а как в дотнете? мне тут рассказывали что в дотнете есть пул тредов и таск не обязан создавать тред, но может и создать.
41 1677512
>>77291
google %topic% roadmap 2020
42 1677518
>>77512
Годно, спасибо.
43 1677526
>>77444
мы не понимаем, что ты хочешь спросить. в C# тоже есть async/await. Это нужно при большом количестве запросов на ожидание IO, тысяча таких ожиданий дешевле по памяти и проще в синхронизации чем несколько потоков.

Можно ли не юзать async/await а заебашить через TaskQueue? Да, можно, собственно async/await это обертка над такой очередью EventLoop.

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

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

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

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

https://stackoverflow.com/questions/48020593/python-what-are-the-advantages-of-async-over-threads
https://medium.com/@jasongoldstein/im-to-stupid-for-asyncio-ff74809cc84d
https://hackernoon.com/threaded-asynchronous-magic-and-how-to-wield-it-bba9ed602c32

В своей работе встретил проблему, когда пришлось перейти на асинхронный фреймворк. Можно ли было решить задачу иначе? Да. Дало бы это профит? Хз.
44 1677607
>>77526

>мы не понимаем, что ты хочешь спросить


1. в чем реальная выгода async/await помимо строчки резюме?
2. нет ли здесь грандиозного наебалова? Ведь тысячи одновременных запросов среднему бизнесу не достичь все равно. А библиотеки не такое большое число.
3. заменить видео с ретреспективой говнофреймворков и реализаций из шапки, на обучение async в современном стиле. Я такое виде просто не нашел. У всех ретроспектива ненужных подходов.
45 1677611
Не понимаю тех кто не понимает зачем нужен асинк. Не понимаете не используйте. Сядьте и напишите два сервера на асинках и на тредах протестируйте производительность и потребление ресурсов а тогда задавайте глупые вопросы. Тренды хуенды я ебу утята вы.
46 1677614
>>77291
На доске есть тред по машобу, а вообще тебе анон все верно сказал - без хороших знаний в математике у тебя нихуя не выйдет
47 1677625
>>77607

>1. в чем реальная выгода async/await помимо строчки резюме?


А ты хорошо умеешь в многопоточное программирование?

>>77607

> Ведь тысячи одновременных запросов среднему бизнесу не достичь все равно.


Для массовых веб-сервисов - реальное число.

>>77058

>Откуда эта мода на асинхронность во всех языках одновременно примерно в 2014-2017


Это проекция микросервисного похода проектирования на проектирование конкретного сервиса. Внутри задачи у тебя крутится много подзадач, взаимодействующих друг с другом.

async/await - наиболее читаемая и понятная форма. Хотя и есть споры, что может быть это не самый лучший подход, можно было лучше придумать.

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

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

Мне кажется, что сама идея использовать потоки для обхода блокировки порочна, это костыль. Не для этого потоки нужны. Потоки нужны именно для распараллеливания.
48 1677631
>>77607
1. не блокировать поток выполнения
2. нет, для того чтобы все встало раком достаточно N блокирующих запросов в N потоках, и это N обычно в районе 9 (число ядер на машине x 2 + 1)
3. если найдешь замени. тут тонкость в том, что те кто уже прогают обучалки не смотрят, а те кто смотрит не всегда выкупают что хорошо, что плохо
49 1677636
>>77625
все так, анон, про параллельность вопрос в общем случае мы говорим или про питон. Так-то async/await как тренд пошло из интепретируемых языков с около GIL проблемами

##
other = asyncio.create_task(api.get('/other'))
another = asyncio.create_task(api.get('/another'))

# запросы выполняются параллельно и latency на получение result меньше
# + await деблокирует тред и мы можем принять другой запрос

result = (await other) + (await another)

##
50 1677639
>>77611
вчера нюфаня, завтра сеньораня. Объясняя что-то ньюфагам ты:
1) прокачиваешь себя, объясняя базовые вещи, лишний раз повторяешь их и лучше начинаешь понимать
2) создаешь коммьюнити епта
но троллей кормить тоже не надо
51 1677667
>>77636

> про параллельность вопрос в общем случае мы говорим или про питон


Сейчас тут началось со статьи на хабре, >>76720 , а там на самом деле не про питон, а про java.

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

Для питона многопоточность заведомо неоправдана. Или процессы, или асинкио.

Но чисто архитектурно, потоки не такая плохая вещь и всё в итоге зависит от реализации машины. Машину МОЖНО реализовать довольно хорошо. На питоне этого не делали, но на некоторых других платформах делают.

Машина теоретически может переключать потоки оптимально. Всегда внутри есть планировщик (scheduler), который решает, на какой тред переключить исполнение. Если планировщик видит, что исполнение застопорилось на системном вызове, то он просто не будет переключать на эту задачу исполнение, пока вызов не разблокируется. Так и в asyncio, так можно делать и с тредами.

Никакой принципиальной разницы в этом. Треды возможно реализовать очень оптимально.
52 1677707
>>77611
но ведь из-за тебя мы страдаем!
какие-то пидоры понаписали асинков, а HH потом за вами вынужден разгребать!
53 1677723
>>77667
ничего не понял что ты сказал. Почему асинкио не оправдан в питоне? Предлагаешь как и раньше ебашить селекты?
54 1677734
>>77723
Я же сказал, что когда-то ебашил селекты, сейчас пользуюсь асинкио.

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

Я говорю, что сама технология тредов не такая уж тупиковая.
55 1677741
>>77734
асинхронность и многопоточность - это разные вещи, они не противоположны и не взаимоисключающие
56 1677750
>>77625

>А ты хорошо умеешь в многопоточное программирование?


внезапно, многие умеют отлично. потому что django использует mysql, а тот вообще-то не теряет данные внутри транзакций и лишь легонько блокирует sql внутри.

>А ты хорошо умеешь в многопоточное программирование?


Пиздешь. Их нет. Единицы стартапов долетают до 50 запросов в секунду. А сколько из них не долетит до результата из-за переусложнения?

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



В дельфи же пример в каталоге examples лежит 25 лет! И нормально было.
(хотя я не проверял лежит ли)

Кроме того, пугает объем книги по асинхронному дотнету. она реально большая и автор заявляет, что наконец-то он опишет все как надо, а не через призму устаревших подходов.
57 1677754
>>77667

>Для питона многопоточность заведомо неоправдана. Или процессы, или асинкио.


но ведь единственное, что нужно знать про GIL - просто забудь про GIL.
58 1677761
>>77741
Очень близкие на самом деле. Конкурентное исполнение нескольких потоков исполнения в одном процессе.
15740623050230.jpg6 Кб, 220x220
59 1677762
>>77750

> внезапно, многие умеют отлично. потому что django использует mysql, а тот вообще-то не теряет данные внутри транзакций и лишь легонько блокирует sql внутри.

60 1677766
>>77762
ну блядь нет проблемы с многопоточностью у стандартного питониста. пиши себе на джанго и http в принципе обрабатывается без проблем.
61 1677775
>>77750

>Кроме того, пугает объем книги по асинхронному дотнету


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

Подходы к проектированию многопоточных приложений тоже меняются, в сторону, общую с async/await.
62 1677780
>>77766
есть)))
63 1677781
Интересно, сколько из спорящих реально применяли всё это в серьезном проекте, а не в неблокирующем говнопарсере на три копейки.
64 1677785
>>77750
Когда мы говорим про многопоточность, подразумеваем модуль threading

https://docs.python.org/3/library/threading.html
65 1677786
>>77775
ну ладно.
вот задача из носа:
как архитектурно реализовать на питоне с помощью, например, aiohttp, серверное приложение загружающее все 16 ядер процессора ?
важно чтобы http был с защитой от ddos. Для защиты от ddos, предлагается использовать глобальный хеш ip клиентов с подсчетом запросов в секунду или любую другую глобальную структуру данных.
66 1677789
>>77781

> двач



> реально применяли

67 1677791
>>77781

> всё это


Что именно?

Попробуй без asyncio или threading сделать скрипт, слушающих два сокета одновременно. Да, select ещё вариант, но он не проще.

Это самые обычные задачи, особенно с учётом, что веб сейчас активно вебсокеты использует.
68 1677792
>>77785
а я просто даже в threading могу выбрать синхронизацию в mysql и отличненько сделать пресловутый говнопарсер.
69 1677797
>>77786
16 или больше процессов aiohttp, плюс какой-нибудь редис.
70 1677799
>>77786
никак, и асинх тут ни при чем
https://docs.python.org/3/library/multiprocessing.shared_memory.html
71 1677800
>>77792
Отдельно все слова понял, их комбинацию совсем не понял.
72 1677801
>>77792
бля мне кажется я тебя собесал
73 1677809
>>77799

>никак, и асинх тут ни при чем


очень плохо. придется пока отложить эту лабуду.
74 1677813
>>77801
точно нет.
ну и что ты разве не понял, что имел ввиду этот чел? ты его взял?
75 1677820
>>77799
погоди, ты предлагаешь байты из линейной памяти распаковывать-запаковывать? как мне натуральной с общим хешем или "текущим ведром" работать?
76 1677824
>>77813

> этот чел


я вас не различаю вы все аноны если ты про

>>77792
то нет, я не понял что он имеет в виду. Видимо какую-то муть с тем что в таблице mysql менять поле и везде чекать. Каким боком тут async не понятно.

нет, не взял. кмк не так страшно если чувак чего-то не знает, пусть даже важного, намного хуже когда человек выучил какую-то хуйню и теперь ее всем форсит
77 1677832
>>77820
https://stackoverflow.com/questions/6832554/multiprocessing-how-do-i-share-a-dict-among-multiple-processes
если ты спрашиваешь как в питоне это сделать чтобы все в одном месте то никак

если ты спрашиваешь как делают ирл, то сверху написали, отдельно 16 питонов и редис общий
78 1677836
>>77832

>отдельно 16 питонов и редис общий


пиздос кокой.

так это, получается, threading с перекладыванием примитивов в mysql примерно такого же уровня
15740623050230.jpg6 Кб, 220x220
79 1677842
80 1677845
>>77842
изначально тупым не поясняю
81 1677849
>>77845
ути какой умный двачеренок
изображение.png297 Кб, 400x267
sage 82 1677960
Есть кто вкатывался в жс фронтенд после python?

А то после python/django/flask/fastapi, жс выглядит не очень логично, понятно и читабельно. Имею ввиду не pure js, а фреймворк какой-нибудь вроде vue.

Какие рекомендации девелоперов с опытом?
83 1678075
Rate limit exceeded. User message: "Sorry, you have exceeded your sharing quota.
google drive

Никто не боролся? В настройках Апи не нашел, мб плохо искал
84 1678078
>>77960
А чем бэкенд не устроил? Просто не зашел?
85 1678081
>>78078
я другой анон, но тоже хочу освоить какой-нибудь vue.js плюсом к бекенду. Основные причины две: во-первых, лучше понимать, что и как происходит на фронте; во-вторых, иногда нужно просто сделать какую-нибудь страничку с двумя кнопками и напрягать фронтов просто нерационально.
86 1678086
>>78081
Я вон пока в Django пытаюсь, только вот тоже есть желание выучить азы JS, т.к. понимаю надобность этого. Перед Django выучил азы HTML и CSS, но там ничего сложно. Только вот с JS не знаю как быть, миллионы всяких VUE, Angular и т.д. Какой фреймворк JS актуален и желателен для Django бэкенда начинающего?
87 1678095
>>78086
я смотрю vue потому что он мне больше нравится, на продакшене react вроде
правда бек не на django
88 1678099
>>78095
Я вот думаю бэк на Django делать, только вот как ты подметил выше, хочется и фронт понимать, всяко лучше, нежели как макака смотреть на код почесывая голову. Если я правильно понял, последовательность должна быть такая: азы JS -> азы Vue, так?
89 1678106
Аноны, пытаюсь постингнуть дзен реста, но никак не пойму как правильно составить URL для регистрации/подтверждения регистрации/авторизации пользователя. Если назвать ресурс users, то на POST можно прицепить регистрацию, но вот другие методы нужны будут уже для выдачи данных.
В доках DRF авторизацию предлагают вообще поместить на 'api-token-auth/', но это чет вообще хуево выглядит.
Так а как в итоге правильно?
90 1678118
>>78099
ну в принципе если уже на python пишешь, то достаточно просто почитать на хабре про странности js и по дороге гуглить. Я залетал по книге majesty of Vue.js 2 в принципе все понятно, но я где-то половину осилил, потом не было времени, а ща впадлу прост
91 1678125
>>78106
как правильно в рест это отдельная дисциплина срачей. Обычно делают так
POST /login с телом {"name": ..., "password": ...} в ответ кука-хуюка ну разберешься
POST /logout сбрасывает куки-хуюки

Если делать POST /users то возникает вопрос, а что делать если ты уже залогинен? создавать нового пользователя? а если возвращать ошибку то какую? 403? 422?

Крч совет сделай как написано в туторе дрф
92 1678133
>>78125
Понятно, спасибо, анон
93 1678191
Пишу, активно используя "типизацию", но с ней код валится из-за циклических импортов.
Как с этим бороться?
Я бестолково ковыряю sys (modules и path), но ничего не получается. Можно импортить внутри методов, но '->' тогда не работает.
94 1678194
>>78191
Дженерики.
95 1678214
>>78191
можешь пример кода привести с таким циклическим импортом?
484685465.png122 Кб, 1295x544
96 1678246
>>76587 (OP)
Пара вопросов насчет графиков matplotlib:
У меня есть набор данных DATA, в котором несколько кортежей с данными, я хочу по ним построить набор графиков, по одному на каждый набор dataset:

x = some_function_to_populate_x()
for dataset in DATA:
____fig = plt.figure()
____ax1 = fig.add_subplot(111)
____for i, y in enumerate(dataset):
________ax1.plot(x, y, label=f"{i}")
plt.show()

То есть по итогу у меня должно получиться некоторое число (равное len(DATA)) отдельных графиков, на каждом из которых нарисованы кривые (в количестве len(dataset)) и каждая кривая подписана порядковым номером в легенде
НО: подписанным оказывается только самый последний график, он как бы "затирает" остальные. С хуя ли? (на пикриле пример с двумя графиками)
97 1678251
>>78246
а где сами подписи лежат? какая строчка их на картинки ставит?
pirat13.jpg120 Кб, 500x500
98 1678264
охохо, на торренты подвезли свеженький пучарм, вот и бубунта новенькая подкатила.
sage 99 1678272
>>78078
Устроил, жс лишним не будет.
100 1678280
>>78251
ax1.plot(x, y, label=f"Термины раздела {i}")
sage 101 1678285
>>78246
Попробуй поменять

>ax1.plot(x, y, label=f"{i}")


на

>partial(ax1.plot, x, y, label=f"{i}")()


чтобы состояние запоминалось в цикле.
Встречал похожую проблему в PyQt
102 1678288
>>77271
как вкатитьсяв интернет маркетолога хотяб? лохкун 40лвл из нижних нужников -заебался работать никем
103 1678296
>>78264
А смысл ждать на торрентах?
Берешь у китайца крек, а потом качаешь с оффсайта нужный редактор и устанавливаешь.
https://zhile.io/2018/08/25/jetbrains-license-server-crack.html
104 1678297
>>78285
Хм, запилил, но результат то же...

>>78246
И еще вот что: как "сгладить" (интерполировать) эти графики чтобы получились гладкие кривые? Microsoft Word блин в 2 щелчка это сделать может, а у меня с scipy.interpolate что-то не выходит нихрена (результат тот же, будто ничего и не было). Может это потому что данных по оси x мало? так ведь Word'у тоже много данных не нужно...
105 1678323
>>78296
Это я только сейчас узнал накатывая 2020.1
106 1678349
Потсоны, как бы вы реализовали протокол сообщения в клиент-серверной настольной игре? Проблема истекает из особенности сокетов и того что я хочу знать сколько реально клиентов подключено, следовательно клиент легко узнает о остановке сервера ввиду его молчания, сервер же не может знать доходять сообщения до клиента или нет. Тогда 2 варианта: клиент должен кидать репорт о получении или сервер должен вести учет входящих реквестов от клиента и если клиент долго молчит значит отключам его по таймауту. Ввиду того что впервые сталкиваюсь с клиент-серверной ебаниной вообще не ебу как наладить их общение. Должен ли клиент каждый раз реквестить снепшоты состояния игры а сервер отвечать, или сервер должен широковещать всем подключенным по "тикрейту". Хз, например окно свернуто и евентлуп игры может быть приостановлен в целях экономии ресурсов а значит и получение изменений от сервера - лишняя нагрузка ио и проц. в игре могут одновременно находиться и игроки и наблюдатели, наблюдателю со свернутым окном нахуй не надо обновляться Я склоняюсь к "ленивому" серверу, который отвечает только на реквесты не нагружает канал и проц своим циклом лишний раз, а тех кто долго молчит отключает нахуй по таймауту. Гуглится в основном ебанина о шутанах лагах тикрейтах и предсказании ходов игроков.
107 1678366
>>78349
Ты используешь какие сокеты, обычные, или вебсокеты? Я бы в любом случае на прикладном уровне советовал именно вебсокеты.

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

В норме ты должен на все сокеты высылать текущее состояние, актуальное для клиента, или просто рвать этот сокет, если с него нет активности. Потом, когда клиент восстановит активность, просто высылаешь ему пакет данных, достаточный для восстановления состояния.
sage 108 1678379
>>78297

>Хм, запилил, но результат то же...


Тогда еще можешь попробовать вызывать plt.show() прямо внутри цикла
image.png989 Кб, 1280x720
109 1678401
>>78191
Можно типизировать строкой. (Не SomeType а 'SomeType')
И повесить условие на импорт
if TYPE_CHECKING
Это надо делать вместе.
Пичарм это норм понимает.

Орал, как пикрил, когда наступил на это говно в первый раз.
110 1678474
Вот в Джанге у меня есть 2 разных валидатора для поля формы. Как сделать так, чтобы валидация была успешна, если любой из этих валидаторов дает положительный результат? (иными словами, соединить валидаторы логическим ИЛИ)
111 1678484
>>78474
сделать кастомный валидатор?
112 1678491
>>78401
А сделать typevar с bound?
image.png22 Кб, 694x315
113 1678556
Сап, питоны.
Только начал вникать в могущество и красоту языка Python. Как ни странно, на начальных этапах могут возникнуть некоторые проблемы. Так вот, почему после except else не выполняется, а сразу начинается новая итерация? На сколько я знаю, else не должен выполниться, если в теле except было бы continue.
114 1678582
>>78556
else выполняет только в случае если никаких исключений не было перехвачено
мб тебе нужно использовать try...finally
115 1678584
>>78556
else не выполниться если будет ошибка в int(a) выполнится except и цикл перейдет на другой круг
116 1678598
>>78214
ORM типа джанги.
В модели запросы делаю через QuryBuilder. QueryBuilder в конструкторе принимает класс модели.
PROFIT 1 (да можно локал импорт).
ForeignKey наследует от типа поля FieldType, для связи примает класс модели. В модели метод для обхода полей использует тайпчекинг по FieldType.
PROFIT 2 (тут разве что пересмотреть "архитектуру" с наследованием).
Далее MVC, представление содержит контроллер, контроллер реализует интерфейс нотификатора, нотификатор уведомляет модель через notify.
PROFIT 3.
И такого у меня сейчас дохуя.
117 1678639
Решил поебаться с питоновским typing
Встал вопрос: как определить входное значение как любое из возможных? К примеру:
def process_number(num: str or int) -> int: ...
Вот эта функция должна принимать в качестве аргумента строку ЛИБО целое число. Я написал это через оператор or, код таки выполняется но в таком случае теряется весь смысл typing, т.к. or возвращает конкретный результат (то бишь синглтон True) и тот же Пайчарм не выбрасывает ворнинги, если я внезапно передам в функцию скажем список
118 1678659
>>78639
typing.Union
screenshot.jpg57 Кб, 1275x612
119 1678704
Что он от меня хочет?
120 1678706
>>78704
Ну там же написано что именно not found.
Ты нахуя из исходников ставишь? там разве wheel нету?
121 1678709
>>78639
num: [str, int]
122 1678800
Тук тук
123 1678823
Понимаю что пишу не туда. Но возможно тут мне кто ответит.

Как хостинг относится к исходящему и входящему tor-трафику? Не могут ли меня забанить? Или же им пофиг совершенно? Нужно развернуть приложение которое делает запросы к сайту в доменной зоне onion + основной поток будет идти по сети tor. Использую aiohttp + aiohttp-socks, но это наверное неважно.
124 1678879
>>78823
Пофиг, тем более если хостинг американцкий
125 1678896
>>78823
ммм, брут или подобная хрень?
126 1678899
Добрый день. Небольшой вопрос по джанге и пермишенам в ней

Есть path 'user/<int: uid>' просматривать который может только юзер с правами Admin, т.е. обычный юзер не может просматривать инфу о всех пользователях, в том числе и о себе.
Мне необходимо сделать так, чтобы юзер с id например 5 мог просматривать информацию по ссылке user/5, но по прежнему не мог просматривать других юзеров.
Задача элементарная, но либо я плохо гуглю, либо совсем тупой.
Подкиньте мб какой полезный материал, что нибудь, что попадает конкретно под мою задачу. Заранее благодарю
127 1678900
>>78823
Всем похуй, но если придет писулька, то могут попросить.
suicide booth.jpg324 Кб, 1280x855
XML to TXT 128 1678915
Есть XML-файл на 10 ГБ, нужно каким-то образом извлечь из него информацию.
1. Запарсить целиком всякими домами и минидомами нельзя из-за размера
2. Всякие там изящные решения предлагаемые на StackO для very large XML files с обработкой дерева ветка за веткой и рекурсией тоже не помогают (скрипт работает вот уже 15 часов)

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

Пока что при "for line in f: " (где f = open(файл, "r") ) скрипт считывает успешно первые строки, но потом обсерается с MemoryError - я так понимаю, в XML-файле он не так четко дробит на строки как в .txt и он натыкается на какой-то серьезный шмат.
Вроде простая задача, но уже второй день и я тупо зашел в тупик
130 1678936
>>78933
именно это я уже пробовал
131 1678942
>>78915
я чет немного перегрелся и забыл про f.read(1), извиняюсь
132 1678962
>>78942
Ну кидай решение, может кому пригодится в будущем.
133 1678979
>>78962
у файла как у объекта в метод read() можно передавать количество знаков. Т.е. я передал скажем 10000 f.read(10000) и читаю файл кусками по 10 тыс. знаков
while True:
____piece = f.read(10000)
____[обработка и загрузка]

которые уже можно обрабатывать на лету перед загрузкой в другой файл
134 1678983
Нужна помощь по структуре проекта, посути есть 2 части, демон и веб морда.

Демон продьюсит данные в монгу,
Вебморда ее отображает.

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

Как это красиво организовать с точки зрения гит реп и папок?
Посути каждая часть будет собираться в свой докер и возможно деплоиться отдельно, но надо как-то общий модуль коннекта к базе подтягивать...
135 1678988
>>78899
Не помню как в Джанго делать премишены кастомные (мб Миксинами для class-based view), который будет будет проверять, чтобы пользователь имел админ.права или uid совпадало с его id
136 1678992
Аноны, подскажите курс или книгу, в конце которой у меня будет законченный проект какой-то.
изображение.png297 Кб, 400x267
137 1678994
Есть кто вкатывался в жс фронтенд после python?

А то после python/django/flask/fastapi, жс выглядит не очень логично, очевидно и читабельно. Имею ввиду не pure js, а фреймворк какой-нибудь вроде vue.

Какие рекомендации девелоперов с опытом?
138 1679003
>>78988
короче долго я ебся с этими пермишшенами, по итогу просто во вьюхе сравнил request.user.id с uid из url, если совпадают - идет респонс с необходимыми данными, если нет то выбиваю 403
139 1679030
>>78988

>или uid совпадало с его id


внезапно берешь и проверяешь

Админ права "из коробки" можно проверять в DRF, въебав IsAuthenticated во вьюху (или сериализатор... хз не помню) и подрехтовав файл settings
140 1679073
Поясните залетному, если мне нужен бекенд для мобильного приложения, я возьму Django Rest Framework и получу сразу админку сущностей, какой-нибудь импорт данных из экселя и тд ?
DRF такой же как Django с админской стороны?
141 1679104
>>79073
Он поверх джанги ставится лол
142 1679114
>>78983
Один из вариантов, простых, сделать просто один репозиторий, с каталогами mongo, web, deamon, в корне docker-compose.yml, который за эти три сервиса отвечает. В каждом каталоге уже свой Dockerfile, который за сборку сервиса отвечает.

Nginx можно или в отдельный контейнер, или вместе с вебмордой упаковать.

Но я не специалист в этом.
143 1679137
>>79114
в принципе так и сделал, только без mongo, монга через дефолтный имедж подымается
144 1679189
>>78915
тебе нужен потоковый парсер. Вроде как питоничьи либины этого не умеют. Посмотри доклады с Pycon Russia 2019, там чел рассказывал как они взяли Раст для парсинга XML через serde и как у них теперь всё парсится за секунды. Может тебе тоже подойдёт.
145 1679196
>>78915
Да на сях это закодируй. В таких больших говноиксемельках обычно просто очень много данных, а уровень вложенности низкий. Если тебе надо потом индексировать, то в реляционную базу с индексами перегоняй.
146 1679217
>>79073
У DRF нет админки, это просто доп фреймворк. Админка короче будет стандартная, джанговская.
147 1679302
>>79189
>>79196
Та все, аноны, спасибо, я уже напитонировал. На лету повставлял \n между строками данных, переливая файл в копию кусками по 10000 знаков, а потом перелил из копию во вторую копию уже построчно, выкидывая все ненужное, а значения интересных столбцов сохраняя просто с разделителем.

>В таких больших говноиксемельках обычно просто очень много данных


да, в данном случае - это и есть просто большая таблица
148 1679317
>>78915
Решал аналогичную задачу на Node.js
Но подход одинаковый даже на C
Открыть поток чтения, следить за буффером, получать профит
5cc380a52d5d5919935863.png11 Кб, 256x256
149 1679371
Анончик, доставь пожалуйста материалов на русском по AIOHTTP.
150 1679375
>>79317
вообще, это даже через sed решается однострочником:
sed -n -e '/DROP TABLE IF EXISTS `store`/,/UNLOCK TABLES/p' < bigdatabasedump.sql > one_table_dump.sql

надо конечно помучаться и подобрать метки
151 1679395
>>79371
русский для слабых
152 1679397
>>79395
Dvachuyu sir
153 1679398
>>79371
Может тебе еще и курсы на лопате принести?
maxresdefault.jpg86 Кб, 1280x720
154 1679413
>>79398
А чего вы такие злые?
155 1679419
>>79371
А че там доставлять? Документация простая, сама хуйня практически тот же фласк
156 1679424
>>79419
Не ну, курсики на русском нужны!
Я же не на уроке английского языка, чтобы пендоский изучать! ря
157 1679434
>>79371

>он не знает английского


1С лучше выучи
158 1679477
В vs code есть какой-нибудь аддон для остановки если какая-то переменная поменялась ? а в ПуЧарме?

просто это бывает удобно . вот в большом visual studio все есть https://devblogs.microsoft.com/visualstudio/break-when-value-changes-data-breakpoints-for-net-core-in-visual-studio-2019/
159 1679481
bugs.python.org/issue5654

Ясно. Пойду посру.
Не могли за 15 лет скопировать.
https://stackoverflow.com/questions/21339489/how-can-i-watch-for-changes-to-an-expression-in-the-perl-debugger
160 1679491
>>79481
>>79477
Так и не работай. Остальные программисты без этой хуиты обходятся. дебажат ф-циями и кусками кода, TDD и всё такое
161 1679535
>>79481
У меня всегда было впечатление, что эти дебаггеры скриптовые делают, потому что так надо, а в реале все просто хуячат принты.
162 1679552
>>79491
В этом мой секрет. Я всегда прихожу во всякое легаси, хуячу с размаху и добиваюсь результата!

Вы, конечно, можете поебстись, если времени дохуя.
163 1679573
>>79552
какой стек? какой срок?
164 1679599
Нихуя не понимаю. Делаю из кортежа список, хочу его отсортировать, получаю вывод 1. Делаю из этого списка опять кортеж, получаю вывод 2. Создаю сразу список и сортирую его, вывод совершенно другой. Какого хуя?

T = ('сс', 'аа', 'dd', 'bb')
tmp = list(T)
tmp.sort()
print(tmp)
Вывод 1: ['bb', 'dd', 'аа', 'сс']

T = tuple(tmp)
print(T)
Вывод 2: ('bb', 'dd', 'аа', 'сс')

a = ['cc', 'аа', 'dd', 'bb']
a.sort()
print(a)
Вывод 3: ['bb', 'cc', 'dd', 'аа']
Hilarious-cool-fry-face-from-futurana-meme-picture.jpg56 Кб, 600x480
165 1679624
>>79599
a = ['cc', 'аа', 'dd', 'bb']
a.sort()
print(a)
Вывод: ['bb', 'cc', 'dd', 'аа']

b = ['cc', 'fasd', 'avbsd', 'aa', 'dd', 'bb', 'gsv', 'ccc']
b.sort()
print(b)
Вывод: ['aa', 'avbsd', 'bb', 'cc', 'ccc', 'dd', 'fasd', 'gsv']

l =['abc' , 'cd' , 'xy' , 'ba' , 'dc']
l.sort()
print(l)
Вывод: ['abc', 'ba', 'cd', 'dc', 'xy']
166 1679638
>>78900
Можешь другим языком написать. А то я что-то не понял что за писулька
167 1679681
>>79599
>>79624
Не знаю, то ли ты дурачок, то ли кто-то кого-то затраллел, но там есть кирилличные символы, что и дает соответствующие результаты.
168 1679691
>>79681
Я уже понял. Действительно текст скопировался в виде кириллицы.
169 1679705
>>79481
я, кстати, вспомнил, что в перле отладчик просто ебово тормозил. так что, в принципе, брейкпоинтами можно как-нибудь перебиться.

Ладно, а как насчет Глубокой Инспекции в vs code ?
я просто хочу в local variables отфильтровать и поискать содержимое или название переменных, что тоже в некоторых случаях упрощает ковыряние в незнакомых фреймворках.

Есть такой аддон?
170 1679712
>>79638
Писулька - это Abuse.

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

Наркошоп задумал, дружок? Тебя все равно подельник спалит.
171 1680056
ААА блять.
Как с http.server получить url с якорем?
Он как-будто специально якорь режет.
172 1680064
>>80056
что значит получить url с сервера?
173 1680065
>>80056
Сервер не получает данные после якоря. Если нужно, высирай их через js специально
174 1680075
Хочу в го перекатиться. Или раст. Заебал питон уже. Стоит?
175 1680084
>>80075
Что на нем писать собрался? Кроме системного программирования ничего на ум не приходит, но там нужно постоянно юзать С. Для веба раст оверхед.
176 1680086
>>80084
Алсо недавно нужно было написать небольшой модуль для сервера который юзает функции ядра, думал написать на раст, но в итоге взял С, так как геморроя меньше.
177 1680128
>>80084
Веб - это не только круды.
178 1680129
>>80084

>оверхед


"Оверкилл" ты хотел сказать?
179 1680132
>>80129
Для работодателя да.
>>80128
И?
Снимок экрана от 2020-05-07 19-03-48.png88 Кб, 787x524
180 1680133
Разбираюсь с Django, Pythonanywhere и GitHub
Что за ошибка на пикрилейтед и как фиксить? Возникает в ответ на команду
pip3.6 install --user pythonanywhere


Вот что я делал:

>Чтобы опубликовать сайт на PythonAnywhere, нужно загрузить на PythonAnywhere твой код с Github и затем настроить PythonAnywhere так, чтобы он распознал твой код и запустил твоё веб-приложение. Существуют способы сделать это «вручную», но для PythonAnywhere есть программа-помощник, которая сделает это для тебя.


>pip3.6 install --user pythonanywhere

182 1680149
>>80075
А чего не scala? Можешь перекатываться куда хочешь, только вакансий на питон в десятки раз больше чем на го/раст/и прочую узкоточенную хрень.

Смысл заниматься тем что не востребовано на рынке.
183 1680167
>>80084
Го пытались делать как универсальный язык, но в итоге это язык для сетевых сервисов, та же ниша, что у node.js и асинхронного питона.

На Си такие вещи не понятно, как делать. В коробке для этого вообще ничего нет.

Го подкупает тем, что он компилируется, причём в один файл и легко под разные платформы собирать, быстрый. Но, статическая типизация добавляет массу проблем, обработка ошибок в стиле 90-х и т.п.
15854409439700.jpg234 Кб, 3000x2889
184 1680171
>>80167

>статическая типизация добавляет массу проблем


Да ладно тебе.
185 1680174
>>80167
Ну го еще норм, там гц есть, но все равно мало кто может позволить тащить его в прод. Даже чтобы писать на асинхронном питоне многие конторы сначала пишут свой фреймворк, а потом сам проект на нем.
186 1680179
>>80167

>На Си такие вещи не понятно, как делать. В коробке для этого вообще ничего нет.


Cython(some project on python)
187 1680200
Как максимально просто и без ебли запустить flask сервер на vps? Мне нахуй не всрался ни апач, ни расширяемость. Все, что требуется от сервера - принятие post запросов и ответ на них. С фласком будет взаимодействовать ровно одна функция. Все гайды либо описывают настройку для нескольких сайтов с миллионами страниц, либо рассчитаны на локалхост, который не адаптируешь под впс. Ос - центос, бубунта или дебиан. Pythonanywhere и прочие сервисы не подходят
188 1680228
>>80200

>Мне нахуй не всрался ни апач, ни расширяемость.


apache/nginx - без этого никак, базовый набор.
nginx + gunicorn, изи же. ⭐
190 1680257
аноны, помогите. Вкатываюсь в движ и запутался в IDE и прочем. настраивал интерпретаторы - и теперь получаю ошибку - что делать?как починить?
191 1680258
аноны, помогите. Вкатываюсь в движ и запутался в IDE и прочем. настраивал интерпретаторы - и теперь получаю ошибку - что делать?как починить?
192 1680271
>>80258
да прописывай сразу в path. хули там бороться с чужим кодом.
194 1680276
>>80257
>>80272
Точнее вот для джанги конкретно
https://code.visualstudio.com/docs/python/tutorial-django
195 1680279
>>76587 (OP)
Как установить параллельно 3 разных интерпретатора Питона (глобально)? 2.7 , 3.7 и 3.8? Чтобы все были доступны?
И если я буду юзать команду pip3 install (не из виртуального окружения), то для какого именно интерпретатора она будет работать? 3.7 или 3.8?
196 1680292
>>80279

>Как установить параллельно 3 разных интерпретатора Питона (глобально)? 2.7 , 3.7 и 3.8?


google: windows install multiple python versions
на линаксе проще.

>И если я буду юзать команду pip3 install (не из виртуального окружения), то для какого именно интерпретатора она будет работать? 3.7 или 3.8?


в линаксе должна быть выбрана 1 дефолтная версия питона.
соответственно для той версии и будет устанавливаться.

например:
python2.7 pip3 install django
python3.8 pip3 install django
197 1680299
Заебала реклама Яндекс.Практикума на курс Питон Аналиста. Сторонился всей этой дата саенс тусовки, потому что сам по себе я тупой и не могу в математику, модели, формулы, теории(разве что в теории, где моча съедает говно) и прочее. Но периодически встречаю мнение, что дата аналист это не про высшие матреии. Чекнул бесплатную первую часть, там какая-то детская ебанина с основами синтаксиса. Что думаете, стоит углубляться в это? Платить я конечно за их курс не буду(я ведь тупой = нищий), но спизженные курсы/книги и ютуб бы поглядел.
198 1680312
>>80228
Апач не нужен совсем, nginx прекрасно работает и без него. Какой функционал от апача ты собираешься использовать?

nginx даёт тебе работу со статикой, прокидывает трафик куда надо, умеет TSL, и всё другое.

Точную настройку не скажу, никогда flask не настраивал. По идее, достаточно просто flask + nginx. Возможно желательно ещё что-нибудь вроде supervisord иметь, чтобы контролировать количество инстарсов. Или, альтернативный вариант, поднимать через докер.

К фласку скорее всего ещё БД потребуется.
199 1680318
>>80299

>Заебала реклама Яндекс.Практикума на курс Питон Аналиста


хуевый ты аналитик, если не понял, что это не тебя выбрала реклама, а ты выбрал контекстную рекламу.
200 1680321
>>80312

> К фласку скорее всего ещё БД потребуется.


Потом потребуется брокер сообщений, мемкэшед, реплика для бд...
201 1680322
>>80318
Ага. А ещё я выбрал какую-то сомнительную it франшизу с заработком по 400к в месяц.
image.png74 Кб, 994x644
202 1680352
>>80228
Ладно, пошел страдать по этому гайду: https://www.digitalocean.com/community/tutorials/how-to-serve-flask-applications-with-gunicorn-and-nginx-on-ubuntu-18-04

И сразу же 2 вопроса:

1) Если не хочу использовать доменное имя, то вместо your_domain писать ip сервера или удалить всю строчку и оставить только listen 80?

2) Если не ставить ufw, то подключение к 5000 порту будет разрешено по дефолту?

>>80234
Там django, а мне нужен flask
203 1680392
>>80352

>Там django, а мне нужен flask


Суть там одна и та же.
image.png23 Кб, 1030x137
204 1680435
>>80352
>>80200
У СУКАпс, ну и пошли они нахуй тогда. Хотел снизить им нагрузку на сервер, не дергая его каждые 30 секунд, но они выбрали свой путь. Все вопросы снимаются, сервер больше не нужен, просто оберну основной цикл в while True.
205 1680442
>>80435
Сертефикат получается за минуту-две, тоже блядь проблема
206 1680444
Онлайн IDE, с джангой флаской и другими библиотеками.
https://repl.it/languages/python3

Может кому пригодится побаловаться.
207 1680447
>>80442
Для этого надо доменное имя покупать, потому что с бесплатного могут пидорнуть в любой момент, пусть идут нахуй.
208 1680449
>>80447

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


Берешь бесплатный в каком-нибудь гондурасе и всем похуй
209 1680450
>>80447

>Для этого надо доменное имя



>$1

image.png76 Кб, 1332x535
210 1680513
Делаю программу для удаления дубликатов файлов, там проверка идет по хеш-сумме по алгоритму блейк2б

Смысл в чем: надо было потестить и я сделал два одинаковых файла, но как будто в самой файловой системе лежит только один - а второй типа ссылка

Вопрос: это так и должно быть, что до первой модификации дубликата в системе это всего лишь ссылка? Система шинда, как несложно догадатца
211 1680516
>>80513
Потыкался методами os.path.islink и isfile - все как в моей голове - это файлы.

Полагаю проебался где-то в другом месте, так что временно отбой.
212 1680518
>>80516
Я всю ночь это ковыряю и понял что насрал в собственный код
Впрочем, как обычно
213 1680527
>>80518
Использовал бы нормальную IDE нормально было бы.
214 1680547
>>80171
статика НИНУЖНА
215 1680653
Привет, аноны! Я тестировщик
Пожалуйста, подкиньте задачи на написание автотестов, курсы уже освоил, синтаксис знаю. Нужны именно тренировочные задания с либами типа Selenium, регрессионным тестированием и т.п
216 1680667
>>80653
Давно питончик начал учить? Где-то работаешь еще или стремишься пока что?
217 1680674
Есть схема в jsonschema
{
__"type": "object",
__"minProperties": 1,
__"maxProperties": 1,
__"properties": {
____???
__}

Как описать опциональный объект внутри?
Мне заранее известно, что это может быть

"a": null
"b": [1, 2],
"c": null

Т.е. что-то одно может из этого прийти, как это можно описать?
218 1680679
>>80674

>Т.е. что-то одно может из этого прийти, как это можно описать?



Boolean?
219 1680761
>>80667
Учу где-то год
Работаю QA инженером, но пора бы питончиком пользоваться для автоматизации тестов
220 1680815
Какого хуя питон выебыватся. Есть проект на Джанге, в нем модуль products. И если во вьюхах я делаю так и все работает

>from .models import Products


то в другом файле такая же хуйня вызывает

>ImportError: attempted relative import with no known parent package

221 1680828
>>80815

>>ImportError: attempted relative import with no known parent package


Модуль или модель?
попробуй там вставить название своей папки перед точкой:
from dJaNgOpRoJeCt.models import Products

Без venv работаешь поди?
222 1680834
>>80761

>Работаю QA инженером


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

А по селениуму попробуй тестани то что сейчас тестируешь, и все.
223 1680836
Здравствуйте. Мой потолок это квадратики и круглишки в питоне, основные понятия типа функций, классов и объектов.
Для того, чтобы влиться,так сказать, в вашу сферу, что нужно учить?
Идти в какой то язык(например, питон) и смотреть, что можно с ним делать, и так постепенно изучать новое и новое.
ИЛИ же большую часть времени уделить comp science (Алгоритмы, базы данных, структуры , типы данных и прочее), не привязываясь к языку (книжки там на каждую тему немаленькие)
С одной стороны, если валить все силы в язык и опыт там, то быстрее приду к тому, что смогу быть полезным где-то, но с другой стороны, если я прочитаю все эти книжки умные(мб даже пойму), по идеи, я должен быть более ценным программистом?
В общем, помогите структурировать своё обучение, поделитесь опытом.
224 1680841
>>80828

>Модуль или модель?


Структура
products:
--models
--views
--tasks
Импортирую класс из модели, в этом же модуле. И в views это работает, а в tasks - нет. Правда вьюха дергается самой джангой, а таскс я пока так смотрю на работоспособность.

>from products.models import Products


В итоге получаю

>django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.


>Без venv работаешь поди?


С ним
225 1680844
>>80836

>Для того, чтобы влиться,так сказать, в вашу сферу, что нужно учить?


Основные понятия, легко и просто, с нескольких повторений запомнится:
https://www.w3schools.com/python/default.asp

> что смогу быть полезным где-то,


Ну ты сам не знаешь что хочешь.

>если я прочитаю все эти книжки умные(мб даже пойму), по идеи


От теории толку нет, забудется без практики.

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

>>django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.


https://stackoverflow.com/questions/34114427/django-upgrading-to-1-9-error-appregistrynotready-apps-arent-loaded-yet

Куча всего может быть, потыкай, тебе виднее обстановка.
227 1680859
>>80851
Видел уже, после этого еще десяток ошибок от джанги сыпется. Решил в итоге тем, что просто добавил вьюху, в которой вызываю нужный метод из таскс, чтобы потестить. Так работает нормально, правда непонятно, почему были пробелмы с импортом, если __init__.py в модуле с интересующими меня файлами есть
228 1681047
начал учиться программированию
229 1681055
начал учиться программированию
семья - о молодец, будешь 300к в наносекунду делать
также - целый день сидишь за компом постигая границы недостижимого сквозь горение ануса и корпуса ноута
семья - ты че целыми днями за компухтером сидишь? нет бы нормальным делом занялся и на работу бы пошел
230 1681059
Пытаюсь парсить csv с сайта с помощью pandas.read_csv. Вот код и вывод https://pastebin.com/Wwz09bsk
Бывает, что на сайте пустые файлы и мне выдает ошибку pd.read_csv. Я это исправил через try except. Но теперь мне выдает кучу пустых списков и Empty DataFrame.
Нужна выдача
[1000, 1775, 1775.1, 1000.1, 0, 90, 2019-01-17 00:00:00, 2019-01-17 23:59:59]
[325, 325.1, 325.2, 325.3, 0, 1, 2019-03-18 00:00:00, 2019-03-18 23:59:59] Жирным выделил, чтоб видно, что строки разные.
[325, 325.1, 325.2, 325.3, 0, 1, 2019-03-12 00:00:00, 2019-03-12 23:59:59]
Без слов Empty DataFrame; Columns:; Index: []. То есть только 3 строчки
Снимок экрана 2020-05-08 в 17.44.27.png1,2 Мб, 2880x1800
231 1681096
аноны как решить проблему с этим модулем?
image.png15 Кб, 380x284
232 1681177
Сап двач. Есть один класс Base, который в __init__ производит инициализацию своих параметров. Эта инициализация нужда вообще для всех подклассов этого класса, причем важно, чтобы пользователь ее даже изменить в подклассах не мог, а только добавить что-то свое.
Можно, конечно, просто заставить всех вызывать этот конструктор в подклассах, но это call super антипаттерн, а еще можно забыть его вызвать и ничего не будет работать.
Ныне я сделал как на пикче(https://pastebin.com/eKLn2sh6)(шаблонный метод __init__, который вызывает initialize, который переопределяют пользователи). Не надают ли мне за такое по лицу? даже PyCharm подсвечиват, что лучше инициализации перенести в __init__
233 1681179
>>81096
Это стандартная либа, ничего устанавливать не нужно.
234 1681267
>>81177
У тебя паттерн ради паттернов. Какой смысл в этом методе?
236 1681312
>>81291
Ещё раз спрашиваю какой в нем смысл?
237 1681351
>>81312
Есть конструктор у базового класса с действиями, которые нужно обязательно всегда делать для любого экземпляра классаподклассов, поскольку он абстрактный. В подклассах ОБЯЗАТЕЛЬНО требуется сделать то, что в конструкторе базового класса + инициализации для данного подкласса.
238 1681357
>>81177
Мне тоже не понятен смысл. Пользователю необходимо реализовывать initialize, это надо документировать. При этом если пользователь переопределит __init__, всё сломается.

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

В такой схеме надо подумать, может можно куда-нибудь в __new__ влезть или в метаклассы, и заставить класс принудительно вызывать такой метод, даже если __init__ переопределён.

Все эти извращения разумны, если ты фреймворк какой-нибудь делаешь. Если просто прикладной код, то ты что-то делаешь не так.
239 1681362
>>81357
Благодарю, совсем про метаклассы забыл.
Да, я васяню фреймворк для асинкио.
240 1681365
>>81351

>В подклассах ОБЯЗАТЕЛЬНО требуется сделать то, что в конструкторе базового класса + инициализации для данного подкласса.


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

Особенно непрозрачно разделение общего функционала на два метода, за обоими методами при этом пользователь должен следить и их реализовывать.
Снимок экрана 2020-05-08 в 19.40.41.png321 Кб, 2880x1800
241 1681377
народ как выделить себе в список только часто встречающиеся символы?
242 1681422
>>81377
Я бы использовал defaultdict, где в ключ добавляешь символ, а значение увеличивашь на 1 каждый раз когда встречаешь этот символ в строке.
243 1681462
>>81377
C o u n t e r
o
u
n
t
e
r
244 1681596
>>81059
Отмена вопроса. Я через pd.DataFrame делаю. Но появился новый вопрос. Вот тут:

data_sheet=pd.DataFrame(columns =["Ticker", 'open', 'close', 'high', 'low', 'value', 'volume', 'begin', 'end'])
for h in range(160000,370000+1, 5000):
url=f'https://iss.moex.com/iss/engines/futures/markets/options/\
securities/MX{h}BA0/candles.csv?from=\
2019-01-01&till=2020-01-01&interval=24&iss.meta=on'
data_sheet=data_sheet.append(pd.read_csv(url, sep=";", skiprows=2), ignore_index=True, sort=False)

Надо чтоб в поле "Ticker" подставлялось значение f"MX{h}BA0" в каждой строке. Сейчас у меня он NaN.
246 1681652
>>81177

>call super антипаттерн


Что, простите?

>можно забыть его вызвать и ничего не будет работать


Ну и нахуй таких программистов увольнять тогда.
247 1681654
>>81596
Если в цикле дописать
data_sheet['Ticker'][len(data_sheet['Ticker'])-1]=f'MX{h}BA0'
то часть заполняется. Но проблема в тех, где парсится более 1 строки и в последней строке.
Код https://pastebin.com/BXtEzCQ5
248 1681716
>>81654
Прикольный проект. На гитхаб залить не хочешь? Я бы ковырнул.
Касательно твоей проблемы - особо нихуя не понятно, нужно все смотреть чтобы понять контекст, воспроизвести и найти ошибку.
image.png658 Кб, 680x510
249 1681717
>>81716

>прикольный проект

250 1681723
>>81716
Не знаю чем гитхаб лучше пастебина, но ок, как залью кину ссылку.
251 1681726
>>81723
Я просто сначала не допер, думал там ещё есть кода.
Я уже ковыряю, пытаюсь причесать код для понятности.
Советуют вместо пандаса юзать модуль csv.
252 1681729
>>81726
Но у тебя тут таблички из сложных типов пандаса, видимо не стоит...
253 1681733
>>81723
Можешь объяснить эту строку: data_sheet['Ticker'][len(data_sheet['Ticker'])-1] = f'MX{h}BA0'
И да, если будешь писать чище - будет всем понятнее, включая тебя
254 1681750
>>81733
Помозговал - тут короче в таблицу залетает сразу пара строк, а прописываешь ты только в последнюю.

Нужно переписать логику и будет все хорошо.
255 1681756
>>81733
'Ticker' это столбец в который нужно писать откуда мы берем инфу например MX330000BA0. Цифры посередине меняются потом и другие части будут меняться, но пока только цифры. Мы обращаемся к столбцу Ticker, а чтоб понять в какую строку писать я выдумал конструкцию len(data_sheet['Ticker'])-1. Поскольку в цикле просто к низу присоединяются строки, то посчитав количество строк всего мы поймем где сейчас находимся. Минус 1, чтоб начинать с 0 позиции.
>>81750

> Нужно переписать логику и будет все хорошо.


Я пока ничего лучше измерения количества строк не придумал. Еще проблема с самой последней строкой. Поскольку там новые строки не добавляются идет перезапись дальше чем нужно. Например MX370000BA0370000 это последнее число в цикле, но в последнюю строку в тикер нужно писать MX360000BA0.
256 1681757
>>81756
Например MX370000BA0 это последнее число в цикле, но в последнюю строку в тикер нужно писать MX360000BA0. убрал \t370000 не знаю откуда это прилипло
257 1681771
>>81757
Очень душный этот датафрейм, ебал его рот.
Я иду ковырять свое говно, утомился.
258 1681776
>>81771
Есть такое. Вот придумал как убирать NaN из таблицы и заполнять следующим значением (которое ниже). https://pastebin.com/3a4nvuj1 Но проблема в том, что так можно убрать только если NaN бала в одной строке. Если будет две подряд такие, то уже не поможет. Может завтра кто поможет или сам догадаюсь.
259 1681789
>>81776
Ты какой-то хуйней занимаешься, но мне лень разбираться в этом pd.
На первый взгляд, что мешает воткнуть это в каждый результат csv_read, а потом уже делать append?
260 1681837
Хелп, мне нужно запустить функцию параллельно много раз, например 100, делаю

for i in range(100):
Process(target=func).start()

Но создается только 5 потоков, там какие-то лимиты или что, как обойти?
261 1681847
>>81837

>там какие-то лимиты или что

262 1681848
>>81837

>там какие-то лимиты или что


Каких-то ограничений питон не делает.

Может ты что-то не так написал, see Threading examples.
263 1681879
Чем вообще занимается дата аналист? Ну вот пройду я какой-нибудь курс, а дальше-то что?
264 1681906
>>81837
У тебя же процессы.
265 1681926
Как вмешаться в процесс присваивания значения атрибуту класса?
Вроде __setattr__ - то что надо, но он даже не вызывается в этом случае.
По-уебански, наверное, написал. Проблема такая: я при определении класса создаю в этом классе кучу статических атрибутов, и вот в эти атрибуты (это объекты моего еба-класса, они, если что, инициализируются и присваиваются сразу) хочу установить класс в котором эти объекты записываются в статические атрибуты.
266 1681934
>>81926
дескрипторы
267 1681977
Как сделать, чтоб после выполнения скрипта питон не возвращал управление bash?
Нужна возможность вводить команды.
268 1682180
>>81977
while True?
image.png1 Мб, 1000x667
269 1682184
Вечер добрый. Есть у кого нибудь описание API двача?
Да, да, обу всё расписал уже, ага. https://2ch.hk/api/хуй (М)
270 1682207
>>81789

> воткнуть это в каждый результат csv_read, а потом уже делать append?


Как это сделать? Результат csv_read каждый раз разный. Чаще всего пустой, бывает одна строка, бывает 10. Я не пойму как добавить значение в одну колонку в каждую не пустую строку. На сколько я понимаю прямо в функцию pd.csv_read добавить это нельзя.
271 1682208
>>82180
Нет, нужен интерактивный режим
272 1682217
>>82207
Во напердолил
https://pastebin.com/k64LARBt
вроде работает.
274 1682325
Знает кто максимальные ограничения pandas.DataFrame по количеству строк и колонок? Или там лимитов нет?
275 1682328
SSL: WRONG_VERSION_NUMBER

Как повиксить?
276 1682420
>>82269
Спасибо, няша!
277 1682576
Начал вкатываться. Где можно общаться с такими же вкатывальщиками чтобы не срать тут пока что тупыми вопросами?
image.png300 Кб, 342x422
278 1682725
питоны, норм книга?
279 1682740
>>82725
хз, почитай содержание, затрагиваются ли там темы которые тебя интересуют вообще.
280 1682787
>>82576
Можно создать чат в телеге и набирать вкатывальщиков чтоб друг-другу отвечать на вопросы
281 1682821
>>82787
Можно пользоваться google and some guides to понять если что-то непонятно.
282 1682842
Прошёл школьные задачи на пайтонтьюторе, параллельно прочитываю теорию.
И тут залез посмотреть на Ютуб, а что нужно знать вкатывальщикам, помимо Пайтона, фласка и джанго. И понеслось: работа с линуксом, гитхабом, понимание основ фронтенда. Знание, как работают сети. И ещё небольшой список разного.
Потратил часов 50 уже. И приходит понимание, что работа компьютера - это не просто магия, а что-то совсем пиздецовое. И за год учебы по вечерам не факт, что освоишь минимальный уровень.
283 1682852
>>82842

> И понеслось: работа с линуксом, гитхабом, понимание основ фронтенда


Несколько команд для консоли которыми будешь пользоваться постоянно и все. Фронтенд - на базовом уровне html/css/ и желательно js.

>Знание, как работают сети.


Какие-то простые вещи, хз что тут на практике может пригодится, несколько моментов разве что.
284 1682867
Чет мне после Сишечки сильно пригорает с питухона. Нахуй эти пердолки поделили обычные сраные массивы на словари, списки блять и сука последовательности? Я еще понимаю добавить к массивам ассоциативные массивы. Но вот это вот пердоленье сущностей... zalupa.items() блять но при этом enumerate(['zalupa','manda'])...Пиздос. Нахуя? Что они курили? Почему питухон такой кривой и уродливый?
изображение.png2 Мб, 1200x800
285 1682878
>>82867

>поделили обычные сраные массивы на


lists, tuples, sets, dictionary

Просто чтобы было, зачем еще) По факту в основном используются списки['list1', 'list2'] и словари{'key1' : 'value1'}

Ты бы жс посмотрел, синтаксис там

>кривой и уродливый



Но негодовать по этому поводу смысла нет, как есть так есть, привыкнется))
286 1682883
>>82867
Тебе знакомо понятие коллекции, более того они высокоуровневые.
Какое они имеют отношение к массивами в С?
287 1682889
>>82883
Он просто не осилил, вместо того чтобы 1 раз выучить, негодует что какая-то технология не похожа на ту к которой он привык.

https://www.w3schools.com/python/python_lists.asp
288 1682911
>>82325
Попробуй сам создать пару миллиардов строк и колонок, потом напиши
289 1683385
Интересно узнать есть ли у кого-то опыт заработка на блекхет коде? Вроде написания прог на заказ которые заведомо делают нелегальные вещи? Сколько с этого имеете? Как можно выйти на таких заказчиков?

Мимо не тов. майор
290 1683470
>>83385
Всякие большие спамилки-авторегалки делал. В принципе оплачивается неплохо, но не чтобы аж так.
Все деньги в малвари, а она на скрипатх не пишется, лол.
291 1683532
Привет, ребят. Помоги пожалуйста. До этого писал на винде и через гуглхром.драйвер, перешел на убунту, тут все совсем по другому почему то, с гуглхром драйвером не стал разбираться, решил писать через фокс, вопрос в чем, не могу добавить add.arguments в чем проблема не понимаю

import selenium
import time
import random
from selenium import webdriver
spisok_proxy = ('188.170.233.100:3128')
imena = ('Вика', 'Алена')
for j in range(5):
PROXY = spisok_proxy[j]
selenium.webdriver.firefox.options = webdriver.Firefox()
options.addArguments('--proxy-server%s%PROXY')
webdriver.get('https://www.selenium.dev/')


ошибка такая
Traceback (most recent call last):
File "/home/user/pojerct/skkkript.py", line 10, in <module>
options.addArguments('--proxy-server%s%PROXY')
NameError: name 'options' is not defined
292 1683549
>>83532
selenium.webdriver.firefox.options = webdriver.Firefox()
options.addArguments('--proxy-server%s%PROXY')

разницу сам видишь или носом потыкать?
spisok_proxy оо, бля, ну ты и.. хотя, не буду обзываться
293 1683551
>>83532
мб
selenium.webdriver.firefox.options.addArguments('--proxy-server%s%PROXY')
?
мимо жабамразь
294 1683553
Там по-моему безголово скопипащено и нахуеверчено без всякого понимания, так что бесполезно учить.
295 1683565
>>82867
Знакомо, мне так же от сишечки после голого ассемблера пригорало. Хотя, вот это zalupa.items() одновременно с enumerate(zalupa) - это рили косяк. Пиздуй-ка ты лучше к нам в раст. У раста хотя бы синтаксис прозрачный и очевидный.

Последовательности, это, считай, анонимные структуры. Когда тебе лень создавать структуру, но нужно завернуть данные разных типов в общий контейнер. Например ("zalupa", 5, 0.0001)
296 1683567
>>83565
items это к словарям, вместе с keys и values, а итерейтить можно любые итерабли, не вижу никакой избыточности.
297 1683572
>>83567
Дык, лажа в том, что итерейтишь ты внешней функцией, а не вызовом метода. Такая же лажа с len(zalupa).
298 1683576
>>83572
Релизовано методами, вызываются средствами языка.
Хочет сделать поддержку в своем классе - реализуешь нужные методы.
299 1683581
>>81716
Вот финальный вариант, если вдруг интересно.
https://github.com/Optionalyst/Option-price-parser
300 1683598
Блин, в общем есть у нас химическая формула в виде строки, состоящей из латинских букв, цифр и скобок (круглых и квадратных). Необходимо вывести число каждого из хим. элементов, входящих в эту формулу (в любом формате)

Пример:
find_atoms("K4[ON(SO3)2]2") -> [("K", 4), ("O", 14) ("N", 2), ("S", 4)]

Химический элемент канешн может состоять более чем из одной буквы, но в таком случае вторая буква будет маленькой строчной и это легко определяется
301 1683599
>>83598
Ну ты поясни тогда, как эти скобки раскрываются.
В идеале надо посимвольно читать и токенизировать, а потом вторым проходом считать.
302 1683610
Работал через гугл хром не было проблем, поставил хромиум, пытаюсь сделать через него, ошибка файл манифеста не найден. В чем проблема?
303 1683614
>>83599
Все что в скобках - помножается на число стоящее после скобок Сдается мне что надо запарсить сначала все скобки (они могут быть как квадратными так и круглыми - ни на что не влияет) - с помощью регулярок скорее всего, но я не шарю в них - затем парсить все что внутри скобок при помощи этой же рекурсивной функции, в конечном итоге функция должна вернуть словарь с химическими элементами (ключи) и числом их вхождений в скобки (значения, в конце также помноженные на число после скобок)
304 1683641
Как указать Джанге путь к жс-овскому скрипту?

<script src="static/scripts/main.js"></script>
написал, как и было в примере, но он не может найти эту директорию, засунул просто один файл main.js в ту же папку что и template, но джанга падла переходит по src="main.js" как по url-ссылке. Как ему указать путь?
305 1683644
>>83614
Ну как-то так. https://ideone.com/n98WEs
Но мне не нравится, плохо зделано тупо.
306 1683657
двачеры, помогите нубы, с кодом никогда связан не был, просто решаю 1 задачу для учебного процесса
сейчас есть прога:
в ней есть список фраз на английском языке
словарь в котором у английских фраз есть русский аналог
команда которая выдает случайную фразу на русском
кнопка Далее которая выдает следующую случайную фразу на русском
кнопка Проверить которая (тут начинается проблема) должна показывать английский вариант из словаря
вопрос - что вписать чтобы программа смотрела на ту случайную русскую фразу, которую сама нарандомила и выдавала ее английский вариант?

Всем заранее спасибо
307 1683664
>>83657

>помогите нубы


Оговорка по Фрейду.
308 1683665
Хм, у меня час не получалось запилить ajax-форму в django, несмотря на туториал от medium. А после просмотра 10минутного видоса от индуса все заработало...
309 1683666
>>83664
print ("sorry dva4")
извините я только вкатываюсь в ваш погромистский юмор
310 1683667
>>83644
Красивее и не сделаешь. Более правильные варианты значительно менее читаемые и нужны для синтетических примеров, когда формулы могут быть очень большими, на миллионы элементов итоговых - это не про реальные формулы, конечно.
311 1683673
>>83644
>>83598
Если иначе подходить, то можно идти справа налево. Держим стек со значениями текущего мультипликатора.

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

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

Если встречаем открывающую скобку, то убираем последний элемент из стека.

Я начал писать код, но получается хуже, чем пример с тупой заменой. Лень писать. Но это рекурсивный алгоритм без рекурсии, вместо рекурсии стек.
312 1683674
>>83657
Хрен знает в каком виде у тебя там этот "словарь"
313 1683678
>>83673
Интересно, я не подумал про справа-налево.
Потом попробую.
314 1683680
>>83674
Есть список («привет», собака»)
Словарь выглядиь примерно d(“hello”:”привет», «dog”:”собака»)
Есть команда выдающая случайное слово из списка
Нужно понять как сделать чтобы если к нарандомленному слову из списка давало ключи из словаря и выглядело это так
команда для рандома
Привет
пользователь пишет проверить
*программа находит в словаре ключ к Привет и пишет «hello”
315 1683682
>>83680
Сразу достаешь ключ и его значение, спрашиваешь и сверяешь.
Зачем ещё что-то искать, лол.
sage 316 1683768
>>76720
Посоны, полностью удовлетворен (переводной, разумеется) статьей с Хабра.
https://habr.com/ru/post/337420/
Ставьте ее в шапку, а видео старперское - обоссать
Безымянный.png48 Кб, 1002x429
317 1683771
>>83682
вот тут-то и оно. не понимаю как это сделать
Вот случай с1 это когда пользователь пишет Проверка. В этот момент программа должна выдавать ключ из словаря к тому что было нарандомлено после строки random.choice
вот я и хз как это делать
Безымянный.png48 Кб, 1002x429
318 1683773
>>83682
вот тут-то и оно. не понимаю как это сделать
Вот случай с1 это когда пользователь пишет Проверка. В этот момент программа должна выдавать ключ из словаря к тому что было нарандомлено после строки random.choice
вот я и хз как это делать
319 1683799
>>83532

>spisok_proxy


>imena


ммм
320 1683850
>>83773
Ты что-то такое нахуевертил. Просто же делается https://ideone.com/L1YyWF
321 1683855
>>83850
ооо хоть чето понятное
спасибо большое, попробую сегодня
322 1683872
>>83850
работает! От души душевно в душу
323 1684368
Как узнать все комбинации, возможные при броске N одинаковых кубиков, у каждого из которых X граней? (на гранях цифры от 1 до X)

Казалось что просто, но на деле херня какая-то. itertools.permutations, combinations и combinations_with_replacement это не то, они не учитывают все возможные случаи. Хотя по факту это весьма "тупой" перебор. Если у нас есть 3 кубика по 6 граней в каждом, то там 666=216 комбинаций, надо просто скурпулезно перебрать все, но вот как это сделать? В данном случае нам нужно 3 вложенных цикла for, но что делать с произвольным случаем? Число этих циклов может быть любым (зависит от числа кубиков N). И как же блин это сделать?
324 1684369
>>84368

>6x6x6=216


Конечно же
быстрофикс
325 1684413
>>84368
list(itertools.product(list(range(1, 7)), repeat=3))
326 1684416
>>84413
Мощная херня. Интересно что она под капотом делает
327 1684449
>>84416
По циклу запускает перебор. Типа
for x in range(1, 7):
____for y in range(1, 7):
________for z in range(1, 7):
Количество циклов и возвращаемый кортеж равен длинне repeat=3. И соединяет в список
328 1684454
>>84449
Это я понял. Я сам хотел такое же сделать своими силами, вопрос в том как он делает переменное число циклов?
330 1684686
Подскажите. Надо хранить кучу переменных Имя-Значение (Вася 10) и менять только значения. Каким способом лучше всего это сделать?
331 1684712
>>84686
Dictionaries
kucha = {
__"vasia": 10,
__"vasia1": 110,
__"vasia9": "vasiaaaaaaaa"
}

https://www.w3schools.com/python/python_dictionaries.asp
332 1684809
>>84686
dataclasses
photo2019-09-2309-28-56.jpg139 Кб, 949x1280
333 1684918
Смотрите какая задача:
есть веб-приложение на php и yii. Разумеется, у него в базе свои методы работы и описание схемы. И им занимаются другие погроммисты. Но сделано это, как обычно, хуево,

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

Теорией бд легко владею . Сейчас по сути я поддерживаю эти таблицы в голом sql и это заебывает.
334 1684975
Аноны, надо пройтись по словарю и заменить некоторые его ключи (при сохранении значений канешн)
При прогоне for key in my_dict: key=key.replace("a", "b") по факту нихрена не меняется (потому что key это immutable строка и ключу в словаре глубоко похуй, что за операции я мучу с переменной key)
Неужели нет другого способа кроме как тупой проход по всем my_dict.values() и копировании их в новый словарь?
335 1684983
>>84975
Посмотри название ключей, повторения не допускаются
Их просто срежет как с сетами
вроде как, хуй знает кароч
336 1684992
>>84918
Можно и достаточно просто.
Screenshot20200512141920.png15 Кб, 609x126
337 1684995
Что этой хуйне не нравится? Почему я не могу так прервать цикл?
338 1684997
>>84995
У тебя в строке, где userinput спрашивается, скобка лишняя.
339 1685030
>>84992
мне нужны ключевые слова. Какие именно механизмы в django позволят это делать ? Что именно почитать?
я же не могу по книгам для вкатывальщиков делать тупые приложения. Мне нужен результат.
340 1685087
>>84975
dict[key2] = dict.pop(key)
341 1685105
>>84918
Мне кажется, что скорее нет. Джанго сильно привязан к своим моделям, админка уж точно. Соответственно чужие таблицы ты так просто не привяжешь, придётся подгадывать под них модели (это возможно).

В Джанго ты админку более-менее быстро можешь сконфигурировать, чтобы добавлять-редактировать элементы, связанные с другими элементами по ключам, но не сильно более того.
342 1685107
>>85030
Книги для вкатывальщиков в любом случае придётся глянуть. Хотя бы на уровне демо-приложения Джарго, которое голосовалка, и главы в книге про админку и модели.
343 1685171
>>85105
Погоди, но мне не обязательно портить чужую бд таблицами , я могу отдельную выделить только для джанги, а вот управлять хотелось бы конкретным набором таблиц в другой базе.

какой план?
344 1685175
>>85107

> Хотя бы на уровне демо-приложения Джарго, которое голосовалка


вот тут я уже вижу оверхед. Ведь у меня приложение из нуля страниц!
345 1685193
>>85105

>Джанго сильно привязан к своим моделям


В чем проблема описать модели на основе существующей базы?
346 1685212
>>85193
мне кажется джанга их похерит потом. Нет?
347 1685218
>>84918

>Можно ли на джанге сляпать админку чужих таблиц ?


>Мне просто нужен редактор связанных таблиц и специфические массовые операции над ними.



phpmyadmin?
348 1685228
>>85212
Как она их похерит если ты не будешь накатывать на них миграции?
349 1685242
Для питона есть что-то хоть примерно настолько же удобное и функциональное, как вижуал студио для шарпа/крестов? Пайчарм какая-то параша, если честно.
350 1685248
>>85242

> как вижуал студио для шарпа/крестов?


Если тебе нравится это говно, то и пиши на нем, питон там поддерживается.
351 1685256
>>85242

юпитер лаб или юпитер нотебук
352 1685263
>>85242
Как бы vscode для пайтона неплохой вариант, плагины некоторые поставить и ок.
Если полегче что-то, то atom с плагинами.
353 1685277
А че разве функция sorted возвращает список а не генератор? Лол, всегда думал иначе
354 1685281
>>84918
Админка в Джангу встроена по умолчанию
Надо лишь предоставить ей собственно модели (таблицы) с которыми бэк будет работать
356 1685301
>>85277
Для сортирования всё равно придется всю итераблю всосать, так что нет смысла возвращать генератор.
357 1685399
А стандартный unitests случайно не многопточный/процессный?
358 1685418
>>85228
>>85281
спасибо. попробую когда-нибудь это реализовать. и похвастаюсь тут.
359 1685434
>>85218
это было бы слишком примитивно.
там связанные таблицы и я не хочу вводить ид , а хочу редактировать как будто выбираю значения из выпадающего списка.
Кроме того, автоматизировать по шаблону генерацию или групповое изменение этих данных и тд.
360 1685782
Сап, питонач. Вопрос по PyQT5, а точнее по QThreadPool:

Есть программа, которая проходит по файлам и делает с ними определенные штуки, после чего выполняет следующий этап. Манипуляции с файлами вынес в потоки, чтобы не фризился интерфейс и можно было одновременно обрабатывать N файлов. Но никак не могу понять, как продолжить выполнение работы только после окончания всех потоков? Ссейчас скрипт создает треды и переходит сразу дальше, что меня не устраивает.
361 1685807
Блэт, добавляю js-код в темплейт Джанги: <script src="index.js"></script> а он ищет этот файл в https://my-domen.net/index.js вместо поиска на хард драйве. Какого хрена?
362 1685845
Ананимас, подскажи какой-нибудь начальный материал по алгоритмам для совсем ебнутых даунов, которые вообще ничего не понимают. Я наткнулся на этот видос https://www.youtube.com/watch?v=pKO9UjSeLew
И даже ни из объяснений семпая, ни из самого кода этого tortoise and hare не понял, что это и как оно работает.
Снимок экрана 2020-05-12 в 22.12.19.png406 Кб, 2880x1800
363 1685873
аноны помогите, как это сделать?
364 1685874
>>85845
grokking algorithms глянь книжку.
365 1685879
>>85874
Добра.
366 1685911
>>85873
ты за это еще и заплатил?
367 1685935
Как замутить циклический список в Питоне?
Чтобы можно было обратиться к элементу my_list[5], когда в списке их скажем всего 4 и он вернул бы мне элемент my_list[1]? Меня хватило на:

class CycList(list):
----def __getitem__(self, n):
--------return self[n%len(self)]

но внезапно эта срань рекурсивно вызывает саму себя и не годится
368 1685947
>>85873
проверяй на рекурсию, ёпт
369 1685948
fff.PNG13 Кб, 465x425
370 1685949
371 1685962
>>85873
На 7 строке не валидный синтаксис.
372 1685972
Всем привет, а кто-то может подсказать адекватное решение проблемы, когда нужно отправить ссылку на фото, которое где-то хостится? Гугл Диск не получается заставить, Гугл Фото дает "закрытую" ссылку, открывать надо ручками. На Фликр только 1000 фоток доступна. Шото моя не понимать....
373 1685980
>>85972
Втентаклик. Но он вроде пережимает при аплоаде.
374 1685984
>>85980
Годно, попробую
15893107774230.png320 Кб, 2880x1800
375 1686036
376 1686044
>>85980
>>85984
imgur, апи есть.
377 1686060
Сап вопрос по больше по докеру.
Короче, обычно я диплою проект( django) так.
создаю nginx.conf, gunicorn.service. руками создаю базу и тд.

Собственно вопрост. если я делаю это через докер. то посутие мне на сервере не нужно ставить nginx я могу его поставить в докере? или как вообще правильнее?
378 1686113
>>86060

> Собственно вопрост.


А для чего вообще нужен докер?
https://habr.com/ru/post/309556/
379 1686116
>>86113
много зачем. но ок почтиаю
2a2eb8884921adb5b0e6013b043d92f9.jpg15 Кб, 300x300
380 1686122
>>85873
птздец, яндекс хочет за свои говнокурсыпрактикум 90к
Инглишь курсы на coursera дешевле
+можно скупить всех индусов на udemy
Совсем пизданулись
381 1686159
Епт, сраные static файлы в этой джанге

По какой логике они вообще находятся? Нихрена не понимаю. Настроил STATIC_URL="/static/" в settings, создал в одном из приложений myapp папку static и засунул туда свою таблицу стилей my_styles.css - при вызове src="{% static 'my_styles.css' %}" все работает. Создал такую же папку static в другом приложении newapp - и джанго уже его "не видит"!

По какой логике эта хрень вообще ищет статичные файлы на моем диске?
382 1686187
>>86159
че ты к ним доебался? все равно все nginx настраивают допом.
383 1686314
>>86044
Спасибо.
Вариант с ВК не помог, потому что поиск должен происходить по имени файла, но при загрузке оно меняется. Есть вариант с описанием каждой фото, но это не то.
Держу в курсе.
384 1686322
У кого-то получалось получать доступ к картинках на Гугл Диске?
385 1686325
>>85949
Not bad конечно, но лучше бы иметь под рукой класс с понятной сематикой __getitem__
386 1686409
>>86322
Гугл драйв апи?
387 1686464
>>86409
Пример с их сайта не работает (?)
https://developers.google.com/drive/api/v3/search-files
388 1686465
>>86464
Для картинок нужно использовать space=photos, но и оно, увы, подвело
389 1686491
>>86060
Если юзаешь докер то тебе нужно только поставить на целевой системе докер/докер-композ и всьо.
Дальше ебешься с написанием основного докерфайла и, если надо, докерфайлов для других частей(нжинкс и т.д.). Потом вставляешь все это в докер-композы, описываешь порты/вольюмы и прочее. Всьо.
Если проект серьезный то бд ставится на отдельный сервер и без докеров.
390 1686498
>>86464
Эти гуглоапи весьма злоебучи, всегда какие-то пляски с ними.
image.png21 Кб, 584x165
391 1686598
попробовал тут аннотации и чуть не блеванул
нет для доки оно конечно хорошо, и даже заставляет заранее додумать, что конкретно должен делать код
но это говнище же просто нечитабельное, его внатуре сейчас используют? или хотя бы есть какие-то планы по включению этого тайпинга в обработку интерпретатором для ускорения вычислений, например?
392 1686675
>>86598
Да, юзают, не особо читабельно, поэтому я, к примеру, юзаю простые конструкции что бы потом было более понятно какой тип данных надо передать и куда.
image.png1 Кб, 446x48
393 1686814
Кто может помочь, кто работал с asyncio для telegram bot api,
как там организовать поиск геолокации и маршрута, через обычные библиотеки типо geopy оно не работает, ибо диспатчер требует чтобы индексы были интами, но по api телеграмбота они там стринги и что делать со словарём я уже не знаю
394 1686836
>>86598
Если твоя говнофункция принимает столько разномастного говна, не проще передавать ей в аргументы словарь или именованный кортеж? А уже на уровне моделя (или кастомного namedtuple) провести документацию, не?
395 1686837
>>86814
Я не могу помочь
396 1686877
>>86814
я тоже не могу помочь
397 1686886
>>86814
Это слишком сложно.
398 1686918
А чем бинарный отличается от булевый? И то, и другое принимает два значения.
399 1686923
>>86918
Boolean это либо True, либо False, в то время как это 11010000 10111111 11010000 10111110 11010001 10001000 11010001 10010001 11010000 10111011 00100000 11010000 10111101 11010000 10110000 11010001 10000101 11010001 10000011 11010000 10111001
400 1686925
>>86923

>в то время как БИНАРНЫЙ

это
быстрофикс
401 1686940
>>86925
Не, я имел в виду бинарный как "бинарный оператор".
Есть унарный: -number есть бинарный: a+b=c, а есть тернарный number if number >= 0 else -number
Бинарный оператор - это оператор с двумя аргументами. Но ведь булевый оператор - это же тоже оператор с двумя аргументами?
402 1686948
>>86940
Есть математические, есть булевые, хули не ясно?
403 1686952
>>85911
нет
404 1686953
>>86940
булевый оператор это где такой термин использовался?
405 1686970
>>86953
Хз, я сам придумал.
>>86948
Булевый - это же математический термин. Разве нет?
406 1686985
>>86970

> Хз, я сам придумал.


ну так если сам придумал сам и давай определение, от нас ты что хочешь спросить?

> Булевый - это же математический термин. Разве нет?


Булева алгебра - математический термин, в информатике у нас Булев тип данных.
Image 653.png70 Кб, 1111x1005
407 1687004
Ебусь с ботом. Есть пара вопросов:

1. По гайду импортируется только from twitchio.ext import commands. Получается импорт только из папки ext происходит?

2. Как импортировать файлы из основной папки twitchio, в частности нужны функции из файла abcs.py.

3. Алсо, почему у меня не получается импортировать из моего файла config.py все переменные целиком? Чтобы они все импортировались мне пришлось их по одной перечислять.
408 1687010
>>87004
1. Да.
2. from twitchio import abcs
3. from config import *
Image 650.png3 Кб, 288x91
409 1687019
>>87010
Понял. Заменил на звездочку, вроде работает. Но почему пичарм эти строчки серыми сделал?

Добавил abcs и функцию timeout. Бот запускается без ошибок, но когда срабатывает событие с этой функией - пишет ошибку NameError: name 'timeout' is not defined
Что не так?
410 1687033
>>87019
Серым, потому что не использовано в коде.
Для timeout вероятно надо указать неймспейс, если ты его прямо не импортировал себе.
411 1687043
>>87033

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


Как это не используются? Из конфига используются вот все эти переменные в настройке бота. Используется каждая из переменных. Ведь если я испортирую их всех по одной с тем же кодом - строка с импортом не серая же.

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


А вот тут подробнее. Что значит прямо импортировал и как указать неймспейс? я только вот вот дочитываю укус питона, еще мало чего понимаю
412 1687060
>>87043
а в самом config.py они определены?
413 1687067
>>87060
В конфиге просто прописал переменные в виде
TMI_TOKEN = "значение"
CLIENT_ID = "значение"
и так далее. Это неправильно чтоль?

И на вторую часть моего прошлого сообщения можешь ответить?
414 1687079
>>87067
нет все правильно, просто надо понять откуда он хочет их импортнуть мб надо в pycharm указать папку со скриптами как source. Вот он красным подчеркивает, какую ошибку показывает если навести?

>можешь ответить?


могу но я уже другой анон
неймспейс это пространство имен, как бы сущность которая содержит имена для доступа к ним. Если у тебя config.py и ты его импортишь как import config а потом обращаешься к CLIENT_ID как config.CLIENT_ID то говорят что имя CLIENT_ID находится в неймспейсе config

поэтому замечание того анона было скорее всего про то что у тебя в importах не видно никаких timeout а ты их используешь (и ошибка говорит как раз что timeout не определен)

но мне каж ошибка в том, что у тебя в папке twichio нет config.py и ты хуй пойми что откуда запускаешь

добавь untitled2 PYTHONPATH (или пометь как source, тогда pycharm вроде должен сообразить)
415 1687080
>>87004
лол ты чет код прям внутри venv ебашишь?
416 1687082
Как построить частоту булевых признаков через matplotlib.hist(). Не могу разобраться, в данных на булевые значения ругается.
417 1687101
>>87079

>просто надо понять откуда он хочет их импортнуть


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

>Если у тебя config.py и ты его импортишь как import config а потом обращаешься к CLIENT_ID как config.CLIENT_ID то говорят что имя CLIENT_ID находится в неймспейсе config


Если я делаю from config import * и дописываю config. перед переменными то получается вот так, сами переменные не подчеткивает, но config. подчеркивает(пик2) и при запуске выдает ошибку NameError: name 'config' is not defined Как блядь? Файл config лежит там же где и основной файл программы.

>поэтому замечание того анона было скорее всего про то что у тебя в importах не видно никаких timeout а ты их используешь (и ошибка говорит как раз что timeout не определен)


как нету? timeout это функция из abcs.py которую я импортирую.

>но мне каж ошибка в том, что у тебя в папке twichio нет config.py и ты хуй пойми что откуда запускаешь


А с чего бы ему там быть? Я его же отдельно импортирую

>добавь untitled2 PYTHONPATH (или пометь как source, тогда pycharm вроде должен сообразить)


Вот сейчас не очень понял

>>87080
А что не так? (пик3)
418 1687147
>>87101

>лол ты чет код прям внутри venv ебашишь?


>А что не так? (пик3)



Как бы так не делается, папку проекта например C:\projects\apptwitckh\ добавляешь в свой IDE, далее уже цепляешь venv нужный.
419 1687149
>>87101
чет у тебя с пучармом, поч config.py не определяется как питоновский файл?
какая конфигурация запуска?

> как нету? timeout это функция из abcs.py которую я импортирую.


если ты импортишь
import abcs
то использовать надо abcs.timeout

если
from abcs import timeout
то просто timeout
Screenshot37.jpg115 Кб, 1269x719
420 1687151
Однажды надоела дрочильня в sql и я решил свои старые сохраненные запросы sql перевести jupiter notebook и запускать их прямо там. Почитал доку на виджеты и типа все заюзал.

нахреначил такой блок:
import datetime
import dateutil.relativedelta

sql_from=(datetime.datetime.today() - dateutil.relativedelta.relativedelta(months=1)).strftime('%Y-%m-%d 0:0:0')
sql_to=datetime.datetime.today().strftime('%Y-%m-%d 23:59:59')

@interact_manual
def process_date(from_date=widgets.DatePicker(description='От'),
to_date=widgets.DatePicker(description='До')):
global sql_from,sql_to
sql_from=from_date.strftime('%Y-%m-%d %H:%M:%S')
sql_to=to_date.strftime('%Y-%m-%d 23:59:59')

print("Будет использоваться диапазон " + sql_from + ' - ' +sql_to)

Почему не обновляет глобальные переменные в ipython ?
Как правильно это делать?

Нет, это не код для питона, это код для ipython. обратите внимание на декоратор @interact_manual.
Задумка в том, чтобы создать простой веб-интерфейс оналитика и без джанги.

Есть и еще вопросы:
что ж так хреново с локалями в браузере? Как выбирать даты с российской локалью?
не ебанулся ли я? как бы решали задачи эпизодического анализа данных вы?
Screenshot37.jpg115 Кб, 1269x719
420 1687151
Однажды надоела дрочильня в sql и я решил свои старые сохраненные запросы sql перевести jupiter notebook и запускать их прямо там. Почитал доку на виджеты и типа все заюзал.

нахреначил такой блок:
import datetime
import dateutil.relativedelta

sql_from=(datetime.datetime.today() - dateutil.relativedelta.relativedelta(months=1)).strftime('%Y-%m-%d 0:0:0')
sql_to=datetime.datetime.today().strftime('%Y-%m-%d 23:59:59')

@interact_manual
def process_date(from_date=widgets.DatePicker(description='От'),
to_date=widgets.DatePicker(description='До')):
global sql_from,sql_to
sql_from=from_date.strftime('%Y-%m-%d %H:%M:%S')
sql_to=to_date.strftime('%Y-%m-%d 23:59:59')

print("Будет использоваться диапазон " + sql_from + ' - ' +sql_to)

Почему не обновляет глобальные переменные в ipython ?
Как правильно это делать?

Нет, это не код для питона, это код для ipython. обратите внимание на декоратор @interact_manual.
Задумка в том, чтобы создать простой веб-интерфейс оналитика и без джанги.

Есть и еще вопросы:
что ж так хреново с локалями в браузере? Как выбирать даты с российской локалью?
не ебанулся ли я? как бы решали задачи эпизодического анализа данных вы?
421 1687158
>>87151
бля, вот я тупанул.
все работает. Просто функция вызывается позже нижнего блока print, в момент когда я нажимаю кнопку
422 1687164
>>87147
Так у меня вроде и так основная программа вне venv, не? (пик 1)
Где добавить папку со своим проектом в pycharm? есть только дефолтная папка куда все проекты создаются.

>>87149

>чет у тебя с пучармом, поч config.py не определяется как питоновский файл?


А хуй его знает. Это на что-то влияет?

>какая конфигурация запуска?


Это что и где?

>если ты импортишь import abcs то использовать надо abcs.timeout



Я импортировал всю папку с twitchio (пик 2), добавил к команде abcs( пик 2, в самом низу) и выдало уже другую ошибку( пик 3) что в модуле нет такого атрибута.

Это как? Внутри abcs есть функция timeout(пик 4)
423 1687181
>>87164
Ты путаешь модули и пакеты, так не получится. Просто почитай документацию, а не перебирай наугад.
Алсо, с этим config что-то явно не так.
424 1687189
>>87181

> Ты путаешь модули и пакеты, так не получится.


Это ты про что? Что я с чем путаю?

>Просто почитай документацию, а не перебирай наугад.


В документации нихуя не написано почти, поэтому наугад и пробую. Можешь глянуть гитхаб twitchio? В какую сторону хоть копать?

> Алсо, с этим config что-то явно не так.


Что именно? Основная программа подхватывает переменные же.
425 1687218
Как же у меня горит жопа с Джанго. Пиздец просто, гора последовательных действий ради обоссаной менюшки. Хуй знает сколько нужно потратить лет, чтобы запомнить все.
426 1687219
>>87189
twitchio не причем проблема с тем как ты запускаешь код в пучарме

1) убедись что ты реально запускаешь тот самый пайтон что лежит в venv, а не системный
2) убедись что ты запускаешь его из папки проекта а не из ~/
3) убедись что config.py не config.ру например (русские символы или какая-то юникод дрочь вместо точки)
4) ну не доку так гайд какой-то как запустить первый проект в пучарм
427 1687256
>>87004
Чет проиграл с этого проекта
venv это просто среда исполнения с нужными библиотеками конкретно под твой проект, зачем ты прямо в пакет (либу) твичио вкорячил свой "код", если по логике тебе нужны некие методы из этого пакета модуле с чятиком? (а так же методы из пакета asyncio итд). Или ты собрался сначала добавить новые функции в сам твичио, а потом уже их использовать в своем проекте?подозреваю, что нет
Иными словами, этот код должен располагаться там же, где и chatbot.py и конфиг (а может и вообще в самом файле чатбота, если кода немного)

кстати, поясните, а зачем вообще нужен virtualvenv, если есть более современный pipenv, требующий в 2 раза меньше телодвижений для настройки проекта?
428 1687262
>>87256
чел и не добавляет код в пакет ты че в глаза ебешься, посмотри че за файлы слева и че за файл открыт красной стрелкой он показывает на импортируемый файл а не на открытый

> нужен virtualvenv, если есть более современный pipenv


есть более современный poetry есть более современный dephell
429 1687266
>>87218
шапиши шпоргалку - последовательность действий с ссылками на туториал или код
430 1687271
>>87218

> потратить лет, чтобы запомнить все.


Ну такое мало кто делает, сниппеты/шпаргалки как написали выше, ну и гуглят информацию по надобности.
Запоминают только базовые вещи, всего не запомнишь и особо нет надобности.
431 1687285
>>87266
>>87271
Я конспект пишу. Плохо то, что по ходу дела код в проекте постоянно редактируется, в итоге и конспект приходиться часто менять.
image.png4 Кб, 387x67
432 1687311
лах.png25 Кб, 705x767
433 1687355
434 1687360
>>87219

> 1) убедись что ты реально запускаешь тот самый пайтон что лежит в venv, а не системный


А как это можно посмотреть?

> 2) убедись что ты запускаешь его из папки проекта а не из ~/


А не из откуда?

> 3) убедись что config.py не config.ру например (русские символы или какая-то юникод дрочь вместо точки)


Я config.py создавал из под ide, не должно быть ошибки, но проверю. А есть разница есть ли на файле значок питона или нет? Разрешение же что надо.

> 4) ну не доку так гайд какой-то как запустить первый проект в пучарм


Ок, гляну.
435 1687361
>>87360

>А как это можно посмотреть?


https://stackoverflow.com/questions/1871549/determine-if-python-is-running-inside-virtualenv

>А не из откуда?


/home/username
C:\\Users\username
В cmd и линуксе команда cd используется для того, чтобы указать, откуда ты хочешь запускать все программы

>А есть разница есть ли на файле значок питона или нет?


Нет разницы, mime-типы не должны влиять на это

мимо только собираюсь вкатиться
436 1687420
>>86491
да это я знаю. мне было как раз не понятно только как с nginx поступить. но все стало понятно спс
437 1687426
Эй что юзать в python3
request
http.client
urlib
438 1687445
>>87426
requests. но если предполагается массовый многопоточный парсинг, можно смотреть сразу на aiohttp
439 1687471
>>87445
да если многопоточный то офк aiohttp.
Прото я всегда юзал request в синхронных. но тут задумался
440 1687547
>>87445
threading даже не рассматривается?
wDKo6L-Fm0E.jpg67 Кб, 426x604
441 1687549
Очередной вкатывальщик подъехал.
Прочел книгу с пика и теперь вопрос: куда двигаться дальше? Хочу развиваться именно в области бек-энда. Пилить свой пет-проект простейший, типа форума или твиттера? Или ещё за какую книгу взяться, где ещё подробнее разжуют джангу, базы данных и прочее?
442 1687557
>>87549
начать пет-проект не рано никогда, лучше читай и ебашь параллельно переделывая. Проект бери такой, какой тебе интересно пилить. Хороших книг могу посоветовать две:
- Лучано Ромальо. Fluent Python. Подойдет если ты уже представляешь, что такое циклы, ветвления, модули, память.
- Лутц, если не представляешь
443 1687566
>>87549
индусы на udemy
444 1687579
Так блин, Жаба-господин пожаловал к вам на огонек
Я понимаю что адекватного сокрытия данных от питоновского ооп ждать не приходится но у вас бля вообще есть понятия аггрегации и композиции?
Я расширяю класс EngineClass методом копозиции, засунув ему в атрибуты self.extra = list(), хули я могу кинуть ссылку на self.extra извне и даже после удаления EngineClass instance этот объект останется в памяти??
Такое же говно как и жопаскрипт
445 1687650
>>87557

>Fluent Python


отличная книга. даже с опытом узнал не мало нового. тож советую
446 1687658
>>87579
Да у нас есть композиции.
моя любимая Сектор Газа - Колхозный панк.
447 1687661
>>87361
Я прописал в начало программы

import sys
print (hasattr(sys, 'real_prefix'))

При запуске пишет False. Получается я запускаю питон не из venv?
448 1687667
>>87579

>адекватного сокрытия данных


ой блять еще один жабадолбоёб думает, что инкапсуляция это про ЖОСТКОЕ СОКРЫТИЕ ШОТ НИБАЙБОХ НИКТО НЕ УВИДЕЛ
Image 693.png21 Кб, 975x706
449 1687672
>>87661
Хм, в настройках интерпретатор проекта указан как раз тот что внутри venv. Какого хуя?
450 1687726
>>87672
ты через кнопочку запускаешь?
Image 696.png4 Кб, 399x165
451 1687727
>>87726
Да, через нее самую
452 1687733
>>87727
а вот слева штучка если нажать Edit configuration там какой будет интерпретатор?
Image 717.png25 Кб, 1078x683
453 1687737
>>87733
Вроде все так как и должно быть.
454 1687744
Кстать, питон буду встраивать в юнити или в анреал?
Или только блендер?
455 1687746
>>87744

>буду


>будут

456 1687886
>>87547
рассматривается, если будешь сразу в базу пихать и не пытаться синхронизацию изображать в программе.
457 1687892
Сколько часов в день тратите на занятия? Перерывы делали?
458 1687898
>>87744

>Или только блендер?


GIMP ещё вспомни
459 1687902
>>87892
по 5 часов занимаюсь
460 1687930
У меня есть генератор, как заставить его выдать мне только 5 первых элементов?
Есть вариант с result = list(gen)[:5] но это пиздец неэкономично, т.к. список создается полностью и лишь потом значения отсекаются
461 1687944
>>87930
itertools.islice
462 1687963
>>87549
Как книга? Собираюсь купить
image.png1,9 Мб, 1560x2048
463 1687972
>>87963
Лучше эту купи
Screenshot1.png9 Кб, 448x248
464 1688001
VKapi, возвращает, будто я ему ничего не отправлял, я вообще хз
Screenshot5.png8 Кб, 770x131
465 1688051
466 1688174
>>87902
Около 12 часов
467 1688212
>>88174
Чертов псих, как у тебя остаётся психологическая энергия , чтобы думать /решать/понимать ?
468 1688226
Ищу ментора/будущего друга за спасибо либо фин вознаграждение после устройства на работу
Интересует Джанго
мимо 23 года , за плечами уже один том Лутца. Гуглить умею, намерения серьёзные - олл-ин . Не токсичный, адекватный , правда с математикой беды, но есть желание и время это исправить (для алгоритмов и тд)
Не хватает человека который наставит тем самым сократит время самообучения, а во вторых конечно хочется друга/пул друзей в таком направлении. А то мои все уже давно скололись, либо сидят.
@xkamiyada
469 1688227
Вопрос скорее по БД (SQLite).
Чому текстовое поле не выбирается через LIKE? Как это исправить?
FROM "table" WHERE "col" LIKE '%05%' нихуя не выбирается, хотя там пара сотен записей с цифрой пять в поле "col" (вот прям сейчас навставлял сторокове представление, возвращаемое str(datetime.datetime.now()) и пытаюсь в утилите пайчарма сделать запрос.
470 1688232
>>88226

>уже один том Лутца


Нафига? Один фиг забудется. Достаточно основы вызубрить.

>уже давно скололись, либо сидят.


Ты где живешь? с укр что ли?
471 1688234
>>88227
Да вроде всё ок. Может ты ничего не селектишь?
472 1688242
>>88232
Второй том уже на середине , да совестно что-то делать, не пройдя основы. Основы - курс на ютубе не воспринимаю, а лишь дополняю книгу. Хз, возможно не правильно это, но боязнь пропустить ту самую информацию (предложение/слово)

С рф
473 1688359
Все работает, работает, а потом:
vk.exceptions.VkAuthError: VK error: [invalid_request] Security Error
Мдауж
474 1688465
Нах в bs4 столько функций поиска: find_all, findAll, select? В чем разница не пойму, они ж одно и то же делают
475 1688617
На вход я получаю число как строку. Нужно преобразовать так чтобы было на выходе d,m,yyyy Нашел strptime, но он меняет порядок и время добавляет.
date= '18.09.2019'
datetime.strptime(date,"%d.%m.%Y")
Выдает
datetime.datetime(2019, 9, 18, 0, 0)
Конечная цель подставить в функцию вот так quantlib.Date(18, 9, 2019)
Как так форматировать?
476 1688662
>>87733
Ну таки в чем проблема то? >>87737
477 1688671
>>88617

> Нужно преобразовать так чтобы было на выходе d,m,yyyy Нашел strptime, но он меняет порядок и время добавляет.


Не знаю как в питоне, но в си вывод даты зависел от того как форматируешь сам - можешь выставить %d %m %y вместо %m %d %y или в любом другом порядке.
478 1688697
>>88465
Ну почитай код что они делают и поймёшь
479 1688722
Ну так давно взялся изучать питон, решил побаловаться объектами и появились несколько вопросов

1) если мне надо создать много экземпляров одного класса, то как эти классы хранить с возможностью обращения к ним? Создать что-то вроде списка и добавлять в него новые экземпляры?
2) существуют ли какие-то магические приемы создать экземпляр класса с произвольным именем? То есть я через input ввожу имя в консоле, питон читает мою строку и создаёт объект с этим именем

>>> Input( "my_var" )


>>> my_var = my_class()


Не уверен, но звучит такая мысль как хуйня какая-то
480 1688758
>>88617
ну у datetime куча полей, в том числе year,month и date
481 1688760
>>88722
1 - Любые переменные это ссылки на объекты, никакой разницы с числами или строчками.
2 - Можно через exec, например. Но нахуя?
482 1688772
платина:
Как изменить оригинальный объект, а не создавать его копию? Причём не из функции.
Например, from os import linesep
linesep = '\n'
483 1688775
Как правильнее читать проги? Начинать "снизу" - с вызова if __name__ == "__main__" и идя далее последовательно по вызовам или "сверху", читая объявления классов и переменных, а затем переходя к main?
484 1688776
>>88772
Что значить изменить? Ты просто переопределяешь конкретную запись в таблице символов.
485 1688781
>>88772
Как иы собрался "изменять оригинал" если это скажем immutable строка?
Есть вариант работать с bytearray или memorymap
486 1688800
>>88617
Обращайся по индексу
Screenshot38.jpg27 Кб, 710x311
487 1688808
Иногда я пограммирую на питоне и pandas как ненастоящий программист.
Понадобилось сляпать график групп и отобразить все мелкие группы в отдельную "Другие".
вот что нагуглил и это мне подходит :
https://stackoverflow.com/questions/48587997/matplotlib-pie-graph-with-all-other-categories

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

Не могу нагуглить другое, а читать книжку по pandas за 600 страниц долго.
Screenshot46.jpg157 Кб, 1188x1305
488 1688895
>>88808
Посоны! кончил и закурил..

Эксель нинужен
489 1688907
>>88895
Ну не скажи, матерые экселеёбы такое творят, куда тем пограмистишкам.
510-dE3N1PL.jpg48 Кб, 378x500
491 1688937
>>87963
Мне понравилась. Теория вся базовая есть по самому языку. И практика есть по трем разным направлениям(игрульки, визуализация данных, веб-сайт). В целом чувствую в себе силы пилить простые сайты, параллельно все гугля и подсматривая в stack overflow.
Но не обосрись с изданием, анон. Я буквально вчера обнаружил, что ещё с февраля доступна новая версия книги с пика на русском. В оригинале она именуется вторым изданием, а в переводе на русский она уже зовется третьим изданием(все потому, что у нас до этого два раза книгу издавали из-за правок в оригинале). В новом издании есть кучка новых плюшек, типа f-строк, от которых я охуел в хорошем смысле. И книге всего-лишь год. Наверное, самый актуальный вариант для салаги.
492 1689016
>>88937
Я читнул по диагонали. Слабовато охвачен язык, а проекты мне не особо интересны.
Вообще, это довольно неприятная проблема книг по питону - сегмент для новичков переполнен с вариантами вплоть до разжевывания для даунов.
Средняковые можно по пальцам пересчитать, а хардкорных вообще нет.
493 1689032
Как работает pyperclip?
Сделал скрипт, где он while True чекает буфер обмена, и если содержимое изменилось, дёргает некую функцию.
Но работает это очень нестабильно, и безо всякой системы. То раза три-четыре подряд сработает, а потом начинается через раз на пятый. То прямо сразу не хочет, надо ждать и раз десять тыкать Ctrl+C, чтобы запустилось.
494 1689057
>>88617
>>88758
Получилось отдельным извлечением полей день, месяц, год.
data='08.02.2019'
str=datetime.strptime(data, '%d.%m.%Y')
ql.Date(str.day, str.month, str.year)
495 1689136
>>88937
Спасибо, анон. Книжные как-то сейчас закрыты, так что заказал, не знаю какая версия придёт, но вроде самая последняя должна. На крайняк буду в электронном виде смотреть некоторые вещь.
Screenshot89.jpg2 Кб, 249x34
496 1689186
>>89136
Ой, хватит. Ты что не знаешь где найти пиратские каналы?
497 1689202
16 мая | ONLINE
Backend meetup
Ruby, GO, Rust, Node.js, Python, Elixir

https://metaconf.net/backend-meetup-2020
metaconf.png354 Кб, 1440x1271
498 1689204
499 1689209
>>89186
Мне нужен бумажный вариант. Так то у меня уже все давно скачано, но это не очень удобно.
500 1689252
Аноны, стоит пиздить pycharm pro ради поддержки django? Пока настраивал проект через консоль винды че-то задумался.
501 1689264
Товарищи, помогите пожалуйста.
https://medium.com/nuances-of-programming/обнаружение-объектов-с-10-строчками-кода-953bd0e22a2
На этой странице рассказывается как запилить компьютерное зрение не имея мозгов, и там есть файлик resnet50_coco_best_v2.0.1.h5.
Так вот он не качается(50 кб\с это не скорость, я пережил эти времена и больше не хочу), помогите. Где можно скачать нормально. Все ссылки что я нашел ведут на гит, с странно медленной скоростью загрузки.
502 1689270
>>89264
Ой, извините, я долбоеб, невидящий дальше носа.
Уже нашел.
Image 718.png8 Кб, 577x244
503 1689284
Помогите уж до конца с этим дерьмом (>>87004 и этот пост >>87164)

Вставил в начале вот такой код на проверку запускается ли питон что внутри виртуального окружения или нет. Запускается внутри. Проверял просто создавая скрипт в любом левом месте и запуская - пишет вне виртуалки.

Так в чем может быть проблема?
504 1689364
Кто-нибудь знает как через scipy.optimize.root задавать ограничения на переменные? Например больше нуля и другие. Может есть гайд по оптимизации Levenberg-Marquardt для всяких сложных функций, а не как в примерах sin(x)=0?
505 1689416
>>76587 (OP)
Решил вкатится в програмирование с питона. За сколько при ежедневнои труде можно стать мидлом?
506 1689427
>>89416
насыщает не время проведенное на кухне, а количество съеденных беляшей
507 1689451
Здраствуйте
Аноны, ктото проходил курсы по пистону у хекслета? Или, может есть другая годнота?
508 1689541
вновь реквистирую помощь для чайника, впервые открывшего пайчарм.
если у меня есть random, выдающий случайную фразу из забитого словаря, есть ли какая-то команда, чтобы за 1 запуск программы 1 и та же фраза НЕ повторялось (т.е. чтобы каждой фразы из словаря выдавало только по 1 разу) и так чтобы в конце когда все фразы из словаяр уже были либо начиналось по 2ому кругу либо просто прерывало прогу?
509 1689544
>>89416
Мидлом на задачах в вакууме не станешь, мидл в первую очередь специалист опытный, он знает что то о code design и архитектуре. Так что тут сколько бы ты времени не потратил нужен боевой опыт.
510 1689548
>>89541
+
Сейчас код выглядит так
if name == c4:
while word:
key = random.choice(list(word.keys()))
val = word[key]
check = input(f'переведи = {val}: ')
if not check:
break
if check == key:
print('Верно!')
del (word[key])
else:
print('Неверно')
print({key})
511 1689587
Аноны, как в пучарме в проекте Джанго импортировать самописные файлы? Нужно отметить папку с нужным файлом как source?
Прохожу тутор по Джанге и тут нужно импортировать polls.models.
В интерактивном интерпретаторе все работает.
512 1689596
Потсоны, можете заревьювить код, указать на проебы? С меня как всегда.
Задача: Создать объект класса Сутки, используя классы Час, Минута. Методы: вывести на консоль текущее время, рассчитать время суток (утро, день, вечер, ночь).

https://pastebin.com/TqFuU94e

алсо, куда лучше запихать проверку на время суток?
513 1689605
>>89548
все нашел, извините что потревожил
514 1689610
>>89596
А зачем все эти методы типо get_minute нужны, если они просто возвращают переменную из класса? Тип почему просто переменную сразу не брать?
515 1689619
>>89610
Потому что она приватная
516 1689622
>>89451
Зачем, если можно:
Вызубрить основы.
Сделать несколько туториалов и пет проектов.

OR

Сделать то же самое + заплатить денежные единицы. За тебя ведь никто ничего не сделает.
517 1689636
>>89619
Ааа, забыл про эту механику вообще.
518 1689665
>>89364

>scipy.optimize.root


Что, прямо векторная функция у тебя?
519 1689668
Кто уже парсил выгрузку диалогов vk? Куда посмотреть, чтобы не дрочить regexp или чего пострашнее?
image.png6 Кб, 492x112
520 1689685
Сап питонач! Есть класс ArticleDetailView(DetailView): и он выводит информацию с модели хуи, а при переходе по ссылке на страницу этой информации мне нужно, чтобы появлялась информацию с еще одной модели, например залупа, но нихуя не получается, что не так?

Пикча 1. Все збс, выводится ,но только информация с модели Manga, а мне нужно там же еще с одной модели, но нихуя не пойму как, хелп
521 1689688
>>76587 (OP)
В чем смысл Serializer в Django REST? Что он там блэт "сериализирует"? Он принимает на вход объект модели и возвращает питоновский словарь. Чтобы дополнительно сериализовать данные в json нужно заюзать JSONRenderer. Че за хня?
522 1689705
>>89688
Смысл сериализатора в том, что он сериализует данные.
523 1689722
>>89596
Код может и ок, но не имеет никакого смысла.
Алсо - ".format", как там в 2007? Норм?
Аместо написания классов ненужных, лучше по полной заюзал бы datetime там же много классных возможностей.
524 1689728
>>89665

> Что, прямо векторная функция у тебя?


Вроде да, я точно в определениях не разбираюсь. Я хочу калибровать модель Хестона для опционов (описание https://www.quantalgos.ru/?p=500). Там огромная ёба функция и надо подобрать 4 коэффициента. Как я понял там считаем min(функция(параметры)-известный результат). Только там еще есть ограничения на подбираемые параметры. Функция эта пробегает по таблице. По сути надо сделать МНК, но крутой Levenberg-Marquardt. А Levenberg-Marquardt как я понял считается через scipy.optimize.root.
525 1689746
Как удалить строки в Pandas.DataFrame, при условии наличия в колонке "Н/Д".

> for i in range(колво строк):


> if dataset['Название колонки'] =="#Н/Д":


> dataset.drop(, inplace=True)


Крашится с KeyError: 19 или KeyError: 17
526 1689749
>>89746
Блэт, код испортило. Вот https://pastebin.com/Li4YDYRH
527 1689768
>>89746
>>89749
Решилось dataset = dataset.reset_index(drop=True)
528 1689808
>>89728
А, ну тогда хуй знает. Возможно следует вопхнуть ограничения для параметров в саму функцию (прибавляя большое значение к результату при выходе параметра за границы, например). Но это не точно
529 1689891
Как в цикле игнорировать ошибки? Например при i =2 ошибка, нужно просто идти дальше к i=3. Код
https://pastebin.com/Lf8uwTL4
У меня цикл просто прерывается.
Если continue заменять на pass ничего не меняется.
530 1689972
Можно искать список внутри другого списка? Как это выглядит?
531 1689983
>>89972
Что именно? Списки в списках, конкретный список в списке, значения одного списка в другом?
532 1689984
>>89983
Нужно проверить если ли в одном списке слова из другого списка. Я пока ждал сделал так:

list = []
words = []

for word in words:
if word in list:

Так нормально делать или можно это сделать как-то лучше?
533 1689990
>>89984
Можно короче
all(word in list for word in words)
534 1689991
>>89990
Или тебе найти любые, а не проверить на все?
Тогда можно
[word in words if word in list]
или set(words) & set(list)
535 1689994
>>89991
мне достаточно совпадения 1 слова в двух списках. После 1 совпадения проверять все остальные слова не надо.

Еще вопрос - я пытаюсь сделать список из текстового файла. Сделал как на пик 1. Все работает, но забирается еще и символ переноса строки к каждому элементу( пик 2). Как его исключить из добавления в элементы списка:?
536 1689997
>>89994
Тогда оптимально any(word in list for word in words)
Чтение файла у тебя так себе. Достаточно
for line in f:
___line = line.strip()
Непонятно, зачем там i.
537 1689998
>>89994
Лучше
with open("list.txt", "r") as f:
538 1689999
>>89997

>for line in f:


>___line = line.strip()


Не понял как это будет выглядеть целиком.
539 1690000
>>89999
К твоему примеру
with open("list.txt") as f:
___for line in f:
______words.append(line.strip())
Больше ничего не надо.
540 1690002
>>90000
Хм, работает. Только вот он разбивает по строкам. Поэтому приходится делать в текстовом файле вот так:
123
456
789
Можно сделать разбивку если у меня будет 123 456 789 в одной строке?
541 1690003
>>90002
with open("list.txt") as f:
___words = f.read().split()
542 1690005
>>90003
То что надо, благодарю!
543 1690011
>>90003
Так, а подскажи еще почему русский текст в файле превращается в ['123', '456', '789', 'жопа', '000'] в списке?
544 1690016
>>90011
with open("list.txt", encoding="utf8") as f:
result.png9 Кб, 576x191
545 1690021
>>76587 (OP)
Так блэт, нашел фичу (хотя скорее баг) В ебучем numpy

Есть у нас строка с разделителями \n по типу:
string = """
здравствуй\n
двачер\n
нахуй\n
иди\n """

Если я захочу сформировать из этой херни двумерный numpy-массив таким образом:
a = np.array([list(line) for line in string.splitlines()])
То на выходе у меня получится хуета вроде той что на пикриле.

Чтобы все работало "как и должно" надо сначала сформировать ебучий список списков с буквами:
x = [list(line) for line in string.splitlines()] (та же самая блять операция же что и в предыдущем!)
А потом его заснуть уже в np.array:
a = np.array(x)

Вот че это за хуйня? еще и видно что в первом варианте получился dtype=object, а во втором как надо: dtype='<U1'
546 1690023
>>90021
Проблема обнаружена: в начале затесалась ебучая пустая строка, отчего длины строк не совпали
a = np.array([list(line) for line in string.splitlines() if line]) должно решить проблему
547 1690044
>>89722
Так задание состоит в том, чтобы поюзать много классов.

>Алсо - ".format", как там в 2007? Норм?


Чем господа питонисты сейчас пользуются?
548 1690048
>>90016
А еще такой вопрос - можно проверять как-нибудь на длину слова? т.е если у меня в списке words есть элемент лупа то в списке list не получалось совпадения с элементом залупа.
549 1690051
>>90048
Надо тогда ещё каждое слово крутить и смотреть в нем.
word for word in words for l in list if word in l
550 1690054
>>90051
чет пиздец набор слов, не понял. Что вообще за l?
551 1690056
>>90054
Читаешь слева направо как вложенные циклы и ифы.
Image 724.png6 Кб, 339x249
552 1690061
>>90056
Так что-ли? Хуйня какая-то получается
553 1690064
>>89722

>как там в 2007


>не используишь f-strings значет лох! яскозал!!

554 1690065
>>90061
Лол, я думал ты знаешь про компрехеншены.
В самом начале результат.
Вот как это работает https://ideone.com/SHRjSc
image.png32 Кб, 1166x486
555 1690066
Ребят, как реализовать?:
Я пишу свою манга читалку в вебе и уже сделал вывод по категориям, жанрам, вывод всех добавленных манг. Реализовал переход на конкретную мангу, где появляется обложка, описание и все, что у есть у других, но не могу понять, как реализовать отображение глав для перехода на них и соответственно чтение. Я создал модель Add_chapter и связал ее с моделью Manga

class Add_chapter(models.Model):
chapter_name = models.ForeignKey(
Manga, verbose_name="Манга", on_delete=models.SET_NULL, null=True, max_length=100, default=""
)
Даже получилось реализовать загрузку zip архивов и прочего. При заходе в админку и добавлении глав в через модель add_cpater и все збс, я могу выбрать уже созданную мангу и как бы привязать ее. НОООО, при выводе уже привязанных глав, в детальной информации у всех тайтлов появляются эти созданные главы, то есть есть тайтл наруто, я добавил к этому татйлу 3 главы и при заходе в тайтл блич у меня появляются 3 главы наруто, хотя их та быть не должно. Че не так?
556 1690074
>>90064
Ровные пасаны используют %.
Но вообще ф-стрингс заебись, а к удобству привыкаешь быстро.
557 1690075
>>90066
Тут наглядно видно. В наруто есть главы 2, 3, 5, 7 и они же выводятся в других татлах, хотя при добавлении главы в add_chapter я указывал наруто
558 1690080
>>90065

>компрехеншены.


это что еще такое?

>Вот как это работает


А если вместо списка list у меня просто строка?
559 1690085
>>90080
Такая фича для сокращения этих унылых итераций.

> А если вместо списка list у меня просто строка?


Просто выбрасываешь один из циклов.
560 1690086
>>90085
А можешь и одну строку засунуть в список, это не принципиально.
561 1690087
>>90044
Fuck-strings
562 1690095
>>89587
Отметил папку с моделью как source.
Теперь требует environment variable, но походу тогда надо добавить весь проект в path
Нахуй, пойду пичарм про скачаю
563 1690098
>>90064
Я не сказал что анон лох, но если он вкатывается в питон сейчас, незнание новшеств 3,6+ будет делать ему больно.
>>90044
Ну если задание такое, то ок.
Сюда бы еще статик/класс методы, наследования, суперы и т.д.
А так - малаца.
564 1690105
>>90095

>пичарм про


Проще VSCode. Пичарм для новичка тяжеловат.
Image 729.png3 Кб, 322x99
565 1690114
>>90086
сделал именно так и сделал из строки message список message_list. Но не работало пока я в конце сделал
не if word in message_word:
а if word == message_word:

В чем разница? почему in не находил соответствие?
566 1690117
>>90087
f-strings это грязь, потому что это смешивание кода и вывода, выжигать такое надо калёным железом. Кто хочет php забыть как страшный сон, тот таким "инновациям" не радуется.

format хорошая и удобная штука, для всего хватает. Вот где пиздец, так это в традиционных компилируемых языках. Как вспомню, что из себя вывод в C++ представлял (без сишных принтфов), так вздрогну, хз, может сейчас и туда что-то подвезли.
567 1690126
>>90114
== это точное совпадение, in это подстроки.
Видимо ты перепутал что в чем ищется, лол.
568 1690131
>>90126

>== это точное совпадение, in это подстроки.


в чем разница?

>Видимо ты перепутал что в чем ищется, лол.


Что с чем я перепутал?
569 1690135
>>90117
На пхп не писал и забывать нечего, форматировать при помощи Ф-строк очень понравилось и зашло.
Безусловно, каждому свое.
570 1690139
>>90131
"hui == "huilo"
False
"hui" in "huilo"
True

> Что с чем я перепутал?


Разбирайся.
571 1690141
>>90135
Просто всё выебывались, что в перле и пхп хуево сделали с интерполяцией, а потом сами это спиздили, лол.
572 1690144
>>90139
Так мне и нужно было чтобы только при полном совпадении слов срабатывало условие. Мне наоборот не надо чтобы hui == huilo выдавало тру
573 1690147
>>90144
Так оно изначально не совпадет, я думал надо чтобы совпадало, иначе с чего такие вопросы?
574 1690148
>>90141
Кто все-то, кто все? Тут питоно-тред, нам похуй на все языки кроме пистона и SQL.
575 1690151
>>90147

>Так оно изначально не совпадет


Где же оно совпадает? "hui" in "huilo" выдает же true.
576 1690154
>>90151
Это разные in.
"hui" in ["huilo"] не совпадет.
577 1690157
>>90154
Это из-за чего так? Это же обе одинаковые строки?
578 1690159
>>90157
Это строка и список.
В строке ищутся подстроки, в спсике элементы.
А чтобы искать в списке подстроки надо дополнительный цикл, о чем и была речь.
579 1690162
Аноны, пора пилить перекат.
Под это дело залил книги на живой сука диск.
Не влезли только книги из:
https://yadi.sk/d/H-00n-UG3RSQem

Их залью чуть позже, надо докупить место.

Собсна ссылка:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6
Image 728.png8 Кб, 389x276
580 1690171
>>90159
Т.е. в списке in выдает тру только если элемент совпадает полностью а в строке in выдает тру и при частичном совпадении?

Так я все по итогу правильно сделал? (пик)
581 1690175
>>90171
Да.
Сделал правильно, но второй for тогда и не нужен, достаточно if word in message_list.
582 1690176
>>90141
когда кто-то выебывался на интерполяцию в пхп?
https://en.wikipedia.org/wiki/String_interpolation
583 1690177
>>90175
зачем ты ему объясняешь чувак ж довен не может погуглить элементарные вещи и адаптировать элементарный пример
584 1690182
Поясните по twitchio. Некоторые функции имеют такое описание:

coroutine get_chatters(channel: str)
#This function is a coroutine.

Что такое coroutine и чем они отличаются от методов?
Как определить к какой функции этот get_chatters относится чтобы ее использовать?
585 1690185
>>90176
Всегда. Это пришло из шелла в перл, а оттуда в пхп.
В то время все выебывались, что это смешивания и спагетти и юзали конкатенцию или всякие ебанутые стрингбилдеры у жаб и шарпов. А потом утащили себе и теперь это пиздец фича модная, ага.
586 1690187
>>90185
есть пруф, что кто-то выебывался
?
587 1690189
>>90187
Неоднократно замечал на хаброте в те времена.
588 1690192
>>90182
ее надо вызывать с await вот так:

await get_chatters("some_channel")

соотвественно вызвать ее можно либо в другой корутине либо через asyncio.get_event_loop().run_until_complete(get_chatters("..."))
589 1690195
>>90189
крч пруфов нет, ты это придумал?
590 1690197
>>90195
Мне лень искать на спор в полтора поста.
Можешь считать что придумал.
591 1690201
>>90197
вся суть выебщиков в этом треде

придумал хуйню и начал нести в массы. Не стыдно? Вот нюфани читают такое и потом несут хуйню на собесах.
592 1690203
>>90201
Приходит на собеседование и рассказывает, что в ранних нулевых выебывались на интерполяцию, а потом спиздили себе?
Image 738.png8 Кб, 430x204
593 1690205
>>90192

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


Попробовал вызвать его вот так - пишет NameError: name 'get_chatters' is not defined
594 1690209
>>90203
начинают говорить что х плохо потому что это как в php, при этом на пхп не писали, поч именно плохо объяснить не могут, но могут пиздеть и чувствовать себя важными
595 1690210
>>90205
ты думал перевести ошибку в гуглтранслейте?
Image 741.png6 Кб, 548x162
596 1690214
>>90210
я в курсе этой ошибки. Но функция get_chatters находится в Client.py внутри пакета twitchio, который я подключил(правда строка почему-то серая)
597 1690215
>>90209
А что же они пиздят, что как в пхп, если про пхп так не пиздели?
Вот тебе и пруф, лол.
598 1690220
>>90215
так потому что они таких как ты читают
599 1690221
>>90214
а это опять ты, который не может настроить пайчарм
600 1690223
>>90220
Я вообще только за интерполяцию, а читали они таких пуристов, о которых я и писал.
601 1690233
>>90221
У меня все настроено нормально, постил же скрины. Глянь пик 1 и 2

Я даже проверку в начале программы сделал на то внутри ли venv питон запускается. И да - внутри. Хули ему надо то?
602 1690236
>>90233
"Настрой пучарм самостоятельно за 21 день"
603 1690238
>>90236
И что же у меня не так настроено то?
604 1690261
>>90105
Мне чем пичарм нравится - автокомплит и дебаг заебатые, хз как вскод в этом плане. Вскод он вроде дохуя модульный, когда поставлю линукс себе - попробую атом или емакс.
Пичарм конечно многие вещи за меня делает - даже на примере тутора Джанги пичарм про сам файл settings изменил, когда я новое приложение создал.
Когда тутор через консоль делал - заябывало отсутствие автокомплита в cmd и внятного представления структуры папки. Хотя и понимания происходящего требовалось побольше.
605 1690266
>>90117
Что плохого в них? Инъекции?
Чем тогда предлагаешь пользоваться?
606 1690289
Поцоны, помогите еще одному нюфагу с чтением файлов

Есть файл вида:

3,1 3,2 3,3
4,1 4,2 4,3

Нужно распарсить так, чтобы на выходе был массив [[[3,1][3,2][3,3],[[4,1][4,2][4,3]]]

Это все делать через split()? Совсем запутался
607 1690293
>>90266
Это просто грязь, когда ты делаешь вычисления внутри строк и прямую подстановку туда переменных. Код необходимо отделять от представления.

format даёт для этого оптимальную возможность.

PHP "из нулевых" самый яркий представитель, где в коде смешивали строки и сам код. От переменных до циклов с sql-запросами.

В идеале ты вообще должен выносить определения строк куда-то наружу из кода, чтобы, например, поддержать многоязычность. Format это идеально позволяет.
608 1690309
>>90289
for line in f:
res.append([[int(n) for n in pairs.split(',')] for pairs in line.split()])
2020-05-16 160335-Python 3.8 (64-bit).png5 Кб, 348x145
609 1690317
610 1690323
>>90293

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



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

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


Можешь дать пример? Может приложение с гитхаба, а то у меня еще не было необходимости использовать именно format, обходился f-strings.
611 1690345
>>90309
Спасибо, то что надо
612 1690347
Так в чем проблема то? >>90233
613 1690348
>>90323

>В этом и проблема?


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

Примеры на гитхабе искать надо.
614 1690353
>>90345
Ты ж мудак
Image 765.png12 Кб, 629x421
615 1690401
>>90347
все из twitchio импортируется без проблем, но какого хуя пишет AttributeError: module 'twitchio.client' has no attribute 'get_chatters' ? Внутри client.py есть get_chatters
616 1690426
Есть некий датафрейм с отсутствующими значениями. Для каждой строки я вычислил среднее значение. Как теперь подставить в каждую строку вместо NaN свое среднее значение для каждой строки?
votes_data = votes_data.fillna(votes_mean) чет не работает.
617 1690445
перекатите тред молю
618 1690460
>>90445
Перекати сам
619 1690471
Сап, ананасы. Как сохранить изменения во вложенном списке, после того как я списком по нему пробегаюсь?

К примеру есть список [['1','2'],['3','4']]

Я делаю такую конструкцию:
for row in list:
for elem in row:
elem = int(elem)
И ожидаю, что после того как снова запринчу этот список, значения там будут в int, но не работает.
Надо новый создавать?
620 1690474
>>90426
votes_data.fillna(votes_data.mean())
621 1690484
>>90471
Можно через enumerate и по индексу менять.
623 1690495
>>90474
Так он заполняет средними по колонкам, а не по строкам. А с аргументом mean(1) не работает.
624 1691150
>>90426
попробуй чтото должно сработать
votes_data = votes_data.fillna(np.mean())
votes_data = votes_data.fillna(votes_data.mean())
625 1693405
Здравствуйте, господа!
Хочу научиться работать с библиотекой vk_api, вернее у меня есть идея, которую хочу реализовать для бота в сообществе.
Но, начинать надо с чего-то простого, что у меня не получилось.
Объясните плз, как можно элементарно с помощью бота отправить, например сообщение самому себе? А то просмотрел несколько источников, на одном источнике была подобная информация, но данную функцию тупо выпилили с какой-то там версией vk_api.
Будьте добры, напишите код, (я знаю, что там строчки 3-4 должно быть, пролема в знании методов), ии подкиньте доков читабельных
626 1693466
А есть в природе какие-то готовые библиотеки для глубокого (полного) разбора JSON? Ну, например, чтобы все строковые значения выдернуть? Или надо каждый раз смотреть самому и разбирать логику данного словаря? Это не будет велосипедингом? Или только так и можно делать?
Тред утонул или удален.
Это копия, сохраненная 8 сентября 2020 года.

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

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