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

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

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

Предыдущий: https://2ch.hk/pr/res/1943168.html (М)
Литература:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание
Ещё книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек: https://yadi.sk/d/H-00n-UG3RSQem

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить
https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться

#######################################

ЧаВо: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Актуальность примерно 2015 года

Вопросы-ответы:
— А стоит ли читать Лутца, том номер N?
Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.

— Стоит ли читать %книга_нейм%, если там питон версии 2.х?
Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х

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

— Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги.
МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0

— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом?
Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4

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

— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)

— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется

— Как можно без лишней возни ускорить программу на питоне
1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь.
2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.

— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём
Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.

ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
Исходник: https://dumpz.org/bASGKD8cCFDf
2 1954145
Как сделать по красоте?
Есть JSON с постами двача. Из поста качаю картинку. Потом опять получаю свежий JSON. Как мне хранить метку, о том, что файлы из поста были скачаны?

Пример абстрактный, но очень наглядный
3 1954148
>>54145
Переводи номера постов в инты и храни в сете, потом проверяй.
4 1954153
>>54148
а для защиты от перезагрузки, в пиклзах, да?
5 1954158
>>54153
Да тупо в текстовом файле, там в одну строчку читать и писать.
6 1954162
>>54158
обнял
7 1954240
>>54138 (OP)
Надо обозначить тип который выразит кортеж с двумя значениями, первое - строка, второе - число. Как это сделать?

Tuple[str, int] разве подойдет? Это что-то не то
8 1954253
>>54240

>разве подойдет?


да
9 1954287
>>54145
На дваче вроде бы посты иммутабельны, их можно разве что удалить. Храни метку, номер поста до которого ты уже скачал картинки. Ну или любое key-value хранилище, где ты прямо урлы картинок хранишь, какие скачал, какие нет. Я не понял для чего тебе пикл, ты видимо перезапускаешь программу, можешь например sqlite использовать чтобы не изобретать свою базу данных.
10 1954378
>>54253
Только вот проверки isinstance не работают) (питоновская хуйня чисто)
11 1954382
>>54378
Каким боком isinstance к тайп хинтингу?
12 1954435
>>1952721 →
Ну что ты там, разобрался?
>>1954038 →
Написать ещё один микросервис, который будет отвечать за авторизацию на других микросервисах?
13 1954632
Добрый день, возможно ли вкатиться в питон и найти раб оту в питере или москве за год обучения дома? в день смогу уделять +/-8 часов. Сейчас начал проходить курсы на степике.
14 1954637
>>54632
можно, но нубы в бэкенд питоне сейчас не то что сильно нужны, проще вкатиться небось в пхп из бэка, или во фронт
15 1954641
>>54637
а какой язык посоветовал бы из фронт (я кстати не особо даж понимаю в чес разница)?
16 1954699
>>54632
Вкатиться можно, найти работу джуну почти нереально
17 1954703
Я не знаю какие фреймворки есть на других яп, но я прочитал почти всю доку дрф и попробовал на практике, это просто нечто, ничего более гениального я пока не видел, а если не вдумываться в методы которые под капотом, то вообще словно магия происходит, вопрос зачем нужны другие яп с их фреймворками?
18 1954707
>>54641
javascript
19 1954709
>>54703
В других языках тоже есть rapid application development фреймворки с магией
20 1954718
Есть текст, хочу из него сделать картинку с форматированием.
Как это сделать быстро и красиво?
на SO уже курю мануалы, но хочу узнать совета анонов
21 1954773
>>54699
то есть стать мидлом невозможно и мой единственный выход гнить на заводе?
22 1954861
Подскажите плз, есть проблема с парсингом. Хочу получить для начала html страничку, но с одним сайтом происходит какая-то дичь.
вот код: https://pastebin.com/R30vHZva
на выходе html в одну строку, при запуске которой (если сохранить ее на комп и потом запустить в браузер) выходит 404
Для примера в этот код вставлял другие сайты и все было норм.
Я так понимаю, скорее всего там есть какая-то особенность в самом сайте, которую я не знаю.
Если что я полный ноль и только учусь. Если есть возможность пояснить плз в чем проблема
23 1954876
>>54773
Нет, мидлом стать легко, сиди годик-три на работе и все, а вот что из вкатыша превратиться в джуна придется сейчас жопу порвать, хотя если тебе >= 23 и есть законченная вышка(техническая), то будет проще
24 1954880
>>54861
Возможно проверяет юзерагента, поищи как в заголовки добавить user agent и тогда пробуй
25 1954890
Двощане, важный для меня вопрос, как часто в работе вы используете чистый sql, без орм, потому что на практике я еще ни разу не делал запросы без орм, только при изучении(разве что для отладки иногда инсерт, делит, селект и т.д), если будут ответы да, то так же вопрос как часто приходится сталкиваться с пониманием как работает бд, с транзакциями, с функциями, индексами и т.д, а так же где об этих темах можно почитать, реквестирую
26 1954896
В укусе питона большинство понимал, пока не пошли методы и классы.

Со мной всё плохо?
27 1954902
>>54896
Даже .format() это метод для объекта строки, пока можешь просто запоминать, а когда осознаешь как все работает будешь в шоке, у меня так было
28 1954903
>>54880
Добавил в заголовки юзер агента и accept, ниче не поменялось к сожалению
29 1954907
>>54902
Просто ощущение что я ребёнок учёного на научной конференции, речь русская, а ничего не понятно.
30 1954923
>>54907
Я по-моему из-за всех этих методов книгу дропнул, точнее читал в пол глаза, так что расслабься, потом придет осознание
31 1954926
>>54903
Найди самый длинный юзерагент и перепроверь ссылку
32 1954932
>>54896
В чем проблема понимания методов? Просто функция, засунутая в объект и как-то работающая с ним (хотя это не обязательно).
Untitled.png155 Кб, 1920x1058
33 1954941
>>54861
>>54903
Это spa, причем выдает в каком-то норкоманском легаси формате, ни разу ещё не встречал такую хуйню, лол.
34 1954956
>>54876
техническая вышка энергетика + заканчиваю вышку юриста магистр которую могу поменять на айти без проблем. Помоги пожалуйста, какая последовательность действий что учить кроме питона непосредственно и где учить?
35 1954982
>>54907

> речь русская, а ничего не понятно


Это как раз потому, что речь русская. Вообще, 90% русскоязычной литературы по ЯП и, вообще, по IT - лютейшее говно, причём даже в случае с крупными издательствами, потому что всё переведено инъязовским планктоном.
36 1955029
>>54941
protobuf же
37 1955044
>>54861
Ах да, еще добавь объект session и через него делай запросы обязательно, довольно важно, может даже заработает
38 1955046
>>54982
Ну тут вопрос возникает насколько хорошо нужно знать инг, чтобы читалось понятнее чем на русском, у меня в голове только гугл транслейт максимум года 2010
39 1955056
>>54956
Синтаксис питона(ветвление, циклы и т.д), структуры данных, алгоритмы, углубляешься в питон(ооп и пр.), смотришь более сложные вещи, потом если бек интересен начинаешь учить линукс, потом базы данных, html, css, потом уже вебфрейморки, джангу пожалуй, потом углубляешь еще сильнее в язык, асинхронность, многопотчность и прочее, постоянно начинаешь курить документации всего подряд, в это же время пилишь какую-то хуйню, можешь пробовать подавать резюме, получаешь тестовое, делаешь, продолжаешь уить смежные технологии, drf, celery, docker, я пока перед докером остановился, дальше ничего посоветовать не могу, но думаю примерно в это время надо найти работу. Параллельно читаешь умных людей с хабра. Есть курсы на степике, особенно рекомендую веб-технологии, там и про джангу(правда старую) и про современный фронт - ajax, и про протоколы - tcp, http, в остальном курсера есть, куча статей и документаций, кто-то кодварс дрочит, можешь попробовать когда поймешь что можешь писать свои функции. Асло другие аноны, скажите что пропустил
40 1955080
>>55056
большое спасибо
41 1955135
>>55029
Ты так пишешь, будто это ходовой формат в вебе.
Молодец, за пять сек нагуглил, берите его на 300к/сек.
42 1955136
>>55056

> про современный фронт - ajax,


Современней некуда
43 1955137
Посоветуйте годные, слитые курсы для медленного вкатывания, с нуля. Желательно русские, но можно и на англе.
44 1955159
>>55137

>курсы


>пистон


ты че раст учишь что ли, пистон даже дети по книжкам понимают
45 1955161
>>55136
Ну там рассказывалось про фуллстак фрейморк с шаблонизатором и т.д, этим сейчас не пользуются, а про аякс рассказано, очевидно что знать как вью работает вне рамок курса
46 1955162
Вопрос, часто апишки отдают в жсоне статус коды, но у хттп есть свои, это типо более молодежный способ и добавлять в жсон еще коды не нужно?
47 1955194
>>55162>>55162
Кто-то пилит кастомные коды
48 1955309
>>54896
А что не так с классами и методами?
49 1955417
Дайте задачи на pandas
50 1955489
Есть у меня список в духе: [информация, команда, время]

В заданное время должна сработать команда манипулирующая информацией.

Как организовать стек с выполнением по таймеру? Каждую секунду чекать весь список? Есть встроенные функции для такого?
Нужно что-то вроде времени жизни значения из redis.
51 1955545
>>55489
Зависит от контекста. Есть например threading.Timer, есть библиотечка sched, а можно и по классике:
while True: time.sleep(t)
Для полного эффекта ентерпрайза можешь даже Twisted заюзать
52 1955570
>>55489
Для начала важно, как у тебя сама программа устроена. Что происходит в тот момент, когда ты ждёшь события, как добавляешь задания и т.п.

У тебя многопоточное или асинхронное решение?
53 1955596
>>55489
Есть всякие штуки, которые по расписанию работают(название не помню, но там вроде по запросу scheduler python должно вывалиться что-то) А вообще, можешь взять Celery, там есть постановка задачи на нужное время. Недавно на работе тоже самое делал.
54 1955809
Приспичило написать gui. И тут возник вопрос: чем отличается pyqt5 и pyside2? Кроме лицензии есть отличия?
55 1955848
Возникла необходимость отдавать медиа файлы - мп3 на фронт, правильно понимаю, что достаточно просто переавать файл через обычный
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
и на фронте он нормально скачается и зальется куда надо там? А самое важное как в таком случае настроить безопасность, пользователи не должны смотреть чужие файлы, пользуюсь drf, есть пермишшоны, придеться вместо обычного
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Переписывать метод retrive у вьюсета?
56 1955885
>>54902
f строки до меня со второго раза дошли, типа можешь писать в одной строчке и циферки и буковки
57 1955926
>>54138 (OP)
Друзья, вопрос по fixture.
Как настроить такую, которая будет при запуске каждого тест класса будет заполнять переменную, скажем Count, которая будет запрашиваться из другого метода. Далее, если смотрим if count > 2: делай это, елсе: делай то.
58 1955928
>>55926
Такое ощущение что либо я по своему проекту тут пишу, либо ты по фикстурам, больше никого
59 1955933
>>55928
Печаль. Уже хз что делать. Обгуглился совсем. Может кого из Индии нанять за пару булок хлеба?
60 1955947
>>55848
Ниче не понял что ты там хочешь сделать, но у каждого файла в базе данных можно сделать ссылку, по которой он открывается. Просто проверяй авторизацию при запросе к мп3 и все.
61 1956086
>>55848
Обычно вроде делается так:
1. Джанга проверяет пермишоны, отдает ссылку на файл
2. По ссылке файл отдает какой-нибудь nginx
Можно отдавать файл сразу в ответе, например, я энкодил пдф в base64 и пихал прям в тело json(и мне не стыдно), но тогда его надо будет обрабатывать на фронте.
>>55926
А не проще ли запускать тест с разными параметрами? Сначала с count < 2, а потом с count > 2.
62 1956130
>>55417
просто работай с дата фреймами, вычленяй там разное и оформляй
панда ас пд
дроп нулл
сорт валуес
ну ты понял
63 1956155
>>56130
ху ис он дьюти тудей?
64 1956166
Боже, чому нет хороших библиотек для работы с офисом мелкософта? Нашел pywin32 более-менее работающий, но он состоит из костылей. docx либа берёт только docx, панда только эксели.
65 1956177
>>56155
зе гай ху ис сапосед ту бе он дюти тодей ис щитфейсед он алл зе ликуор хе бот ин дюти фрии сторе. со хи ис пробабли офф дюти тилл томорроу
66 1956198
>>56155
блядь, это вроде дикая тема из армии? типа кто сегодня пидорит полы или что значило?
67 1956199
>>56177
лол, что это занчит вообще? кто то в кал наебенился в щитфейсес и он оф дути?
изображение.png23 Кб, 782x142
68 1956321
>>54138 (OP)
Сап. Есть такая простая модель, пикрилейтед. Два последних поля - это проджект менеджер и список сотрудников, участвующих в проекте. Хочется, чтобы при создании проекта PM сразу добавлялся в employee. Как можно добиться такого поведения?
изображение.png6 Кб, 329x81
69 1956331
>>56321
Вроде добился желаемого через переопределение save, но правильный ли это путь?
70 1956335
>>56331
А он у тебя не будет теперь еще и при изменении добавлять?
71 1956344
>>56335
Справедливо.. Придется добавлять условие. Или есть менее колхозный способ?
72 1956353
>>56321
Не секу в джанге, но разве не проще просто создать эмплои с флагом принадлежности пм/не пм?
73 1956354
>>56353
Ну так юзер в одном проект может быть менеджером, а в другом - кем-то другим
74 1956357
>>56354
Ну так для этого нужна кросс-таблица с полями ProjectID, EmployeeID, и флагом IsPM (или RoleID).
75 1956358
>>56344
Не знаю как правильно. Я бы в форму добавил автоматическое добавление, а то потом окажется, что в каком-то месте не надо добавлять и придется еще одно условие в save добавлять, а потом еще одно, а потом ну ты понял.
76 1956361
>>56357
Именно это ManyToMany field и делает. Просто если туда кастомные колонки впихивать - ORM сломается.
>>56358
Спасибо, буду пробовать!
77 1956364
>>56361

>Именно это ManyToMany field и делает.


Я это понимаю, но тогда зачем тебе 2 раза хранить инфу о человеке, если он одновременно и пм в таблице проекта, и эмплои в кросс-таблице?

>Просто если туда кастомные колонки впихивать - ORM сломается.


Ну и говно эта ваша заливная орм пиздец, самому надо по работе в это вкатываться
78 1956368
В дополнение к этому >>56364
Если у тебя в проекте пм поменяется, тебе и в проекте надо апдейтить его, да ещё и в кросс-таблице удалять, если он из проекта вышел совсем, а не стал лидом каким-нить.
79 1956373
>>56364

> зачем тебе 2 раза хранить инфу о человеке


Чтобы не делать несколько запросов к БД, если нужны вывести список проектов, в которых участвует конкретный человек, как минимум. Такой API в целом удобнее для человека будет
80 1956381
>>56373
Не вижу тут дополнительных запросов, только дополнительный джойн в запросе и условие в where на 'пмность'. Но это твоё дело, я лишь со своей кукаретской позиции дата аналитика рассуждаю, что такой подход странный, базисты бы меня на старом месте на хуй послали бы схему бд переделывать за такое.
81 1956560
Двач, подскажи, а как заполнить нампи массив кортеджами сразу (строками)
т.е. чтобы было через инпут
user input 2 #line
user input 3 #colums

user input 0 1 2 3 4
user input 5 6 7 8 9

out
"0 1 2 3 4
5 6 7 8 9"

Совсем не понимаю как сделать ввод не по одному элементу, а по строкам
82 1956640
Где искать какие-то годные видео или статьи с объяснением смысоового применения модулей? В каждом видео про нумпи или панду идёт какая-то хуйня с простым перечислением возможностей, почему никто не объясняет на реальных прикладных задачах?
Алсо, хочу вкатиться в дата саенс, какого рода математика мне нужна и как быстрее всего её подтянуть?
83 1956647
>>56560
Через генератор или цикл пробуй.
84 1956654
>>56560
import numpy as np
from io import StringIO
data = """
0 1 2 3 4
5 6 7 8 9
"""
arr = np.genfromtxt(StringIO(data), delimiter=" ",dtype='int')
print(arr)
85 1956682
Поясните, а как работает, когда в for сразу 2 элемента for (j, el) in
далее ниже результат функции присваивается el
86 1956686
>>56682
for (j, el) in [('op','hui'), ('abu','pidor')]:
____print(el)
87 1956757
>>56682
Это значит, что у тебя каждый элемент коллекции это тоже коллекция, в которой ровно столько элементов, сколько у тебя переменных после for, это синтаксический сахар, например, пусть, у нас есть список пар чисел pairs = [(1, 3), (5, 2), (0, 9)], вместо того чтобы писать:

for pair in pairs:
    x = pair[0]
    y = pair[1]
    # делаем что-то с x и y

Мы пишем:

for x, y in pairs:
    # делаем что-то с x и y

Это называется распаковка, и она работает не только с циклами:

x, y, z = [7, -1, 4] # в x будет 7, в y будет -1, в z будет 4

Только надо быть внимательным, переменных должно быть ровно столько, сколько элементов в распаковываемой коллекции
88 1956769
>>56321
Во вью при сейве инстанса просто напиши эмплоес = пм, так нельзя?
89 1956790
>>56560
"5 6 7 8 9".split(" ") -> list
90 1956792
Кто-нибудь на линупсе сталкивался с тем что пучарм зависает намертво, но только до тех пор пока не откроешь что-то, только нажимаю на ярлык терминала - сразу отпускает, хз что это такое вообще
91 1956798
Двач, поясните за инпут.
Нужно переменную ввести, но она должна быть и инт и флоат зависит от данных как сделать, если переменная по сути инт "12.0", отображалась не как флоат?
92 1956823
>>56798
проверяй инпут на isdigit
93 1956830
>>56823
От души, уже и забыл про него
94 1956903
>>56321
Я, конечно, тот ещё говнокодер, но можешь попробовать создать триггер на добавление записи в таблицу Project. Ну или мб там есть какое-то default value, не знаю
95 1956956
>>56086

>А не проще ли запускать тест с разными параметрами? Сначала с count < 2, а потом с count > 2.


Не слышал об этом, как это выполняется? Или я не понял тебя.
96 1956958
>>55809
Раньше pyside забагован был ужасно, щас они одинаковые. Но если юзаешь старые версии, то бери pyqt. Разницы никакой, тем более для россиянина, тут все хуй кладут на лицензии.
97 1956959
>>54896
Копипасти код с каких нибудь заданий или гайдов, изменяй под себя, делай что-то по подобию этого кода и со временем поймёшь как этот кусок кода работает.
Повторяй этот алгоритм пока не задрочишь все основы.
А потом уже можно статьи читать и понимать о чем там.
98 1956962
>>56640

> не объясняет на реальных прикладных задачах?


> Алсо, хочу вкатиться в дата саенс


Ебать довен. Начинай математику с 7 класса и до матана из универа иди.
99 1957073
100 1957146
>>56956
Я про это:
@pytest.mark.parametrize("count", [1,2,3,4,5])
def test_huest(count):
....assert count == 4
Так у тебя тест запустится 5 раз с разным count. Это если тебе надо просто проверять поведение с разными входными значениями. А если тебе подменить значение, которое метод возвращает, то это тебе monkeypatch нужен.
Ты бы конкретнее написал, что и зачем тестируешь, а то непонятно чего ты добиться хочешь.
101 1957207
Аноны, как гуглить методы и инструменты для безопасности сайта, https понятно, авторизация окей, но ведь есть еще много всяких вещей, ддос, у меня есть медиа, которые можно брутфорсить, чтобы забирать данные и т.д, уже узнал что от брутфорса спасает какая-то проверка через логи, но как в общем жта тема называется, что гуглить, подскажите
102 1957334
>>54138 (OP)
Мне нужно передавать некую переменную от страницы к странице, например - выбранный пользователем проект. На основе этой переменной будет рендерится контент на других страницах. Как это лучше всего реализовать? Запихнуть значение в request, или завести столбец в бд last_project?
103 1957343
>>57334
Обычно такое в сессии хранят.
104 1957352
>>57343
Вот примерно это и думал, да. Спасибо!
8f7ecb3415cda04c3969908ac18ce05a640x640.jpg63 Кб, 640x640
105 1957359
Аноны, короче нужна помощь с прогой под кодовым названием shithole.
Поступил заказ от организации (завод), прога должна отсеивать на входе людей так называемых SHITFACE
основной функционал я уже написал
if shitface == True:
lock door and fuck out
else:
welcome motherfucker

Осталось собственно написать нейронку которая будет детектить шитфейсы.
изображение.png1,4 Мб, 923x646
106 1957360
107 1957361
>>57360
Это из рекламы французского языка в чертаново?
108 1957362
>>57361
Ну типа
109 1957364
>>57359

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


Ее не надо писать, ее надо обучить. Для это тебе потребуется набор размеченных данных для обучения нейронки - фотокарточки шитфейсов. Разбиваешь датасет на две части, на одном обучаешь, на другом проверяшь. Все.
110 1957366
>>57364
А зачем тогда специалисты нужны? Если нейронки все уже написаны, и них только датасеты грузить
111 1957376
>>57366
Специалисты нужны, чтобы подкручивать параметры нейронки для увеличения процента распознавания. Для шитфейсов и стандартная из библиотеки сойдет.
112 1957379
>>57376
Ну понял. Я как-то с челом в офисе сидел, он там все дрочил модели свои, тоже все подкручивал что-то. Но я спросить постеснялся
113 1957380
>>57364
какова вероятность ошибок в таких случаях?
114 1957381
>>57379
Что за чел был. что он там крутил? аниме небось смотрел
115 1957384
>>57381
Да я ебу что ли? Да и если бы знал - не скзал, нда
116 1957391
>>57384
Почему ты такой скрытный?
117 1957393
>>57380
Именно для этого и нужна проверка на второй половине датасета. Я точно не знаю, но вроде бы, 1% процент ошибок уже считается плохим результатом. Но это скорее зависит от задачи.
изображение.png9 Кб, 374x240
118 1957395
119 1957399
>>57395
Ебать, ты солдат или коп? вы там нейронки крутите чтобы врагов народа палить за социальный рейтинг?
120 1957402
>>57399
Я уже там не работаю. Но дело было связано с инфобезом да
121 1957403
>>57393
Охуенно, вот бы вкатиться в эту тему.
как уменьшают количество ошибок? Просто кормят данными до предела или это не действенный способ?
122 1957405
>>57402
ты под подпиской о невыезде? почему ушел? не можешь теперь на иностранцев работать? соглашение о неразглашении пожизненное?
123 1957406
>>57405
Никакой подписки о невыезде, она была бы, если бы работал на гос.структуры. Тут же частная компания, но выиграла грант от государства. Соглашение на 5 лет подписано. Ушел потому что не мое, работа напряженная очень. Перекатился в веб и вроде не жалею
124 1957410
>>57406
теперь из дома фрилансишь или как?
когда закончится подписка о неразбазаривании? не боишся что набухаешся и проболтаешься?
125 1957414
>>57410
Не фриланшу, работаю на компанию
Через +/- 5 лет закончится
Не боюсь. Не пью
126 1957418
Вам когда-нибудь пригождался C?
127 1957430
>>57414
ты зожник? на какую контору пердолишься?
128 1957433
>>57418
какой именно? кресты, шарп, просто?
Алсо тебе пригождался паскаль или бейсик?
129 1957434
>>57430
Может, тебе еще фотку паспорта скинуть?
130 1957451
>>57433
Бля, если я написал C, без всяких ебучих шарпов и плюсов - что тебе не ясно? И при чем тут паскаль и бейсик? Дефолтный интерпритатор пистона на С написан, и есть неплохая возможность интеграции этих двух языков. Интересно узнать, пользовался ли ей кто.
131 1957497
>>57451
Он написан на CPython
>>57434
не, это уже лишнее
алсо у тебя есть паспорт?
132 1957560
>>55809
PyQt делает сторонняя фирма, а PySide та же фирма, что заведует Qt
Screenshot20210304214827.jpeg64 Кб, 790x577
133 1957653
>>55809
>>57560
О, как удачно я к вам зашел! Как раз на питончике ковыряю Qt. Пока туговато конечно идет, решил фронт для mpv запилить (как будто их мало) под свои нужды.

Так вот, есть может курс какой/набор литературы/рекомендаций по изучению? Я конечно с разбегу сейчас вхожу и с гуглом это работает, но через боль, карго культизм и стену непонимания ключевых концепций. На срутрекере книга на русике есть python3 и pyqt. Так там первая половина, блядь, это описание самого питона...
134 1957692
>>57653
так читай только вторую половину
135 1957770
>>57692
Логично
136 1957792
Двочане, я спрашивал ранее про асинхронный селери и прочее, сейчас задача для меня прояснилась, а я узнал о некоторых деталях селери, хочу рассказать о том как я хочу реализовать нужный функционал. Задача такая: при определенном запросе берется до нескольких тысяч записей(беруться сразу или потом по очереди пока неважно), для каждой записи нужно сделать запрос по сокету, ответ появляется спустя время(i/o bound), примерная нагрузка ~10 таких запросов в секунду на пике которые нужно отправить и обработать, но запросов которые отправляют может быть много и у каждого есть свой тариф, сколько запросов в час можно делать, а так же дни недели и часы в которые можно делать запросы. Отсюда мое решение: есть генеральная таска селери, которая принимает тысячи записей, дни недели, часы, тариф, после этого она берет текущее время, день недели и максимально плотно создает микротаски, которые запланированны на время, которое считается как время прошлой таски + тариф/3600, а так же проверяется можно ли в это время и эту неделю выполнять таску, если нет, то опять плюсуем время, пока не закончатся записи, после того как все микротаски созданы проходит время и они запускаются, вся их цель это взять из бд данные(либо получить через атрибуты просто(тут вопрос о том сколько памяти это будет занимать)) и запихнуть их в брокер в нужное время, далее асинхронная часть: есть контроллер, который в бесконечном асинхронном цикле мониторит брокер, если в нем появилась запись, то он добавляет в асинхронный луп таску, в ней формируется логика запроса и awaitится запрос к серверу, после ответа мы проделываем еще манипуляций с бд и завершаем таску, таким образом как мне кажется можно добиться высокой производительности и легкой скейлиться в случае увеличения числа запросов. Оцените мой опус, чувствую себя не обезьяной даже немного, очень бы хотел увидеть критику и предложения
Code2021-03-0423-53-47.png31 Кб, 661x661
137 1957794
Зайки, котятки, рыбки, объясните чому в питоне сигналы переменные класса а не инстанса и как это работает вообще.
Это типа ради понта сделано или глубокий смысл есть.
https://pastebin.com/Pj76UkUR
138 1957798
>>57792
Писал сюда во многом для того, чтобы точно сформулировать что я буду делать и понял важный момент пока перечитывал: можно откладывать время благодаря обычному asyncio.sleep(n), тогда задача селери сводится к тому, чтобы просто отдать нужные базы с записями в этот распределитель через брокер, а распределитель быстро создает асинхронные таски, у которых сразу установленно спать нужно время, потом они делают асинхронный запрос на сокет, ждут ответа и заносят в бд
139 1957807
>>57792
Так же один анон сказал подумать над тем что делать с перезагрузками, как думаете лучше использовать redis или просто добавить поле в sql бд которое будет проверяться при перезапуске?
140 1957816
>>57794
Разве это не nested class? Ты через parent класс обращаешься к nested и конструктором создаёшь уже объект. Почему так сделано хуй знает, чекни исходник
141 1957827
Как по-православному реализовывается execution branching при использовании argparse?
Допустим, есть скрипт, в котором два опциональных аргумента - не писать же для него четыре if-statement'а?
142 1957829
>>57827
Какие чертыре? Настраиваешь опциональность и потом проверяешь
if opts.opt1:
print('hui')
143 1957832
>>57829

> Какие чертыре?


Есть только первый, есть только второй, есть оба, нету обоих (тогда дефолтный поток идёт).
144 1957833
>>57832
Опциональность на то и опциональность, что добавляет какой-то дополнительный функционал, а не кардинально другой. Т.е. расширенный вывод или там запись в файл.
Что у тебя за опции такие?
145 1957835
>>57833
Первая отрезает последнюю часть потока, вторая (--path) задаёт альтернативный аргумент для функции из в любом случае остающейся части потока.
146 1957836
>>57835
Что за потоки, хуй проссышь. Код бы показал.
.JPG109 Кб, 956x983
147 1957840
>>57836
Ну, череда функций в main().
148 1957842
>>57364
А можно где-то посмотреть пример этого именно в коде ну какой-то элементарный.
149 1957843
>>57840
Да, ты просто неправильно структурировал. Сначала определяешь дефолтные паремтры, потом при наличии опции заменяешь.
Т.е.
param1 = default1
param2 = default2
if opt1:
param1 = opt1
И в конце один вызов.
150 1957844
>>56640
Начни с конспектов лекций по теверу и мат. статистике.
151 1957850
>>57843
Может, там и можно как-то сократить по такой схеме, но не вижу вариантов - всё равно будут повторные вызовы тех же функций в коде.
152 1957855
>>57850
Лол, как так. У тебя там большая часть логики с еблей с args.path
Почти вся эта портянка заменяется на один иф
if args.path:
target_path = args.path
И один вызов encrypted_name =
Логику с upload_to_mega я не уловил, но тоже решается одним ифом скорее всего.
Это же классический DRY, о котором в любой нубской книге талдычат.
153 1957857
>>57855

> if args.path:


> target_path = args.path


Это очевидно, но с таким подходом там всё равно будут почти одинаковые вызовы, потому что одна из опций отрезает часть дефолтного потока (как раз upload_to_mega). Будет спагетти, короче.
154 1957858
>>57857
Да с чего им быть, если ты вместо повторения один раз вызовешь?
155 1957860
>>57858
Не знаю. Я уже малость не в рабочем состоянии, так что завтра посмотрю.
156 1957881
>>57146
Я пытаюсь разбить юзеров на несколько тестов, которые ранятся параллельно.
16125116913330.jpg201 Кб, 850x1226
157 1957936
>>57816
где ты там нестед класс увидел
158 1957947
>>57792
Три раза прочитал, мало что понял.
Это у тебя все в одном потоке?
Обработка ответа не будет блокировать луп?
Как ты реализуешь точное время запуска таски?
Почему-то кажется, что эта штука будет потихоньку смещать запуск асинхронных задач и в итоге захлебнется. Но, повторюсь, я мало что понял.
>>57881
https://pastebin.com/78Q5TBqp
159 1957960
Кстати, подскажите ещё мне какое-то йоба-решение современное, заодно попрактикуюсь.
Есть список кейвордов, надо каждый день последовательно делать запросы для некоторого количества из них в определенное время. Т.е. сегодня ночью первые 1000, завтра ночью следующие 1000 и т.д. Всего это занимает пару недель, потом в следующем месяце всё по новой.
Пока я сделал простецкий, но надежный вариант - смотрим сегодняшнее число и берем такой по счету кусок списка из файла, потом для каждого кейворда формируем путь month/day/kw.html и если такого файла нет, то делаем запрос и пишем. Ну и по крону хуярить.
Можно бы переделать на БД, но особого профита нет, мне кажется.
Что могут предложить всякие брокеры-очереди и прочие современные хуйни?
160 1958010
>>57947
Смещение тасок это то о чем я думал, блокирующая функция будет выполняться например 5 секунд, тогда все функции у которых был слип на 1,2,3,4 секунды просто встанут в очеред и после блокирующей выполняться сразу подряд без ожидания, т.е они запустяться либо в точное время, либо чуть позже, когда блокирующие завершаться, но это действительно резонный вопрос, поэтому есть еще 3-й вариант, не использовать в одном патоке расчет времени для таски, а оставить его в селери и тогда опять же передавать именно в брокер все данные + отложенное время, которое будет браться главной всинхронной таской в лупе, это так же важно для скейлинга, чтобы забирать сообщения могли другие потоки/процессы(до сих пор не углублялся в разницу). Если я могу объяснить что-то подробнее, то напиши что, а то я так доволен своим решением что некоторые вещи кажуться очевидными для меня. Единственная проблема в том что я до сих пор не нашел как добавлять таски в луп и делать асинхронные запросы по сокету, обычно только про http пишут, но думаю мне просто нужно поискать
161 1958093
>>58010

>блокирующая функция будет выполняться например 5 секунд


Из-за чего она блокироваться будет? Из-за загрузки процессора или ещё из-за чего-то?
162 1958160
>>58093
Нужно ведь тысячи записей просчитать, она cou bound будет, поэтому она блокирующая и асинхронность на нее не работает
163 1958162
>>58093
Поэтому мне кажется лучше выносить ее в селери, и она в брокер будет отдавать просто записи с нужным временем, а при необходимости асинхронную хуйню можно вынести на отдельную машину, можно мультипроцессинг сделать(т.к операции однотипны и простыее мне не нужны треды, разве что процессы, верно ведь?)
164 1958296
пацаны если не смогу найти себе контору говна, реально ли в текущем году зарабатывать фрилансом если ты не сеньор 300к/сек с кучей заказчиков в друзьях на фб? и если реально, где вы это делаете
165 1958385
>>58296

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


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

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

Вот и сам думай. А ты сам понимаешь, чем асинхронное программирование отличается от многопоточного? Обеими технологиями владеешь?
166 1958403
>>58385

>Многопоточное


>GIL

167 1958404
>>58162

>Поэтому мне кажется лучше выносить ее в селери


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

Не уверен, что от неё большой профит, если у тебя на базе asyncio проект.

Если у тебя большие cpu-bound задачи, то тут только вариант воркеров.

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

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

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

Можно ещё иначе, ты можешь переделать свою задачу так, чтобы она была не блокирующей, если там большой цикл, то разрешить в какой-то момент переходить на исполнение других задач, вставить регулярные
await asyncio.sleep(0.00001),
но не 0, это мы обсуждали уже. Можно свою процедуру - корутину сделать для переключения, но работать она будет не быстрее.

Чтобы раз в 0.1 секунду, например, подобная операция вызывалась и разрешала переключить задачу.

Слишком часто вызывать не надо, переключение задачи на самом деле довольно дорогая операция.
168 1958406
>>58403
Ты путаешь многопоточность и параллельность.

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

Их цель обходить блокировки в первую очередь.

Многопоточность - это несколько потоков-ветвей исполнения кода, когда у каждой свой стек вызовов и свои регистры.
169 1958441
>>58404
Да, та задача по высчитыванию таймера для каждой записи cpu bound, там тупо вычисления и поэтому я ее оставлю на celery, смогу спокойно поднимать воркеров, а слип(0.00001) буду использовать для проверки в цикле брокера на новые сообщения. Да, celery здесь не нужен на самом деле, потому что я всю планировку перенес на asyncio.sleep() у себя в голове, я его хочу оставить только потому что он позволит отдавать ответ джангой сразу, а вычислениями займется позже, а asyncio нужен потому что сами вычисления с записями это строк 10, не больше, проблема в том что внешний сервер может отдавать значение долго, возникает i/o bound, а если из-за нагрузки внешний сервер начнет по 5 сек отвечать, тогда даже не знаю как без асинхронности, создавать по процессу/воркеру/потоку на каждую запись не вижу смысла, там одного потока достаточно? да и опыта с многопоточностью не было нормального, кроме хело ворлд
170 1958450
>>58385
Сгущаешь краски, после выполнения спрошу кто были конкуренты, я то сам по ощущениям вообще ребенок, собесы это просто моя самопрезентация, показывал что я адекватный и рассказывал про опыт и как планирую реализовывать проект, поэтому еще недели 1,5 назад спрашивал, пока прогал 3,5 дня и уже получил свои 230$, просто пришлось час потратить на документацию drf и потом написать, протестировать код, сейчас пишу сюда скорее для общения и почитать чужие мысли, сами технологии не слишком сложные ведь, прочитал квик старт, почитал доки, если надо залез в исходный код и по переопределял что надо, все
>>58296
Если опыта нет, а кушать нужно вчера, то такая себе идея, я только вкатываюсь во фриланс по сути, это мой первый коммерческий опыт, искал изначально на веблансере, писал парсеры, бота, небольшой бек, немного работы просто с вебом, потом зарегался на хабр фриланс и нынешний заказчик нашел меня сам, как закончу с этим меня ждет старый клиент и один еще написал что ему нужна помощь, но я не уточнял какая, попасть на разработку бота или нормального бека сложно, в основном там требуются знания битрикса, сrm, и прочего пхпшного, у меня пара заказов слетали после переговоров, в остальном мне нравится, для студента самое то, вместо анальной галеры в маке я вот чаек пью
image.png73 Кб, 995x577
171 1958463
Кто-то знает, почему это выдаёт тру? Флоат же должен выдавать фолс, а оно работает на месте, где инт запланирован
172 1958486
>>58463
isdigit()
173 1958495
>>58486
Ебучий случай. Ты мой герой
174 1958524
>>57947

>Это у тебя все в одном потоке


Там есть метод, который по названию теста выбирает юзера из листа юзеров. Например, запускаю тест - тест_почты - перед запуском метод выбирает соответствующего юзера из списка, который будет тест_почта_юзер1, которых скажем 4 для параллельного запуска. Далее тест ранится, никаких проблем. Так же есть ещё тесты завязанные на этого же юзера. Когда запускаешь по одиночке все работает.
Теперь, когда запускаешь несколько тестов сразу И выбираешь несколько параллельных инстеесес-n4 (ранит сразу 4 теста за раз используя всех 4 юзеров).
Проблема: когда запускаешь несколько свитов, которые используют одинаковых юзеров, как только юзеры в листе закончились пайтест xgist возьмёт по новой юзера, который уже ранит тесты. Тот юзер будет logged out и тест будет фейл. Надеюсь так примерно понятно.
175 1958657
>>57798
В следующий раз пиши это не на двач, а в свой блокнот, и, перечитывай несколько раз, рефактори свои мысли и формируй план действия/рисуй рисуночки. Когда поймешь, что план готов, можешь уже и начинать реализовывать, а можешь и анону отправить.

Уже четвертый год так живу. Зависимость есть.
Такой метод называется рассказать утке, только вместо утки рассказываешь блокноту (себе).
176 1958661
>>58524

> Надеюсь так примерно понятно.


Нет. Учись по пунктам писать.
177 1958712
>>57858
Таки ты был прав. Жёстко затупил вчера - за три минуты сегодня пофиксил.
178 1958732
Ух бля, кбучий селери. Половину рабочего дня пытался понять что такое celery exited with 'signal 11 (sigsegv). Оказалось, что это баг селери и его не собираются принципиально фиксить, пока не переедут на новую архитектуру. Какое же говно, пиздец
179 1958738
Есть в стандартной либе http клиент с ретраями без говняка? На всю ту хуйню из requests, с mount, session, adapter смотреть невозможно.
180 1958743
>>58738
В стандартной либе базовый клиент, который требует дохуя бойлерплейта, реквестс достаточно пару строчек.
181 1958747
>>58743
Ну и как ретраи делаются в пару строчек у requests?
182 1958751
>>58747
Я про простые запросы, для ретраев в любом случае придется городить огород.
183 1958752
>>58657
Если бы я сразу сюда писал, то это вообще треш будет, так да, сначала в блокнот формулирую, рефакторю, но потом когда отправляю как обычно умные мысли приходят сразу, поэтому у меня по итогу суммарно 3 способа вышло, каждый лучше предыдущего
184 1958755
>>58732
Я сегодня ахуел с того что в пучарме есть баг с импортами, он не видит нормально иногда модули и подсвечивает красным, а это так тригерит, что даже нашел комментарий, который убирает, а потом переделал структуру вообще, чтобы этой зуйни не было, но самое отвратительное, что год назад я только вкатывался и как же я себя тупо чувствовал, когда мне скинули проект, я его открыл, а там строк 10 красных, гуглить не умел, спрашиваю что за ошибка у человека кто скинул, а он говорит нет там ничего, все нормально и только вот сегодня узнал что это был баг и за год его не пофиксили
185 1958791
Анон. Есть дохуя текста, текст этот постоянно меняется, но там есть строка которая никогда не меняется, мне нужно взять слово находящееся слева от этой строки, слово это может быть любой длины, как это можно сделать?
187 1958930
>>58751
А нахуй ты мне про простые запросы отвечаешь, если вопрос был про ретраи? Ты тупой?
axFHolHuWOA.jpg166 Кб, 765x1080
188 1958957
Как сделать, чтобы в VSCode мои .py файлы открывались во внешней коммандной строке?

Меня встроенный терминал бесит что на него постоянно надо мышкой переключаться, а командная строка перехватывала бы фокус.
189 1958965
>>58957
Сначала прочитай про хоткеи
index.mov901 Кб, mp4,
2188x1362, 0:03
190 1958968
>>58957
Вот так надо?
191 1958970
>>58965
Ctrl + Sh + C лишь открывает терминал внешний, но не запускает в нём открытый файл.
192 1958971
>>58968
Да, чтобы у меня курсор ввода перескакивал в терминал, а то часто запускаю его и вместо ввода данных сру в код, потому что курсор не перескачил.
Снимок экрана 2021-03-06 в 13.50.45.png272 Кб, 890x982
193 1958977
>>58971
Посмотри дефолт, либо добавь сам хоткеи в конфиг
194 1958978
>>58977
Да эти хоткеи уже есть и я про них знаю. Но они не запускают файл, а просто открывают терминал или внешнюю КС.
195 1958980
>>58978
Ну я даже не знаю. Вверху есть кнопка запуска текущего файла. Если тебе прям хоткей нужен, пиши сниппет свой
196 1958981
>>58980
Спасибо.
197 1958985
>>58981
Либо вот у меня ctrl+alt+n. Но я таким не пользуюсь, у меня все через входной файл работает, за редким исключением.
Помощь по Python 198 1959026
Анон, прохожу онлайн интенсив не скилбокс и тд . Зашел в итоговые задания после прохождения всего материала +250часов и там вообще не выкупаю нихуя.
Дан набор
Помощь по Python 199 1959030
try n2.
Дан набор данных:
3
YKW89OEOCITYODO,2018-07-24T14:40,1000.00
XMV928G6WUX582L,2020-09-09T06:45,9500.30
0PEZX4TUY3I4ZRZ,2018-03-31T04:33,5320.45
нужно привести к:
Номер бронирования YKW89OEOCITYODO, забронирован 2018-07-24T14:40. Цена: 1000 руб. 00 коп. и тд.
Как читать эти данные построчно с добавлением нужного текста?
Данные вводятся через input и должны сами читаться и выводиться в заданном формате в строку.
Как проигнорировать это число N в первой строке в выводе.
image.png49 Кб, 534x574
200 1959143
Такая вот вещь. Есть массив и я его транспонирую через стандартное array.transpose()
А как можно сделать другие виды этой хуйни? Как на пике ниже?
Можно ли через transpose или надо самому всё перебирать?
1 пример реализован стандартной функцией
201 1959269
>>59143
2) np.flip(array).transpose()
3) np.flip(array, 1)
4) np.flip(array, 0)
202 1959293
>>59269
Благослови господь твою добрую душу
203 1959341
>>59030
Где ты видишь N?
204 1959458
>>58985
>>58980
>>58978
>>58977
>>58968
>>58957
Всё. Сделал, посоны.
Сделал как хотел просто поменяв в конфигураторе запуска 12 строчку на externalTerminal и теперь при запуске кода он просто открывает консольку внешнюю.
205 1959729
>>59341
N число это тройка, которая есть в Input, но не должно быть в Output
206 1959732
https://itman.in/python-windows-virtualenv/
Написано
"Для установки выполните команды:
pip install virtualenvwrapper-win
pyassoc"
Какой еще нафиг pyassoc, его нигде нет, что это за скрипт такой?
207 1959742
>>59732
Это какая-то легаси хуйня, сейчас пользуются искаробочным venv
208 1959854
>>59729
Кекнул с нубаса
209 1959863
Какие могут быть причины связанные с устройством языка, чтобы выбрать python или node, типа кроме случаев что у нас уже есть проект на одном из яп, вроде библиотек достаточно и там и там, типизация в ноде строгая, разве что разработка в питоне быстрее или есть существенные различия. А так же как вы думаете стоит ли свитчиться на жс?
210 1959866
>>59030
Как ты вообще планируешь заниматься дальше? Задача элементарная
Накидал навскидку, проверки сам допилишь
def get_data():
val = input()
val = val.split(',')
if len(val) != 3:
print('fuck you nigger')
return get_data()
money = val[2].split('.')
if len(money) == 2:
return val[:2] + money
print('fuck you')
return get_data()

n = input()
try:
n = int(n)
except ValueError:
print('fuck you nigger')
exit(0)

assert n > 0

l = []
for i in range(n):
data = get_data()
print('{}, {}, {} {}'.format(*data)
210 1959866
>>59030
Как ты вообще планируешь заниматься дальше? Задача элементарная
Накидал навскидку, проверки сам допилишь
def get_data():
val = input()
val = val.split(',')
if len(val) != 3:
print('fuck you nigger')
return get_data()
money = val[2].split('.')
if len(money) == 2:
return val[:2] + money
print('fuck you')
return get_data()

n = input()
try:
n = int(n)
except ValueError:
print('fuck you nigger')
exit(0)

assert n > 0

l = []
for i in range(n):
data = get_data()
print('{}, {}, {} {}'.format(*data)
211 1959870
>>59866
def get_data():
__val = input()
__val = val.split(',')
__if len(val) != 3:
____print('fuck you nigger')
____return get_data()
__money = val[2].split('.')
__if len(money) == 2:
____return val[:2] + money
__print('fuck you')
__return get_data()

n = input()
try:
__n = int(n)
except ValueError:
__print('fuck you nigger')
__exit(0)

assert n > 0

l = []
for i in range(n):
__data = get_data()
__print('{}, {}, {} {}'.format(*data)
Screenshot 2021-03-07 at 19.34.37.png19 Кб, 742x182
212 1959949
Как проитерироваться через лист чтобы вытащить индексы по правилу от первого 0 до последней единицы в последовательности(сорян за кривое объяснение в скрине вторая строка, это что я хочу получить, палочками отделил нужные последовательности).
213 1959989
While круче for?
214 1959993
>>59989
Это разное.
215 1959995
>>59993
Это другое
216 1960022
>>59949
Пижже не придумал.
https://ideone.com/Hjlvvk
217 1960030
>>60022
Спасибо большое анонче. А то я весь вечер гадаю как это сделать.
218 1960082
>>59729
pizda = ["3",
"YKW89OEOCITYODO,2018-07-24T14:40,1000.00",
"XMV928G6WUX582L,2020-09-09T06:45,9500.30",
"0PEZX4TUY3I4ZRZ,2018-03-31T04:33,5320.45"]

def dzhigurda(stroka):
parsed_stroka = stroka.split(',')
if len(parsed_stroka) < 3:
return
print(f'Nomer bronirovania {parsed_stroka[0]}, zabronirovan {parsed_stroka[1]}, cena {parsed_stroka[2]}')

for hui in pizda:
dzhigurda(hui)
219 1960107
>>59863

> типизация в ноде строгая


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

> Какие могут быть причины связанные с устройством языка


Во-первых, читаемость. В питоне отступы это часть синтаксиса и просто бегло взглянув на код можно понять где что находится. ЖС это ехал калбек через калбек и все это в одну строку. да, не все пишут как мудаки, но сам язык никак это не регулирует. Так что в код каждой библиотеки будешь вчитываться как в первый раз.
Во-вторых, сложность анализа чужого кода. Тебе придется рано или поздно лезть в код библиотеки что бы понять какого хуя происходит. Библиотек дохуя, а документации нихуя. В жс это особенно выражено по моему личному опыту. И если ide типа пучарма как то пытаются найти откуда взялся этот класс или функция и предложат на выбор несколько мест. То в жс текстовый поиск твой лучштй друг. Импорт это просто текстовая строка котопрую нода переваривает внутри себя. Оно импортируется и рабоатет, но не факт что текстовый поиск найдт откуда она взялась.
В-третьих, отсутствие обратной совместимости. Питон можно обновлять спокойно и быть увепеным, что код для 3.5 запустится на 3.9 Ноду тебе придется откатывать. Ты сидишь на своей 12 и никого не трогаешь, но потом нужная тебе библиотека говорит что ей нужна от 10 до 11.

> А так же как вы думаете стоит ли свитчиться на жс?


Это путь в один конец. Люди которые начинали с ноды потом очень хуево пишут на нормлаьных ЯП. мы уже от двух таких на работе избавились.
Но решать конечно тебе.
220 1960161
>>59863

>Какие могут быть причины связанные с устройством языка, чтобы выбрать python или node,


Сама нода хороша, по некоторым моментам удобнее питона, часто быстрее, но JS слишком убог и крив, ни в какое сравнение с питоном не идёт.

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

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

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

Вообще очень много всего такого.

Питон как язык программирования несопоставимо лучше JS.

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

Правда с нодой тоже не так просто, потому что её делали по принципу callback based, а сейчас стандарт это async/await. В JS с этим нормально, но проблема в том, что ключевые либы всё-таки в старом стиле сделаны.
221 1960170
>>60107

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


Ну нет всё-таки. Как и в ноде, всё зависит от конкретных либ.

В случае либ на базе asyncio, там довольно много фич с depricated поведением, про которые сказано, что из выпиливают с версии 3.5-3.8-3.9-3.10 и т.п.

А область применения ноды как раз пересекается с питоном по asyncio.

Пишу и на ноде, и на питоне.
222 1960271
>>60161
Типо питон медленнее переключает задачи асинхронные? Вроде и там и там асинхронноть на генераторах сделана, непонятно тогда почему так, бенчмарков не нашел никаких, если у тебя есть, то скинь.

>Ноду используют для сервисов на серверах.


Неужели эта скорость настолько критична? Тогда что остается питону из бека, если не сервисы
223 1960278
Аноны, какого хуя в pyqt не работает драгндроп изображений? Текст перетаскивает, изображения нет.
Сначала подсмотрел способ тут:
https://learndataanalysis.org/how-to-implement-image-drag-and-drop-feature-pyqt5-tutorial/, потом скопировал полностью, но один хер.
Менял hasImage() на hasFormat('image/*'), тоже ничего.
мб есть что-то более вменяемое, чем qt-высер, потому что это просто, блять, акт поедания говна
224 1960286
>>60161
https://www.techempower.com/benchmarks/
Хз что это за бенчмарки, но судя по ним у питона совсем все грустно(
И ведь действительно, если важна скорость переключения задач, то может вообще писать с++ каком-нибудь, чтобы была прям максимальная производительность
как открыть ебучий IDLE из командной строки? 225 1960316
Суть такова, что нужно установить python на несколько машин и тратить время на поиск и создание ярлыка для стандартной IDLE попросту нет. Как известно процесс стандартной оболочки идет под именем pythonw.exe. Вбиваю в cmd это и...нихуя! В чем дело блять? Любая другая залупа всегда открывается через win-r + выполнить, но не IDLE. В чем может быть дело???
226 1960318
Не хочу набрасывать, правда интересно. Как пишут сложные вещи на Питоне? Со сложной иерархией и все такое. Просто не понимаю, вот например: реализую какой-нибудь лисенер, в него падают различные обьекты. Явных типов нет, так что для того, чтобы понять что это за обьекты, что в них надо подергать - надо лезть в кишки или в доку, потому что в обьектах( да и сами обьекты) может быть что угодно. Может прилететь обьект-носорог, а может гироскутер - делай с этим что хочешь. Например в тех же строгих языках вроде джавы все сразу ясно - вот описан в параметре носорог, будем работать с носорогами.
227 1960342
>>60286

>Хз что это за бенчмарки, но судя по ним у питона совсем все грустно


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

>>60286

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


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

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

Быстрый go, он как раз вот на такие задачи заточен, но уж слишком low level.
228 1960345
>>60318

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


Зато не можешь в одном словаре хранить и носорогов, и гироскутеры одновременно.

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

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

От простых ошибок, если ты вместо объекта возвращаешь список объектов, или не учёл, что может быть объект, а может быть None, полноценно защищает typing.
229 1960358
>>60345
Я вот кстати наоброт не понимаю темы с типизацией, в питоне она благо строгая, но если у тебя есть метод или функция, то ты сначала читаешь что в нее нужно передать, если нужно передать инт, то как ты можешь туда словарь запихнуть непонятно, насколько сложным должно быть приложение, чтобы в параметр типа time_stamp передать строку и потом жаловаться на питон
230 1960374
Джангисты, хелп, мне нужно вместе с джангой включать отдельную программу, а в ней я бы хотел просто использовать модели из джанго орм, но когда пытаюсь имортить их, то все идет по пизде, как это можно реализовать, просто импортить наверное плохое решение, ибо там луп бесконечный, тредить или мультипроцессить я не хочу и думаю это плохая идея, как быть, выручайте
231 1960375
>>60358

> в питоне она благо строгая


Где вы этих сказок наслушались?
Допустим есть код:
a = 1
a = 'one'

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

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


Смотри пример выше. Просто берешь и пихаешь. Питон не компилируемый язык и компилятор тебе ошибку не подсветит. Есть плагины, которые при написании кода в фоне пытаются его скопмилить и вот они уже подсвечивают ошибки. Но это все костыли. Сам язык слишком гибкий и позволяет жанглировать типами. По сути все объекты в питоне это просто указатели на память. А вот уже у того что там лежит есть тип. Но передаешь ты именно ссылку.
232 1960376
>>60374
Нихуя непонятно что ты хочешь. тебе нужна просто орм как в джанге потому что джангу ты использовать не собираешся вообще? Или тебе параллельно с работающей джангой нужно иметь возможность шатать базу?
233 1960382
>>60376
2-е надо, уже нашел решение вроде как, создал свою команду для manage.py и если ее писать, то запускается отдельное приложение, которое вроде может юзать орм
234 1960384
>>60375
Так это другое вроде, я, конечно, не эхсперт, но питон в отличии от жса не позволяет неявно преобразовывать типы, типа "one"+int(1) получишь ошибку, надо сначала поменять тип переменной, это ведь строгость, зато она неявная и поэтому можно писать a = "foo" a = 1
235 1960386
>>60382
Нахуя тебе mange.py? Какую хуйню ты творишь? Просто импортируй в скрипт модели и саму джангу. Выполни в первых строках django.setup() и дальше работай с моделями как в джанге.
236 1960387
>>60384
Строго типизированный язык требует что бы ты указал сначала какого типа переменная, а уже потом присваивал ей значение. Питон этого не тебует.
237 1960390
>>60375

>В питоне он отработает без ошибок и переменная будет иметь тип str


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


Если у тебя такие ошибки, то это исключительно твои проблемы. В своём типизированном коде ты сделаешь
a = 1
...
a = 2
и получишь ошибку, потому что будешь думать, что у тебя a=1. Или там у тебя разные области видимости.

Типизация тебя не спасёт никак.

Если у тебя ОО программа, то ты легко можешь словить ошибку типа, когда у тебя функция может возвращать разные объекты, возвращает их класс-родитель, но ты ждёшь наследника другого типа. Один-в-один ситуация, как в питоне, просто в питоне ты object ловишь.

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


Это позволяет избавиться от большинства ошибок. Например, если ты возвращаешь строку '1', а не число 1, то это отловится на ура. Это не плагины, а специальные модули вроде mypy. Более частая история, это когда у тебя функция может вернуть объект, а может None, но ты этого не учёл. Вот на раз ошибка будет обнаружена, что твой код ситуацию не обрабатывает. А в типизированных языках не всегда, кстати, потому что в таких случаях возвращают NULL, на который надо проверять явно, иначе segmentation fault. Довольно частая ведь история.

Статическая типизация страхует от примитивных ошибок, хотя нередких, но инструменты вроде typing с этим тоже справляются неплохо. Они же и документируют неплохо. Хотя неэстетичны в плане кода.

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

Серьёзный профит от статической типизации совсем в другом, не в ловле ошибок. Она в том, что позволяет оптимизировать код очень сильно. Сложить две переменные статического типа int, это классово другая история, чем применить операцию сложения к двум объектам типа int. В первом случае одна инструкция процессора и возможности для дополнительной оптимизации кода, во втором случае немеренный оверхед. Настолько дикий, что арифметика и байтовые операции могут работать в сотни раз дольше. Вот именно здесь критически важна статическая типизация. А никак не в ловле ошибок.
237 1960390
>>60375

>В питоне он отработает без ошибок и переменная будет иметь тип str


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


Если у тебя такие ошибки, то это исключительно твои проблемы. В своём типизированном коде ты сделаешь
a = 1
...
a = 2
и получишь ошибку, потому что будешь думать, что у тебя a=1. Или там у тебя разные области видимости.

Типизация тебя не спасёт никак.

Если у тебя ОО программа, то ты легко можешь словить ошибку типа, когда у тебя функция может возвращать разные объекты, возвращает их класс-родитель, но ты ждёшь наследника другого типа. Один-в-один ситуация, как в питоне, просто в питоне ты object ловишь.

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


Это позволяет избавиться от большинства ошибок. Например, если ты возвращаешь строку '1', а не число 1, то это отловится на ура. Это не плагины, а специальные модули вроде mypy. Более частая история, это когда у тебя функция может вернуть объект, а может None, но ты этого не учёл. Вот на раз ошибка будет обнаружена, что твой код ситуацию не обрабатывает. А в типизированных языках не всегда, кстати, потому что в таких случаях возвращают NULL, на который надо проверять явно, иначе segmentation fault. Довольно частая ведь история.

Статическая типизация страхует от примитивных ошибок, хотя нередких, но инструменты вроде typing с этим тоже справляются неплохо. Они же и документируют неплохо. Хотя неэстетичны в плане кода.

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

Серьёзный профит от статической типизации совсем в другом, не в ловле ошибок. Она в том, что позволяет оптимизировать код очень сильно. Сложить две переменные статического типа int, это классово другая история, чем применить операцию сложения к двум объектам типа int. В первом случае одна инструкция процессора и возможности для дополнительной оптимизации кода, во втором случае немеренный оверхед. Настолько дикий, что арифметика и байтовые операции могут работать в сотни раз дольше. Вот именно здесь критически важна статическая типизация. А никак не в ловле ошибок.
238 1960392
>>60386
Ну есть и этот способ видимо, у меня команда просто запускает main() и ебаться с конфигами не нужно
239 1960394
>>60387
Главная разница в том, что в статическом случае компилятор знает, какой тип, и делает соответствующий машинный код. Там другой тип поставить невозможно, и работает это быстро.

В динамическом проверка проводится runtime, машина лезет в объект, видит, какой-там тип, и применяет операцию к этому типу. Классический полиморфизм, классическое ООП прямо на самом базовом уровне.

Самая главная проблема в том, что это дико накладно. Всё остальное не проблема.
240 1960400
>>60390

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


Уже именно в ловле ошибок. Потому что люди на работу приходят с таким минимальным набором заний, что вся надежда только на IDE и ее встроенные првоерки. Если вы пошли работать в питон, то это уже не про скорость работы программы. Это про скорость разработки. Во всяком случае у нас так.
241 1960402
>>60387
Ору, только что пытлася писать что какой дурак не поймет что передавать в функции и т.д и сейчас фиксил минут 15 баг в асинхронном скрипте, который не писал ошибку, пока я try except не поставил и не увидел что у меня почему-то строка передается, а не инт
242 1960413
>>60278
Сделал то, что требовалось, на Kivy, столкнулся лишь с проблемой пермишнов на винде, которая фиксится принудительным запуском в нормал моде. Если найдется знаток pyqt, пусть объяснит, собственно, какого хуя нельзя реализовать примитивный функционал без сеанса копрофагии.
241775738.png162 Кб, 1000x930
243 1960421
Просто пришёл похвалиться. 16 часов непрерывной работы сегодня, и я сделяль
244 1960433
>>60278
Эх, года 2 назад спросил бы и я тебе прям код принес, а сейчас уже хуй найду. Но делал, да.
245 1960491
>>60421
ты псих? и что сделал?
246 1960502
как открыть ебучий IDLE из командной строки?
Суть такова, что нужно установить python на несколько машин и тратить время на поиск и создание ярлыка для стандартной IDLE попросту нет. Как известно процесс стандартной оболочки идет под именем pythonw.exe. Вбиваю в cmd это и...нихуя! В чем дело блять? Любая другая залупа всегда открывается через win-r + выполнить, но не IDLE. В чем может быть дело???
247 1960593
>>60502
У меня так прописано.
C:\Python37\pythonw.exe "C:\Python37\Lib\idlelib\idle.pyw"
248 1960651
>>60593
Как запустить без предвратильного указания направления?. Без слешов. Как оперу или хром
249 1960688
>>60651
Подозреваю, что можно замутить однострочник на самом питоне для этого, но мне лень.
250 1960689
>>60345

>>Зато не можешь в одном словаре хранить и носорогов, и >>гироскутеры одновременно.



Могу, никто не мешает в дженерик Object сунуть. Другой вопрос что это будет плохой код в большинстве случаев. Опять же есть PECS(<? super T>, <? extends T>) .

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

>У тебя параметр может принимать или метод может возвращать не носорога, а просто объект "хрень какая-то", от которой


наследуется и носороги, и гироскутеры

Это будет не какая-то хрень, а базовый тип. Который, скорее всего, позволит мне сделать все то, что я хочу сделать(если абстракция хорошая). Если нет - ну буду приводить, куда деваться. И с виду это лучше, чем попытаться дернуть поле и не получить его, потому что обьект тот, кек.
251 1960808
всем привет, хочу вкатиться в питон, чтобы с помощью него вкатиться в сэб(джанго). наслышан о томе, что надо знать матан, диффуры, интегралы и вот это вот всё и только тогда ты поёмешь питон.
какие сложность будут в изучении у меня?
25 лет, знаю только верстку, чуть-чуть на базовом синтаксисе пыху и сам по себе не тупой васян. туповатый слегка, но не тупой.
252 1960821
>>60808

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


Тебе напиздили. Вообще ничего знать не нужно.

> какие сложность будут в изучении у меня?


Если вместо того что бы почитать что такое джанга, ты постишся на дваче у тебя уже проблемы с поиском источников информации.
253 1960833
>>60808
Умеешь в столбик делать арифметические операции?
А то надо быстро роуты считать в джанге.
254 1960967
>>60821
Спасибо за ответ!
Я знаю, что это за фреймворк и для чего он нужен. Просто я сторонник того, что для начала надо выучить язык достаточно хорошо, а только потом садиться за фрейм.
Но всё равно, благодарен за ответ тебе
255 1961031
>>60967
Есть всего один способ выучить язык - это сесть и начать на нем писать. Не эти ваши псевдокурсы, а реальную программу у которой может быть релаьное применение. даже если это применение нужно только тебе. Проэтому садись и пиши.
256 1961056
>>60433
Ради любопытства дожал pyqt и выяснилось, что нужно либо использовать hasUrls(), чтобы не было привязки к типу данных, либо вешать setAcceptDrops на мэйн виджет после инстанциирования. Киви понравился мне больше - видно, что документацию писали нормальные люди для людей.
257 1961081
Кто-нибудь делал такую штуку как proxy объекты?

Есть некое устройство с описанными методами:
чтение/запись, для него возможно создать несколько вариантов реализации Serial или Usb, хочу инкапусулировать логику по выполнению команд (вынесены в DeviceProtocol):
типо:
class DeviceProto:
proxy = DeviceProxy()

proxy.write(b'\x01\x02')

Но потом при реализации мне надо подменить proxy реализацией.
258 1961198
>>54138 (OP)
Значит так, есть две кнопки: одна запускает цикл с мониторингом сайта, а другая по идее должна убивать его нахуй, как реализовать? Пишу примитивного бота, используя aiogram, спасибо
259 1961378
>>61198
Ну раз бот простой

бежать = ложь

def нажать_кнопка()
global бежать
if бежать == истина:
бежать = ложь
if бежать == ложь:
бежать = истина

покуда:
if бежать == ложь
sys.выход()
if бежать== истина
распечатать('текст')
260 1961427
Можно как-то значения из метода одного класса передать в метод другого класса? Решил обернуть свою программу в PyQt5, а там оказывается при запуске моего цикла дохнет цикл интерфейса. А если подключать QThread, то он в отдельном классе и хуй передашь переменные введенные в окне. НУ ЙОБАНАРОТ.
https://pastebin.com/8cPUgrfk
261 1961430
>>58755
Это короче та хуйня с импортами, когда пукчарм путается в относительных и абсолютных импортах и светит красным абсолютный импорт?
262 1961431
Как же сложно оценить производительность, я думал запросов 10/сек это уже небольшая нагрузка на программу, которая должна делать запросы, хранить все в памяти, делать вызовы и работать с бд, по итогу все делается идеально и потребляет всего 1-3% от цпу/озу на моем некрокомпе, расскажите сколько запросов может выдерживать средний впс?
263 1961435
>>61430
Да я уже там запутался, точно помню что есть структура name1/name1/name2/script.py и пучарм не хочет импортить from name1.name2.script, подчеркивает коасным, но запускается, но если поменять на from name1.name1.name2.script, то пучарм скажет все окей, маладца, а питон уже пошлет нахуй. А еще есть релятивные импорты из-за которых отдельный файл джанги не запустишь, а с обычным нерелятивным импортом не запустится уже джанга. Импорты вроде и удобные, но с ними энивей так много ебли, когда вообще в питоне не понимал это вообще ад
264 1961437
>>60688
>>60502
Надо добавить соответствующие пути в системную переменную path, в ней содержатся пути, по которым система ведет поиск, когда ты забиваешь команды без полного пути
265 1961452
>>60375

> > в питоне она благо строгая


> Где вы этих сказок наслушались?


> Допустим есть код:


> a = 1


> a = 'one'


> В питоне он отработает без ошибок и переменная будет иметь тип str


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


И как из этого следует, что язык не строго типизированный? Динамическая типизация о том, какой тип данных можно положить в переменную. Строгая типизация о том, как в процессе работы с типами данных они могут измениться. Ты тёплое с мягким путаешь.
266 1961456
>>61452
Нет, он не путает вроде, сам перечитал вчера, есть явная/неявная, сильная/слабая, статическая/динамичная, я так полагаю что строгой называют просто явную сильную статическую типизацию, как в с++ вроде, а в питоне она динамическая и неявная, поэтому ее не называют строгой я так полагаю
267 1961461
>>61435
Да не, с импортами в питоне все просто, когда разберёшься))) Есть два типа импорта — относительный и абсолютный. Абсолютный импорт идет относительно точки входа программы, а относительный импорт идет относительно файла, в котором он используется. Если на примере, то будет так:
tochka_vhoda.py
papka1
---file1.py
---papka2
------file2.py

И если ты в tochka_vhoda.py импортишь file1, то будет import papka1.file1
Если в tochka_vhoda.py импортишь file2, то будет import papka1.papka2.file2
Если из file1 импортишь file2, то будет уже import .papka2.file2
То есть, добавляешь точку, показывая, что импорт относительный. Если импортишь вверху относительно, к примеру, из file2 импортишь file1, то будет import ..file1
Но главная проблема в том, когда тебе надо из file2 импортить что-то из tochka_vhoda.py Это кажется кривым, пока не оказывается, что импортить относительно нельзя не только из самой точки входа, но и из всего, что находится в одной папке с ней. А сюрприз-сюрприз в джанго файл мэнэдж находится на одном уровне с приложениями. И импортить что-то из одного в другое каждый раз пиздец геморрой. И отображение таких финтов в пукчарм каждый раз идет с ошибкой
268 1961463
>>61456

> Нет, он не путает вроде, сам перечитал вчера, есть явная/неявная, сильная/слабая, статическая/динамичная


> я так полагаю что строгой называют просто явную сильную статическую типизацию, как в с++ вроде


> строгой как в с++


Сходи перечитай еще раз
269 1961467
Посаны, вопрос такой. Я только недавно вкатился, знания хуевые. Написал пару штук по работе, рутинные задачи оптимизировал, подключение по http, получение данных, загрузка их в пандас и это все прочее говно. Тут мне более менее все понятно.
Сейчас хочу по работу написать тестирование, где люди будут на вопросики всякие отвечать.
Допустим беру я django,ide pycharm, так как js не знаю и ебаться сильно пока с ним не хочу беру bootstrap. БД юзаю сейчас postgresql (хотя это уже особо не важно).
Вопрос какой - средств django и bootstrap мне хватит чтобы тестирование на вебе сделать? Я просто пока не до конца понимаю как это реализовать. Человек выбирает категорию, ему подтягиваются вопросы бд, выводятся, он жмякает, передает данные на бэк. Опять же представляю все это пока примерно, но сдается мне, что скорее всего без js я не обойдусь?
270 1961472
>>61467
В джанго есть шаблоны жинжа2АРЯЯ ЭТО ШАБЛОНЫ ДЖАНГО А НЕ ЖИНЖА ТВЕРДО И ЧЕТКО. Тебе хватит с головой, если не собираешься что-то прям невероятное мутить на фронте. И даже если соберешься, то в шаблоны можно подтянуть рякт и запихнуть в статикфайлы. Джанго это же комбайн, там все что угодно можно намутить
271 1961479
>>61472
Понял, от души.
272 1961519
>>61056
Окей, антош.
Пояснишь за киви? Как дезигн делал? Как код проекта получился, не перегружен ли? Доки киви шагнули вперёд, за последние года 2-3? Получилось замутить исполняемый файл для линупса/винды?
КуТэ-кун
273 1961527
>>61519
Ты прямо работаешь на qt? Мне показалось, что python+qt совсем мертвая связка в плане вакансий.
274 1961534
>>61431
Берешь и тестишь на впс. Можешь танком пострелять. Кто знает какое железо у тебя там, выделенный или делит с другими железо, есть ли лимиты.
275 1961543
>>61534
Не, это понятно, я про мое представление, мой мозг не осознает что даже посредственный процессор может выполнять тысячи операций в секунду
276 1961572
>>54138 (OP)
Сап, програч. Я сам студент-биолог, хочу узнать о применении питона в моей сфере - я слышал, что это полезно дохуя для матанализа. Буду рад как кратким ответам, так и ссылкам на литературу по теме (если такое вообще есть).
277 1961597
>>61543
Это всё зависит от конкретных запросов. Ты можешь быть неприятно удивлён, когда сначала читаешь статьи, как сервер БД разогнали до миллиона запросов в секунду, а у тебя начинаются проблемы на 100 запросах в секунду, причём не то, чтобы сложных.

Не всё так просто в общем.
278 1961599
>>61467
Bootstrap не нужен и вообще лучше забудь про него. Js не очень нужен, можно обойтись, на первых порах точно.

То, что тебе нужно, разбирается в официальной документации джанго, там есть демо-приложение с голосовалкой, с последовательным разбором от и до.
279 1961654
Как прописывать путь к файлу, который нужно открыть? Понятно, что есть open. Но не понимаю, почему в одних случаях он открывает файл без расписывания путей со слешами, а в другом он требуется. Как файл исполнения с прописанным путем будет выглядеть?
280 1961658
>>58404

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


А разве celery делает по-другому?
>>58441
Ты каждый раз собираешь пересчитывать таймеры, если что-то пойдет не так? У тебя вроде тарифы уровня "n запросов в час", у celery есть rate limit на каждый воркер, правда, не знаю насколько гибкие настройки, но может cгодится.
>>58524
Это я не у тебя спрашивал. Тебе я скинул пример теста.
>>60382
Нормально сделал, management command вполне себе решение.
281 1961659
>>61654
Просто в одном случае файл лежит рядос со скриптом, который его читает. а в другом он лежит по другому пути.
Алсо, не забывай про текущую директорию.
282 1961672
>>61654
Бля ну загугли "относительный и абсолютный путь к файлу"
Скриншот 09-03-2021 115655.png14 Кб, 508x541
Че за 283 1961692
Короче говоря, учусь по учебнику ''Укус Питона'' от индуса. Это преамбула.
Пока все было норм, но сейчас дошел до этого кода, который буквально напечатан в учебнике:

from math import *
n = input("введите диапазоны:- ")
p = [2,3]
count = 2
a = 5
while (count < n):
b=0
for i in range(2,a):
if( i <= sqrt(a)):
if(a % i == 0):
print("a neprost",a)
b = 1
else:
pass
if (b != 1):
print("a prost",a)
p = p + [a]
count = count + 1
a = a + 2
print (p)

При инпуте выдает:
Traceback (most recent call last):
File "C:/Users/username/AppData/Local/Programs/Python/Python38-32/EEE.py", line 6, in <module>
while (count < n):
TypeError: '<' not supported between instances of 'int' and 'str'
Скриншот 09-03-2021 115655.png14 Кб, 508x541
Че за 283 1961692
Короче говоря, учусь по учебнику ''Укус Питона'' от индуса. Это преамбула.
Пока все было норм, но сейчас дошел до этого кода, который буквально напечатан в учебнике:

from math import *
n = input("введите диапазоны:- ")
p = [2,3]
count = 2
a = 5
while (count < n):
b=0
for i in range(2,a):
if( i <= sqrt(a)):
if(a % i == 0):
print("a neprost",a)
b = 1
else:
pass
if (b != 1):
print("a prost",a)
p = p + [a]
count = count + 1
a = a + 2
print (p)

При инпуте выдает:
Traceback (most recent call last):
File "C:/Users/username/AppData/Local/Programs/Python/Python38-32/EEE.py", line 6, in <module>
while (count < n):
TypeError: '<' not supported between instances of 'int' and 'str'
284 1961699
>>61692
input всегда все воспринимает как строку. Переведи в int принудительно. Записывается так -- int(input())
285 1961701
>>61692
Хуевая книжка.
import *
скобки в условиях
else: pass, што?

В печку это говно.
286 1961707
>>61699
Спс. Я че-то забыл, что input про литералы.
Все равно хз зачем такой косяк допущен. Или это переводчик, или автор-индус. Кто знает
287 1961733
>>61692
Ок, я понимаю, что в крестах бывают ошибки непонятные и без трейсбека. Здесь тебе, тварь, и строку и человеческий текст ошибки написали.
288 1961734
>>61733
Очень ''понятно'' расписана ошибка, да.
289 1961735
>>61734
нельзя сравнит число и строку. Пиздец как непонятно.
290 1961743
>>61735
Там нет int, cмотри внимательнее. Только input
291 1961748
>>61692
Поясните за первую строчку с импорт маф. Я так понял, что это было сделано для того, чтобы юзать свирт (sqrt)?
292 1961752
>>61748
Импорт маш чтобы юзать сквирт?
293 1961756
>>61748
Бля, импорты это единственная часть питона, за которую нужно сесть и пару часов потратить вплотную на изучение, вчитываясь в каждое слово и разбирая каждый пример+прогоняю свои тестовые скрипты. Так на пальцах не расскажешь
294 1961760
>>61743
count - int
n - str
Ты решил тупостью одолеть?
295 1961843
>>61748
Чтоб когда тянке показал код, она сквирт делала
296 1961892
Есть некий проект. Если ошибка есть, то она отлавливается и отдается нужное сообщение.
Как сделать глобальный отловщик ошибок для лога?
sys.exc_info() уже пустой на момент, когда доходит обработка логгера.
cheers.png91 Кб, 323x254
297 1961902
>>61692
Кто-нибудь объяснит, как работает эта функция при n = 6?
298 1961903
Че из годного сейчас посоветуете учить новичку?
Из ОПа кажись устарело по интернет магазинам довольно много новых но какой из них годняк? Пасиб
299 1962034
>>61692
Не понимаю, или ты тонкий тролль, или действительно есть книжка, которая такой лютый пиздец в каждой строчке. Но я пока таких книжек не встречал. Обычно если кто-то в состоянии собрать книжку, а не вводную статью на форуме, то такого пиздеца уже не делает.
300 1962047
Вопрос, наверное, больше по VS Code, но попробую спросить тут.
Я создал абстрактный класс с абстрактными методами. Как сделать так, чтобы при наследовании от него, ИДЕ мне подсказывала, что я еще не реализовал абстрактные методы? Может в докстрингах где-то такое прописывается? Когда учил Яву, и Эклипс, и Нетбинс выдавали предупреждение об этом.
301 1962069
>>61903
В телеге есть годный канал python_textbooks с сотнями книг. Качай, листай, может что-нибудь да зацепит.
Screenshot 2021-03-09 at 19.42.08.png220 Кб, 1302x1504
302 1962083
Как блджат вызывать генератор в классе?
Хочу генерить порядковый айди на генераторе в классе. (понимаю что можно и без генератора в этом случае Хотя понял только когда начал писать этот пост, лол)

Но я хочу понять как реализовать это на генераторе

Всякие варианты перепробовал. Нихрена не выходит. На тебя надежда анончик.

вот кот
https://ideone.com/cvD0gS
304 1962110
>>62102
Ёшкин кот, точно же! Собсем тупой я. Спасибо!
305 1962121
>>61572
Есть много программ для биологии и анализа, я видел под линукс точно несколько, погугли их сначала, там всякая визуализация прцессов и графиков, большая часть на питоне написана, если знаешь питон, то свою сможешь написать, но есть и готовые программы\модули, конкретно ничго сказать на вскидку не могу
306 1962158
>>61519

>Как дезигн делал? Как код проекта получился, не перегружен ли?


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

>Доки киви шагнули вперёд, за последние года 2-3?


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

>Получилось замутить исполняемый файл для линупса/винды?


Собрал для винды через pyinstaller, но из-за версии 3.9 нет возможности сделать один файл, т.к. он теряет dll-файлы, поэтому приходится собирать папку и кидать их туда самому.
cookiefuckup.png16 Кб, 1892x153
307 1962343
Салам, братишки. Flask обезьяна на проводе.
Реализовал по мануалу remember_me функционал при входе на сайт строка в строку, но он сука такая не работает. Выдаёт ошибку, что на пике. С куками знаком чуть больше чем никак, поэтому тяжело осознать в чем пробоема. Вроде нагуглил, что необходимо переменную конфигурации приложения SERVER_NAME поставить явно и она должна содержать точки, для предупреждения каких-то там хуякерских аттак, и что имя сервера в одно слово типа localhost может не поддерживаться современными браузерами. Ну я сижу на PythonAnywhere и имя сервера установил соответствующее, с точками и поддоменом, а оно все равно не робит. Помогите, братцы, что нагуглил - не хватает знания предмета, чтобы извлечь профит. Если еще литературку подкините, где все разжевано, то вообще збс будет
308 1962367
>>62343
Убирай сабдомен/пиши рабочее имя/не пиши ничего(если локал). Пробуй.
https://curl.se/rfc/cookie_spec.html
309 1962412
>>61658
Блин с таймерами как раз проблема, все идеально реализуемо и в луп добавляю корутины из другого треда и запросы асинхронные на тсп делаются и селери нормально все обрабатывает, но вот сейчас все думаю как переделывать при релоадах, у меня уже есть таблица со статусами каждого запроса(нужно для апи энивей), меняя статусы можно контролировать выполнение(когда приходит время выполнить корутину просто делаем запрос к бд и смотрим статус, если stopped, то просто не обрабатываем), сюда же остановка с помощью смены статуса, либо запуск заново. Видимо для релоадов надо так же таймстемп хранить в этой же таблице, а при запуске запускать просто сначала все корутины на каждую запись в бд, а потом начинать слушать брокер. Сейчас понял что я сделал create_or_update, но если за время пока запись ждет в корутине человек захочет остановить и запустить заново, то статус сменится на stopped, а потом на pending, поэтому одно и тоже обработается дважды, надо удалять запись и создавать, чтобы idшник менялся. Уф, чет из-за кучи всяких ограничений становится сложно все держать в голове, есть подсказка как такие алгоритмы взрослые дяди в голове держат, в каком формате записывают? А менеджер команд это просто бомба как по мне, почему-то особое удовольствие писать именно python3 manage.py scriptname
310 1962466
>>61752
лол
>>61748
звездочку юзать - дурной тон.
Это импорт всего говна разом
лучше импортировать конкретные методы которые ты собираешься использовать
ну или целиком модуль.
image.png38 Кб, 437x517
311 1962491
Анон, уже всю голову изъебал. Почему go_while не запускается?
Кое как разобрался с этими тредами, но нихуя не понимаю почему не работает метод go_while
https://pastebin.com/thwEsYE5
312 1962529
>>61527
Нет, пилю свои проекты, если десктоп.
>>62158
Понял.
Дезигн в отдельном файле или в коде тоже?
313 1962530
В коде все чётко выходит
314 1962546
>>62491
Я в ваших qt не разбираюсь, но разве сигнал не должен быть вызван? emit() и все такое.
315 1962570
>>61658

>Это я не у тебя спрашивал. Тебе я скинул пример теста.


Да, но тот тест не подходит братан.
316 1962572
Можно ли из пайчарма запускать докер на сервере чтобы там развернуть чистый питоном, создать там ритуальную среду для тестов И гонять это все на Джекинс. Если да, то как
317 1962587
>>62570
Тебе же только оставалось пробросить юзера из фикстуры в тест, это пример и делает. Ну нет, так нет.
318 1962618
>>62572
Нельзя
name на пальцах 319 1962623
Кто может на пальцах объяснить, как работает переменная _name_ и для чего ее используют? Нихуя непонятно.
320 1962624
>>62623
__name__ задается при загрузке твоего скрипта. Если это скрипт который ты непосредственно запустил (точка входа) то переменная будет равна __main__
Это можно использовать для тестов например. Если твой скрипт должен подгружаться в другом скрипте то ты можешь написать внизу if __name == '__main__': и после этого вызыватье го функции для проверки. Даже если этот код оставишь файле он никогда не выполнится если не запущен как отдельный файл.
321 1962625
>>60286

>https://www.techempower.com/benchmarks/


Это там, где в топовом фреймворке на расте даже длина сообщения в ответе захардкожена и это считается нормой?
322 1962662
>>62572
Вот же поколение, без пучарма ничего не может сделать
323 1962681
>>62158
Лучше в отдельном файле конечно, при этом в дочернем классе - т.е. делать кастомный объект для каждого используемого виджета, в нём же создавать юзкейсы со стилем, поведением и жизненным циклом, дабы не плодить объекты лишний раз и переиспользовать, если нужно. А так, либо в коде с использованием style sheet'ов, либо в .kv файле, но мне нравится первый вариант.
324 1962734
Аноны,что не так?

при тестах такого вида:
class TestFactorize(unittest.TestCase):

>def test_many_multipliers(self):


>>>>>with self.SubTest():


>>>>>>>self.assertEqual(factorize(), ())


>>>>>>>>>with self.SubTest():


>>>>>>>>>>>self.assertEqual(factorize(), ()


выдается ошибка
AttributeError: 'TestFactorize' object has no attribute 'SubTest'
как исправить?
325 1962756
>>62734
Создать объект SubTest перед тем как к нему обращаьтся
Screenshot - 2021-03-10T153231.321.png14 Кб, 841x198
326 1962767
>>62756
поясни что ты имеешь ввиду?
я туда передаю все аргументы которые нужны.
например
with self.SubTest(x=x):
self.assertEqual(factorize(x), (x))
в примерах что я видел не создается ничего, вот пример из доков на пике
327 1962780
>>62734
>>62767
subTest, очки купи.
328 1962786
>>62780
Блядь, уже заметил свой проёб, исправил.
пиздец, вот что копипаста делает.
первый раз написал с большой буквы и прокопипастил по коду.
329 1962845
>>60342
Pypy уже 3.7 поддерживает. Возрадуемся, братья!
330 1962853
Подскажите, а как открыть файл на чтение и запись и без удаления всего, как в случаи с "w"
Я уже запутался в этих обозначениях
331 1962866
>>62853
Если ты хочешь дописать, то это 'a'
332 1962902
>>62866
a = append = добавить
333 1962904
>>62853
r+ тебе нужен.
334 1962906
>>62904
'a' тоже сработает
335 1962924
>>62906
Он разве работает на чтение?
336 1962964
>>62866
>>62902
>>62904
>>62906
>>62924
пробовал а и а+ не работало чтение, взял r+
337 1963031
>>62964
Так там можно комбинировать, 'ar', 'xa', 'xab'. Если что. 'rta' открывает файл в стандартном режиме, как без параметра, только с возможностью дозаписи текста в конце.
338 1963035
>>62587
Да, это было временное решение, все равно спасибо.
339 1963038
>>62662
>>62618
Хорошо. А как сделать без него? В терминале?
341 1963143
А почему так странно всё работает?
Если просто читаю файл и вывожу его, то получаю пикрил как и нужно
А если я перед этим устраиваю перебор файла, то при выводе я получаю пустоту.
342 1963147
>>63143
Файл это итератор, по мере итерации он двигает указатель.
Можешь сделать file.seek(0) и подвинуть на начало.
343 1963157
>>63147
Спасибо большое, всё работает
Аноним 344 1963160
>>54773
Зачем эти ваши промежутки? Иди сразу на сеньора.
345 1963225
Посоветуйте пожалуйста наборы упражнений для практики. На кодворс или литкод. Может кто знает хорошие по нескольким темам или адаптивные.
346 1963243
>>63225
Даю упражнения. Делаешь свою субд на основе json, с записью, чтением, удалением и т.д. Чтоб работать с ней могло сразу несколько пользователей. С механизмом блокировок, с экономной записью, с условием что бд может быть несколько гигов и читать всю в память не стоит.
Развлекайся. Это проще, чем кажется
347 1963278
>>63243
Задача 2: переписываешь drf под работу со своей бд
348 1963323
Ребятки, как убрать бекенд в селери, чтобы он не использовался и не требовался?
349 1963468
Уже совсем отупел. Как добавить строку в список через запятую?
Т.е. есть строка через инпут ("rock,paper,water,fire")
А как её добавить в список, чтобы было так ['rock', 'paper', 'water', 'fire']
350 1963477
>>63468
я разобрался
я разобрался
f2e520c4d97c5b91d395040c4d97e3bd.jpg17 Кб, 300x180
351 1963483
352 1963492
>>63483
Вот так программисты и живут
353 1963559
пацаны, я человек из мира гейдева
стоит ли в питон вкатываться? есть интересные задачи?
354 1963795
>>63559
Нет. Хочешь ml или сайты клепать - то да.
355 1963858
>>63795
видел, что много где хайлоад пишут на питоне
это же топ, не?
356 1963969
>>63858
Это где пишут? Хайлоад на питоне, это как тюнингованная девятка на автодроме: вроде и едет и даже не плохо, но чтоб с другими тягаться, придется постараться.
357 1964055
Ребят, Django еще живой или концы отдал? Глянул вакансии (ДС) негусто вообще, зря я его учу получается?
358 1964059
>>63969
На хайлоаде C#/Java боссы качалки?
359 1964103
>>63969
да я в требованиях видел "опыт высоконагруженных" бла бла бла
короче из питона только в мл, да?
360 1964296
>>63969
купить 2 сервера вместо 1, сэкономишь на человекочасах
361 1964312
>>64296
ну в мэйле видел фразу "python" и "высоконагруженные" в одной вакансии
362 1964334
>>64055
Года 4 назад было норм, сейчас фласк предпочтительнее.
>>64059
На хайлоаде perl же
363 1964335
>>64103
Да нет же. Говорю, ты можешь на питоне писать. Опыт высоконагруженных проектов не зависит от языка, а от правильного проектирования.
364 1964364
>>64335

>Опыт высоконагруженных проектов не зависит от языка, а от правильного проектирования.



Так тогда надо жс брать
365 1964412
>>64335
прикольно
366 1964424
Как установить силениум в пачарм Линукс минт
367 1964461
>>64364
Он отчасти прав, потому что основная нагрузка идёт на всякие очереди и БД, и нужно с ними грамотно работать, грамотно хранить данные в приложении, и много чего ещё.

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

Настоящий хайлоад, где надо каждый такт процессора и каждый байт оптимизировать встречается очень редко.
368 1964464
>>64364

>Так тогда надо жс брать


И не понятен снобизм по отношению к ЖС.

ЖС быстрый и подходит для нагруженных сервисов более-менее. Он просто очень грязный и неприятный.
369 1964470
Я уже наверное всех заебал, извините. Некуда больше идти.
Я настроил редис, могу подключаться, могу создавать пару ключ-значение на сервере, смотреть ее и удалить.
Теперь, мне нужно в имеющуюся фикстуру scope=class, которая принимает параметр request делает всякие настройки и yield, и затем request.cold.driver.quit()
Мне нужно в эту фикстуру дописать, чтобы переменные из этой фикстуры писались в редис сервер, потом проверились, после удалялись И печатали в stdout о результате.

Подскажите будьте любезны как такое выполнять?
370 1964480
>>64470
Пиши нормально, что тебе нужно
371 1964492
поцоны, только не ссыте на ебальник плиз за такие вопросы
но оч нужно
какой-бы пет проект накатать, чтобы качнуться в backend разрабоке? асинхрощина там, fast api всякие
Хочу, шоб hrка от счастья заплакала а тимлид руку пожал, место свое бы предлогал, в щеки целовал бы
372 1964493
>>64492
Предметную область выбери, которая тебя интересует, и сразу придумаешь проект.

А если тебя ничего предметного в этой жизни не интересует, то никакого пета ты и не запилишь, ибо участь твоя рабствовать на галере, а не созидать.
373 1964494
>>64470
Сука, проиграл, уже недели две тебя вижу и мне все лень загуглить че такое фикстуры, я думаю остальным тоже, тебе точно эти фикстуры нужны, может более популярное решение стоит найти?
374 1964495
>>64492
Да любую хуйню сделай, если асинхронщена нужна, то найди какой-нибудь сайт в котором часто данные обновляются и сделай какой-нибудь дашборд, hrки де вроде даже не поймут че ты сделал, а тимлидам расскажешь что использовал технологии
375 1964496
Мальчуганы, подскажите, стоит ли вкатываться в докер ради того чтобы 1 раз задеплоить приложение, я его почему-то боюсь как огня и постоянно откладываю, могу нахуивертить так что впску загублю? Много ли придется док прочитать перед деплоем?
376 1964498
>>64494
>>64480
Фикстуры это декораторы специально из pytest.
Нужно записывать переменные в редис и потом вывести в stdout что записали. Вроде понятно же из поста.
377 1964501
>>64498

>Вроде понятно же из поста


Ты еще и выебываться будешь? Тебя нормально спросили о подробностях.
Я не понимаю в чем проблема? Делай мок редиса, либа такая даже есть, если лень самому 20 строчек написать и засирай его сколько угодно.
378 1964502
>>64498
@pytest.fixture(scope='class')
def some():
____result = self.connection.setex(key_name, expiration, data)
____print(result)

И запускаешь pytest tests/ -s
Так что ли?
379 1964506
>>64498
Так записывай их, потом выводи.
380 1964507
>>64496
Ради одного раза - нет. Если периодически и впс у тебя работает на другой оси - стоит
381 1964510
>>64493
спасибо, охуеный совет вообще иди нахуй с такими советами
мне блять ядерная физика нравится, но в лабу за 25к идти я не хочу (хотя с чего я решил, что буду получать профессорскую зп)
еще вопросы, созидатель-питонист хуев
>>64495
годно, спасибо
382 1964513
>>64510

>мне блять ядерная физика нравится, но в лабу за 25к идти я не хочу



Так ты тупой просто. Тебе никто не предлагал перекатываться в ту сферу, которая тебе нравится. Тебе писали о другом.
383 1964537
>>64506
Ну так как это сделать в фикстуре.
>>64501
Так я уже описал. В фикстуре нужно:
1. Записать переменную генерируемую фикстурой (которая уже есть и работает ) в редис. Для редиса уже есть метод подключения и записи.
2. Проверить ее наличие что она действительно записалась в редис.
3. Удалить ее и вывести это в stdout.
384 1964538
>>64502
Да, как-то так. Только она мне на print выкидывает ошибку - я так понял это из-за того что это функция принимающая item и которая выдаёт yield.
385 1964543
Может я туплю и мне тупо сделать отдельную фикстуру для этого, а не менять существующую. непонятно правда как потом новую навесить на старую.
386 1964631
>>64538
Какую ошибку?
387 1964729
пацаны, а кто-нибудь в мэйл собеседовался? есть ли там такая же шиза, как и у яндекса?
388 1965181
Компьютер саентисты, возникла надобность в том, чтобы была коллекция, суть в том, чтобы она представляла из себя очередь(чтобы можно было вызвать типа метод get и возвращалось первое значение), при этом в очередь нужно добавлять элементы произвольно, на самое важное то что она должна быть упорядоченна по определенному значению из списка(в списке несколько элементов), буду благодарен за подсказку как это реализовать, либо если есть такая структура данных, то назовите ее. Мне нужно просто получать данные в произвольный момент и встраивать их в очередь на правильное место в соответствии с таймстемпом, который приходит, а обработчики должны просто брать первый элемент из очереди. Можно было бы реализовать все кастыльно и напрямую, типа применять сортировку после каждого дополнения, но может есть более правильное решение?
389 1965187
>>65181
priority queue не подходит?
390 1965188
>>65181
heapq
изображение.png65 Кб, 3150x391
391 1965202
Как сделать так, чтобы словарь не создавался внутри словаря?
392 1965203
>>65187
>>65188
Спасибо, то что надо
393 1965212
>>65202
Ты какой-то хуйней занимаешься.
head, *tail = input().split()
d[head] = tail
394 1965218
>>65212
Все равно словарь внутри словаря про знак умножения не знал, спасибо
395 1965226
>>65218
Нет там никаких вложенных словарей, ты значит не всё показал.
изображение.png72 Кб, 3195x635
396 1965232
397 1965242
>>65232
Ну это значит та хуйня криво показывает. Обучатели, лол.
Можешь выполнить это как скрипт и посмотреть результат.
398 1965271
>>54138 (OP)
БЛЯЯЯ
Сука, где я проебался в коде? Вроде все должно работать, хули 1 кейс из 196 не прошел?

https://leetcode.com/explore/featured/card/march-leetcoding-challenge-2021/589/week-2-march-8th-march-14th/3669/
399 1965286
>>65271
Хуй тебя знает. Условие задания хоть бы написал.
400 1965299
>>62121
А можешь вкратце объяснить, почему разрабы выбирали для своих поделий питон? Я сам хеллоувордщик пока только - так что если сможешь побороть свою брезгливость - поясни с минимумом терминов, пжлст.
401 1965301
>>65299
Потому что удобно. А почему не питон, и что вместо питона тогда?
402 1965302
>>65271
Нашел. В цикле for -1 не нужен
Сам хз как 195 кейсов он прошел, хуевые тест кейсы значит у них (литкод как всегда, рот его ебал)
403 1965303
>>65299
Питон изначально под линух был придуман
404 1965304
>>65271
Настолько очевидно, что даже не понятно, почему ты не понимаешь.

почему у тебя 2^k-1?
Вот почему тут -1?
Ты не проверяешь случай из одних единиц.
405 1965305
>>65299
В научных кругах любят питон. Просто его очень легко освоить, не надо ебаться с компиляцией. Все интуитивно понятно. Ну сам подумай. Если ты физик и тебе надо какое то слоожное уравнение составить и протестить еще, станешь ты учить Си? Тебе это нахуй не сдалось. Питом куда быстрее осваивается..
406 1965306
>>65304
>>65302

>Нашел


Ну ок. А лучше пять минут самому подумать, прежде чем сюда писать.
407 1965307
>>65304
>>65302
you are late, cowboy
408 1965318
Всем привет, пробую сделать перевод с помощью Flask-Babel, но не получается. Что я делаю не так? Файл перевода скомпилировал в расширение .mo. Сейчас пишет просто на русском.

Заранее спасибо!
409 1965325
Столкнулся с такой проблемой, когда в моем callback'е, вызываемым библиотекой websocket-client происходит какое то исключение, то оно тупо не выводится в консоль, из за чего труднее отлаживать код если я где то допустил ошибку.
Можно ли это как то исправить?

def onmess(data):
message = processing_data(msg)
output_data(msg) # some misprint

websock = self.ws = websocket.WebSocketApp(self.url,
on_message = onmess})

websock.run_forever()

Что бы было понятнее, в третьей строке происходит у меня допустим исключение, и во время этого исключения никакого вывода в консоль вообще не происходит, исполнение этого коллбэка просто завершается.
Аноним 410 1965335
Привет, нравится c++ и python. Думал изучать всерьёз ue4, но понимаю, что в России слишком напряжно будет начать получать деньги с этого. Да, меня интересуют деньги, а следовательно востребованные направления. В веб разработке разочаровался, потому что совсем не нравится верстка. Сомневаюсь, что не фулстак, а бэкенд разработчики востребованы. Deep learning, научные штуки тоже не нравятся. Знаю async, декораторы, некоторые библиотеки, прочую фигню. Что посоветуете из актуального и не веб?
411 1965494
>>64631
А не, поправил. Ошибки нет. Я зачем-то туда return print вставлял.
412 1965515
>>64334
Про Perl не знал, я зелень
А почему Flask предпочтительнее? Я Django начал ботать, переключаться на Flask теперь, джанго же вроде как больший функционал предлагает, не?
413 1965517
Тест
414 1965518
Всем привет, два года работаю программистом на Си, есть профильная вышка, понимание наиболее популярных алгоритмов и структур данных. Стек: С99, иногда плюсы ради каких-то библиотек, SQL (PostgreSQL, SQLite), Python (pandas, numpy, tensorflow, opencv).
Работа связана с математическим моделированием, но низкая зп и малая востребованность таких спецов вынуждают меня перекатываться в другую область. Последний год активно использую питон в работе, так что решил перейти на него в паре с джанго.
Живу я в мухосранске, где на hh кроме консультантов и операторов колл центров, требуются одинэсники и эникеи, даже по пхп ничего нет, так что удаленка мой единственный вариант.
Вопросы:
1. Как вы учили джанго? Ютуб, оф дока, книги? Все вместе?
Я пытался начать с документации на сайте джанго, но очень сложно идет.
2. Понимаю, что усвоение знаний вещь индивидуальная, но все же, если я рассчитываю за год вкатиться на удаленку, это не полный бред?
3. Что было на собесе? Помогли ли пет проекты при трудоустройстве?
4. На какую примерную зп стоит ориентироваться? Судя по тому же хх около 60к, а это уже больше моих 50, что для меня уже неплохо.
5. Нужно ли уметь верстать? Если да, то на каком уровне? Как обстоят дела с JS?
6. Как хорошо нужно разбираться в линуксе на реальной работе? Джун должен уметь в гит, докер, nginx? Сейчас использую только гит в виде основных команд и иногда убунту и распбиан в виде работы с учетками, файлами, установкой пакетов и либ.
7. Как относятся к ошибкам джуна? Что бывает за косяки? Что будет, если вовремя не выполнить задачу?
Всем добра, извините за тупые вопросы и опечатки
415 1965523
>>65518

>за год вкатиться на удаленку


За год ты можешь запилить несколько приложух на любом языке или на нескольких. Если одна взлетит, то тебе уже похуй на все будет.
416 1965551
>>65518
Учи английский и работай на заграницу.
417 1965552
>>65523

>Если одна взлетит, то тебе уже похуй на все будет.


Без серьезных денежных вложений ничего не взлетит.
418 1965584
>>65552
Найди финансирование, это нормально. Но сложнее конечно.
419 1965585
>>65523
Что именно ты имеешь в виду? Если свой стартап, то у меня уже есть такой опыт, к сожалению, это дано не всем, я понял, что мне лучше работать на кого-то.
Ниже отвечал не я.
>>65551
Анон, ты имеешь в виду фриланс на биржах типа апворка? Я не против, конечно, но для начала мне в любом случае нужно освоить джанго и набраться опыта в каких-нибудь реальных проектах.
Английский 6.0
420 1965609
>>65518
Вкатывайся в нейроночки. У тебя как раз pandas, numpy, tensorflow, opencv, то что нужно. Бросай свою нищую контору и свой зажопинск. В джанго вкатываются совсем дурни без образования.
421 1965683
>>65609
В смысле? Я с ними уже год работаю, поэтому и появился питон на работе.
Зп там почти такие же, как в вебе, а сложность работы несоизмерима.
Я не хочу переезжать, мне это просто невыгодно, поэтому и ищу удаленку. Вообще не хочу больше как-то сталкиваться с математикой и программированием на си и плюсах, это была моя огромная ошибка, нужно было сразу уходить в веб. Я бы и в 1с прошел, но они тут получают по 30к
Можешь что-то подсказать по моему вопросу в плане джанго?>>65609
422 1965733
>>64729
Что за шиза? поясни
423 1965737
>>65305
>>65299
еще на питоне есть юпитер нотебук, там очень удобно свои формулы представлять ученым и каждый может сразу же их выполнять и модифицировать
424 1965739
>>65683
Почему тебя так дико покоробило плюсы и математика?
и как ты отучился если тебя с этой хуйни тошнит?
425 1965799
>>65739
Отучился с трудом именно из-за нежелания учиться. Сначала учился в спбгу, потом свалил обратно в свой мухгту
Заканчивать пришлось, потому что больше кроме кодинга я ничего не умею.
Я сейчас начал осознавать, что меня где-то развели как лоха, пока я дрочил разные виды математик и разбирался с вращением деревьев на плюсах, кто-то вкатывался в питон, пхп, джаву и работает сейчас удаленно, имеет более интересные проекты, ещё и зп выше.
Так что я решил больше не наступать на эти же грабли.
Ну или пока за это не начнут платить х3 от рынка
426 1965812
>>65733
Лютый матанодроч с оплатой меньше рынка
427 1965825
Привет, питонисты, есть проблема, для каждого юзера таски селери должны выполняться строго по очереди, т.е он не может совершить 2 действия, которые дляться долго одновременно, самое просто решение это просто создать словарь и проверять завершена ли таска для каждого пользователя, но может есть решение в селери, которое позволяет сделать строгую очередь выполнения для каждого пользователя?
428 1965884
>>65825
Какой в этом смысл? Ты тормозишь работу целери таким образом.
429 1966023
А можно ли как-то на основе переменной и списка сделать словарь?
Переменная a = rock
а в списке b fire water wood ice
можно ли получить словарь {rock: "fire", "water", "wood", "ice"}
430 1966032
>>66023
Внезапно {a: b}
image.png22 Кб, 1332x114
431 1966041
>>66032
Если я из списка строку делаю, то оно будет всё воспринимать как один элемент же?
432 1966046
>>66041
Туплю можешь сделать, тупли хешабельны.
433 1966051
>>66046
Я туплю? На первом скрине просто str(array) а на втором через " ".join(array) Надо было, чтобы оно воспринималось не как цельное слово, а как разные слова. Может есть аппенд какой-то и через перебор?
434 1966054
>>65812
Пиздец, назуя они это практикует и кто к ним вообще идёт?
>>65799
Жесть! а почему решил на математику поступить?
там именно фак прогинга типа был?
когда я учился такой хуйни еще не было даже
мочему свалил из спгу? ты сам с миллионника или с маленького городка - соли земли русской?
435 1966056
>>66054

>Пиздец, назуя они это практикует и кто к ним вообще идёт?


Мб у них питон юзается в основном для дата сайнса?
436 1966060
>>66051
Да значением можно список ставить, ключем нельзя.
Если нужно именно ключем, то сделай tuple(lst). Но скорее всего это хуевое решение.
437 1966066
>>65884
потому что одна таска делает расчет и заполняет таблицу, другая удаляет все расчеты, если вторая выполнется до завершения первой, то половина записей останется
438 1966077
>>66056
они заебали своим сайенсом, мониторят там блядь кто какие треки моргенштерна предпочитает утром в пятницу.
и какую рекламу лучше пихнуть в это время.
такого рода дататсаенс там
439 1966103
>>66066
Делаешь таску на запись, делаешь коллбек с тем, что тебе надо а в конце его юзаешь таску на удаление.
Что делать дальше? 440 1966104
Прошел основной синтаксис пайтона. Мы в Университете изучали с++ пол года или даже больше, поэтому изучение было быстрее в несколько раз, чем когда я изучал с++.

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

Из минусов мне пока тяжело дается понять как работает ООП или декоратор, не ну я могу сказать что такое инкапсуляция, полиформизм, наследования, но я не смогу применить это. У меня есть задроченная теория для сдачи тестов(Экзаменов) в Университете. Но я полный 0 в практике.

Иногда решаю задачки на КодеВарс 5-6 куи, пробовал проект Эйлера, но чет не особо зашел.

планирую двигаться в веб, начинаю с Фласка, летом как подтяну знания хтмл + ксс перейду на джанго, если с Фласком все ок будет. Но не знаю, правильно ли я двигаюсь. Не покидает чувство, что я делаю что-то не так.
441 1966105
Как на пайтоне по-православному асинхронно реквесты высылать через прокси?
442 1966106
>>66104
Практика
443 1966110
>>66104
Просто пиши как можно больше кода для себя - быстро прогресс почувствуешь. Если тебе какой-нибудь тулзы не хватает в повседневности или сервиса, попробуй написать, используя те вещи, которые тебе сейчас не понятны.
444 1966113
>>66054
ПМИ. Это что-то вроде российской версии computer science, программирование с очень общиной теорбазой и математикой.
Свалил, так как жить для меня в Питере дорого, а качество образования того не стоило, в итоге в мухгту просто легче было получить вышку, а на знаниях это никак не отразилось. Один хер что там, что тут, все было поставлено на самообучение
Я с 200к мухосранска.
445 1966115
>>66113
С очень обширной
быстрофикс
446 1966127
>>66103
Не, удаляет таску пользователь, когда захочет, мне надо просто проверятьпри удалении что предыдущая завершена, я сделал просто словарь в который добавляю таски каждого пользователя и при вызове каждой таски проверяю есть ли доступ к ней
447 1966146
>>66104

>планирую двигаться в веб, начинаю с Фласка, летом как подтяну знания хтмл + ксс перейду на джанго, если с Фласком все ок будет


Можно начать сразу с Джанго. Он более системный и стройный, хорошо задокументированный, фласк это конструктор, к которому со стороны надо разные инструменты прикручивать.
448 1966148
>>66104

>Из минусов мне пока тяжело дается понять как работает ООП или декоратор,


Попробуй просто руками покурочить.

Что касается декораторов, то всё сильно проще. Запись
@deco
def func(args):
____pass

полностью эквивалентна записи
def func(args):
____pass
func = deco(func)

Тебе надо просто разобраться, как работать с функциями самими по себе, с аргументами их и т.п., что не очень очевидно после C/C++.

Попробуй помучать непосредственно, а не в рабочем коде, быстро разберёшься на самом деле.
449 1966217
>>66113
200к это большой город!
а я учился сначала на автомеханическом, потом автопром сдох
потом на психолога когда тема была на подъёме, психология хуета без задач оказалось в россии.
потом на строительном, но пизданул кризис и стройки сдулись
короче пиздец жгучий, как тебе такое?
450 1966310
А .venv среду надо каждый раз скачивать если захочу какие-то сторонние библиотеки в проекте заюзать?
Или они при установке через pip-ку не привязываются к каталогу, в который я их ставил?

Также ещё пипку обновил в %APPDATA% через команду в терминале VSCode.
451 1966314
Bump
452 1966325
>>66310
venv не надо скачивать. Он копирует твой каталог с питоном с привязкой или без site-package.
Скачиваешь только внешние либы из requirements при обновлении
453 1966340
>>66077
>>66054
>>66056

>> еще какие-то сообщение


да не саенс, чистый питон
там и mygames ищут питониста, и vkpay
короче прикольные вроде вещи
454 1966350
>>66310

>Или они при установке через pip-ку не привязываются к каталогу, в который я их ставил?


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

Вот честно, почему ты такой не любознательный? Мог бы просто сам создать три venv и посмотреть, что как каталоги изменяются и чего он каждый раз качает. Так же проще и интереснее даже.
455 1966354
здарова. недавно решил вкатиться и выбрал питон для своей кривой программы, за полгода чето научился и сделал так, что это начало приносить деньги, но сама структура кода оставляет желать лучшего, плюс делать gui на питоне стал через pyside, а там стили так же оставляют желать лучшего (либо я чет не догоняю), и чтоб прога не выглядела как кусок говна пришлось долго ебаться с ней, и теперь я не могу добавить в нее новые модули без труда.

Вопрос, как вообще начинать рефакторинг своего кода? Че писать, чтобы можно было добавлять модули в программу проще (как конструктор). И поддерживает ли pyside что-то бОльшее чем css для стилей. И если нет, на какую либу перекатиться (с питона слезать не хочется)
456 1966369
>>66354

> за полгода чето научился и сделал так, что это начало приносить деньги


И как сделал?
457 1966408
Хочу сделать простой поисковик:
На сайте в строку вбиваешь название вещества (например NaCl), нажимаешь "поиск"
Прога ищет в базе данных и выдаёт все элементы list'a, в которых есть это слово.

list уже есть, домен, грубо говоря, тоже. В чём сделать поиск и вывод?
458 1966439
>>66354
пиши тесты чтобы работали и рефактори.
прогоняй тестами.
иначе сломаешь всё нахуй
image.png163 Кб, 1920x1040
459 1966483
>>66325
>>66350
Спасибо.

Я уже спать ложился, ща проверил две папки создал и venv к ним добавил, да, действительно, там во многих файлах пути прописываются к текущему проекту для которого я в терминале прописывал команду "python -m venv".
Да даже тупо хэши у папок разные (естественно).
460 1966521
Присоединился значит в стартап к протыклассникам.
На меня повесили разработку бэка со словами "стек на твой выбор, просто сделай, чтоб работало и в приемлемые сроки" ​
Я как-то даже растерялся с этой хуйни, как собственно выбрать стек с 0?
Сам проект, допустим - платформа с заказчиками и исполнителями всякой хуйни
Есть частично написанный фронт на вью. С меня надо рест апи; ну там регистрация с разными ролями, личные кабинеты и прочая хуерга. Сцепим это все аксиосом (наверное).
Сначала подумал про джангу дрф или фласк рестфул + постгря/ребит/селери. А потом задумался, мож нахуй эту джангу? Что сейчас ещё можно заюзать из бэкенд фреймворков под чистый проект?
Баловался с aiohttp и fastapi, но не знаю насколько они продакшен реди. Плюс ещё знаю, что у асинк решений проблемы с orm либами, а мне хотелось бы алхимию или что-то максимально похожее на неё.
461 1966525
>>66350
>>66483
Заодно кста разобрался как интерпретатор выбирать.
Потому что он иногда обращается к библиотекам и интерпритатору из appdata, а если неправильно настроить проект, то будет обращаться к локальному интерпретатору, у которого может не лежать рядом нужных библиотек.
462 1966539
>>66521
Fastapi использовал в проде, но проект был хуита по нагрузке, зато асинхронки из коробки. Вот про ORM хуй знает. Есть Tortoise ORM, но это глубокая бета. Peewee-async советуют. Для FastAPI уже админка есть с Vue3 TS
463 1966542
>>66408
Jinja2 для морды, чё ещё надо?
464 1966544
>>66521

>Плюс ещё знаю, что у асинк решений проблемы с orm либами, а мне хотелось бы алхимию или что-то максимально похожее на неё.


Сейчас клянутся, что в алхимии 1.4 будет хорошая поддержка асинхронности. Пока 1.4 в стадии бета-тестирования, официальный релиз 1.3
Dvv4Atmg0wk.jpg153 Кб, 850x601
465 1966558
>>66525
Алсо

лучше выбирать глобальный интерпретатор или локальный который в .venv проекта лежит?
Чую что второе лучше.

{
"python.pythonPath": ".venv\\Scripts\\python.exe"
}
466 1966562
>>66558
И где хранятся настройки для entire workspace VSCode?

Я только локальные нашёл в json возле проекта.
image.png9 Кб, 264x202
467 1966563
>>66562
Всё, разобрался, один в settings.json, второй в .workspace лежит.
468 1966564
>>66544
Alchemy перегружена. Tortoise ORM обещают универсальность для всех реляционок.
Вот остальные придется через сторонние пакеты использовать. Ну в черепахе и команда ещё маленькая и roadmap на 2 года.
469 1966571
>>66558
Смысл venv в изоляции. Соответственно и пакеты которые ты установил будут там же, не затрагивая общесистемные (актуально для ЖМУ Пинус).
К тому же на проекте у тебя может быть и PyPy вместо CPython.
Сразу ставь PyRight и PyLance. Вполне годное решение.
470 1966575
>>66571
Понял.

Но я походу случайно уже установил глобально некоторые пакеты (pyplot).

Это ничего страшного?
Через какую команду их если что удалять?
471 1966577
>>66575
pip uninstall либанейм
Заебал, это не Гугл.
ZFuPqbcxdH8.jpg190 Кб, 765x1080
472 1966586
>>66577
И то верно. Спасибо, разобрался.
473 1966611
>>66542
в чём поисковик писать, в чём базу данных вести?
я правильно понял, что для этого мне придётся покурить php?
474 1966612
Всем привет. Собираюсь вкатиться в программирование и выбрал питон. Как с ним на удаленке?
Смогу ли я через полгода изучения питона + джанго + бд уже на удаленке брать заказы?
25 лет, шарю в верстке, программированием как таковым никогда не занимался, но достаточно хорошо шарю в вебе.
475 1966613
>>66612

>Как с ним на удаленке?


Нормально

>Смогу ли я через полгода изучения питона + джанго + бд уже на удаленке брать заказы?


100% нет

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


Лол, и как именно ты хорошо шаришь в вебе?
476 1966614
>>66611
А причем тут пхп?
В тот ли ты раздел зашел?
477 1966616
>>66613
Работал в веб-студии, знаю где линия фронта, где бэка.
Не специалист, просто спокойно поддержу разговор, если речь зайдёт о вебе. Параллельно шарю в сео, сем и т.д.
Также тестером работал ещё
478 1966617
>>66614
чел, я могу реализовать задумку на питоне, потому и пишу тут
а спрашиваю итт, потому что аноны так или иначе сталкивались с потребностью залить код на сайт. Вот и спрашиваю, нужно ли мне пхп или есть какие-то костыли с питоном?
479 1966639
>>66617
Какие нахуй костыли? select * from table where name like upper('%na cl%');
Для простого поисковика тебе этого хватит.
print и pprint 480 1966640
Я так понял, что атрибут width относится только к pprint? И нельзя контролировать ширину строчки в стандартном print? Зочем это разделение и какое фундаментальное назначение у pprint?
481 1966641
>>66616
За полгода ты только с нуля будешь более-менее уметь писать проекты, но такое говнище будешь писать, что мало кто захочет связаться с тобой.
Каким-нибудь стажером может и пойдешь, но таких, кто за полгода хотят выучить стек и устроиться - много.
482 1966642
>>66639
а на сайт как сделоть? чтобы это было онлайн
image.png30 Кб, 1157x129
483 1966644
>>66640
у меня так)
484 1966645
>>66641

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


а кто учится полгода - мало
485 1966656
>>66640
Полное название pretty print как бы намекает.
Вообще, необходимость принтить какие-то сложные структуры на практике близка к нулю.
486 1966658
>>66642
Есть два варианта. На питоне выдавать только жсон, а морду сделать на жабаскрипте. Или полностью на питоне, например flask.
487 1966659
>>66658
что насчёт пхп, говорят, всего 100 строк кода
488 1966663
>>66659
Что ты к тому пхп прицепился?
Ну можно сделать на пхп, можно на питоне, это не имеет значения. Сейчас практически любой язык может в веб и имеет веб-фреймворки, близкие по возможностям.
489 1966668
>>66663
Да и тот же самый пхп сейчас усиленно перепиливают в язык общего назначения, и ходовые фреймворки у него все внешние. Этими встроеннымы веб-фичами, заложенными изначально, никто не пользуется.
490 1966675
>>66663

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


тому шо на хостинге есть php, но нет фласка
491 1966678
>>66675
А что, остались ещё такие говнохостинги за три копейки?
За них же можно купить и говновпску и хоть аллаха там поставить.
492 1966682
>>66678
Алсо, даже на говнохосте должна быть возможность запустить через cgi. Это хуевенько, но работать будет.
493 1966683
>>66678
бесплатный
4d8ecc6967b4a3d475be5c4d881c4d9c.jpg39 Кб, 728x712
494 1966687
495 1966699
>>66675
Пошел нахуй из треда, пидорас
496 1966712
>>66683
Чел, самый днищенский впс меньше 200 рублей стоит. Буквально одна пачка сигарет. Или пару обедов в школе, или кофе в старбаксе, или бигмак, что для тебя там актуально.
497 1966716
>>66712
в месяц)
498 1966723
>>66716
Ну так ты можешь раз в месяц и оплачивать, экономя на вышеназванных вещах.
499 1966736
Вот вы напомнили про подписки, я посмотрел сколько у меня в месяц на них списывается около 130 долларов, пиздец, я даже забыл на что подписывался.
500 1966762
>>66736
У меня гитхаб премиум был в прошлом году (скидон был), пытался спиздить 3700, а бабки на вкладке маринуются и на карте редко больше 5к бывает, в тот раз было меньше. Изи вей, для отключения списывания. Я никак не могу найти где говноофис свою подписку держит, просто списывает нахуй и все.
501 1966763
>>66736
У тебя софтина вся лицензионная что ли?
502 1966765
>>66675
На Heroku задеплой, юродивый.
503 1966766
°
504 1966769
>>66763

>Лицензия


На каждую проериетарную хуйню есть жопенсорс поделие.
Тот же DBeaver CE умеет все кроме Mongo, а подписка там охуеть дорогая. Вся суть в том, что либо все из коробки,но платно либо все из кучи маленьких коробок, но бесплатно.
505 1966777
>>66769

> все из кучи маленьких коробок, но бесплатно


Я так на вим хотел полностью перейти. Но эти блятские конфиги под каждый проект настраивать - нет уж. Перешел на vs code. Что-то среднее оказалось и вполне устраивает. Плагинов - хоть обосрись, только половина глючные страшно, особенно от микрософта
506 1966801
>>66777
Ты про PyLance/PyRight? Нормально работают, заставляют правильно type hints писать, хотя и ругаются на 'Possible None value...', но я ж не макака, а целый бабуин и вместо None будет обработка exception, о котором PyRight не знает, сука
507 1966805
>>66777
А ещё забыл, что эти ебаные typehints заставляют тащить с собой кучу импортов.
То есть если
def method(arg:BaseRequestModel) ->BaseResponseModel: то в импорте должно быть
BaseRequestModel, BaseResponseModel
И тут цирк с конями и блядями, так как уже начинается жава ынтырпрайз и абстракции.
508 1966823
Чего покурить для прочного понимания async/await и в целом механики асинхронности в пайтоне? Как-то не особенно много контента, вроде.
Алсо, что там с ASGI нынче? Фактически стандартом становится?
509 1966872
Добрый вечер, полный ньюфаг впринципе в программировании. Какие задачи можно решать питоном и какие цепочки развития впринципе есть? как я понял кроме самого языка надо еще что-то учить в зависимости от задач. Что сейчас перспективнее, буду оч благодарен если пропишите алгоритм учебы.

Да и вообще, возможнн ли вкат в питон за год очень активной учебы ( в день по 8+ часов)?
510 1966896
>>66801
Видишь ли, у меня один проект пока на втором питоне. В медленном процессе перехода на 3 не по моей вине. И только один pls, Microsoft, работает со вторым. Еще с 18 года там ебучий баг, что он что-то в фоне анализирует и ломает к хуям весь автокомплит.
511 1966904
>>66872
Это не твое. Займись лучше паскалем или бейсиком
512 1966937
>>66823
Таки да, nginx уже нативно может с ASGI работать, RIP Apache.
513 1966938
>>66896
Легаси на 3.7+ уже просто так не перевести, мне тебя искренне жаль.
514 1966941
>>66872
Вкат возможен за 8+ часов в день за полгода с пет проектом адекватным. Просто так читать и писать говняные сниппеты смысла нет. Тот же парсинг страниц хуйня без задач, пока не свяжешь с чем-то ещё (аналитика, к примеру, автозакупка)
515 1966942
>>66066
Ставь в базе семафор на этого пользователя при запуске первой таски. По завершению работы семафор снимай. Во второй таске чекай семафор. Пока он есть, крутись в ожидании.
516 1967005
>>66938
Этими вопросами пусть тимлид и главный админ заморачиваются, а меня привлекают по мере необходимости.
Питон тред №115 python 517 1967015
Тред, посвящённый языку программирования Питон, #115

Предыдущий: >>54138 (OP)
Литература:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание
Ещё книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек: https://yadi.sk/d/H-00n-UG3RSQem

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить
https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться

#######################################

ЧаВо: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Актуальность примерно 2015 года

Вопросы-ответы:
— А стоит ли читать Лутца, том номер N?
Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.

— Стоит ли читать %книга_нейм%, если там питон версии 2.х?
Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х

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

— Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги.
МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0

— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом?
Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4

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

— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)

— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется

— Как можно без лишней возни ускорить программу на питоне
1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь.
2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.

— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём
Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.

ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
Исходник: https://dumpz.org/bASGKD8cCFDf
Питон тред №115 python 517 1967015
Тред, посвящённый языку программирования Питон, #115

Предыдущий: >>54138 (OP)
Литература:
https://ln2.sync.com/dl/cf2c1d070#xq4s328t-xbbjys2z-9r6j7ss7-gf4e9dv6 <-- Книжки, новое собрание
Ещё книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Тоже книжки: https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек: https://yadi.sk/d/H-00n-UG3RSQem

Анон, вместо того, чтобы без разметки постить код, лучше шарь его через специальные ресурсы:
https://ideone.com/ - возможность постить листинги кода и онлайн-запуска, не требует регистрации
https://dumpz.org/ - можно постить листинги, не требует регистрации
https://pastebin.com/ - для листингов, регистрация не обязательна
https://www.codepile.net/ - можно расшарить код в том числе на редактирование, особая полезная опция - чат при каждом листинге, где можно код обсудить
https://pyfiddle.io/ - запуск python кода онлайн, но чтобы шарить, надо регистрироваться

#######################################

ЧаВо: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat Актуальность примерно 2015 года

Вопросы-ответы:
— А стоит ли читать Лутца, том номер N?
Мнения в треде разделены. Кто-то за (очень неплохая база даётся), кто-то против (слишком много воды и объём книг убивает всё рвение). В общем — решать тебе, книга вредна не будет, но ты можешь её просто не дочитать и забросить.

— Стоит ли читать %книга_нейм%, если там питон версии 2.х?
Нет, не стоит. 100% есть более актуальная книга, для пистона 3.х

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

— Есть у кого на примете годный курс лекций по алгоритмам? Формат лекций мне как-то ближе, нежели просто чтение книги.
МФТИшный курс, например, https://www.youtube.com/playlist?list=PLRDzFCPr95fK7tr47883DFUbm4GeOjjc0

— Что можно почитать/посмотреть по многопоточности/параллелизации в питоне, да и вообще в целом?
Очень годный ролик на американском языке про многопоточность и асинхронность https://www.youtube.com/watch?v=MCs5OvhV9S4

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

— В ньюфаг-треде написано, что нужно начинать с SICP, чтобы научиться программировать
Вот, пожалуйста, та же самая программа, но переработанная под язык Python: http://composingprograms.com/ (нужно знать ангельский или уметь пользоваться переводчиком)

— Можно ли на питоне делать мобильные приложения?
Да, смотри на фреймворк Kivy https://en.wikipedia.org/wiki/Kivy_(framework) https://kivy.readthedocs.io но народ на него жалуется

— Как можно без лишней возни ускорить программу на питоне
1) проверь сначала свой код, алгоритмы и структуры данных. Чаще проблема здесь.
2) код можно иногда феерично ускорить, используя JIT (Just-in-Time) компиляцию. Почитай обязательно про модуль numba, он ставится через pip, и альтернативный интерпретатор PyPy.

— Дайте нормальные книжки на русском! Мы, блядь, не в пиндосии живём
Брат, смотри книжки по ссылкам в шапке, там есть и русские. Но помни, без языка ангелов твоя жизнь проходит мимо и ты обречён быть на обочине знаний и технологий.

ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
Исходник: https://dumpz.org/bASGKD8cCFDf
1539278313734.png1,1 Мб, 782x616
518 1967019
>>67015
Небольшой segmentation fault

ПЕРЕКАТ
>>1967018 (OP)
>>1967018 (OP)
>>1967018 (OP)
>>1967018 (OP)
Тред утонул или удален.
Это копия, сохраненная 18 мая 2021 года.

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

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