Этого треда уже нет.
Это копия, сохраненная 7 августа 2019 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Python 3.7.3 /python/ Python 3.7.4 1421793 В конец треда | Веб
ЧАВО: https://github.com/TheKnightsWhoSayNi/info/wiki/Hat - с этого начинать, перед тем как задавать вопросы.

Книжки: https://yadi.sk/d/HQhhsBsq3TVRUq
Ещё книжек? https://yadi.sk/d/tArKKuQu3Kejuq
Больше книжек Богу книжек! https://yadi.sk/d/H-00n-UG3RSQem

Коммуна: https://sites.google.com/view/pypry/
2 1421796
Немного добавлю от себя к шапке:
https://pythonprogramming.net/
Вполне неплохие туториалы для ознакомления с той или иной либой.
Но только для ознакомления, т.к. материал устаревает и изначально подаётся поверхностно.
Обязательно к прослушиванию и просмотру:
https://www.youtube.com/results?search_query=Raymond+Hettinger

Аноны, добавляйте свои ссылки на годные онлайн-курсы и т.п. по различным направлениям, если таковые имеются.
3 1421804
предыдущий https://2ch.hk/pr/res/1408614.html (М)
image.png929 Кб, 1200x500
4 1421889
Привет аноны - датасаенсеры!

Будьте добры, ответьте, пжлста, на парочку вопросов :3

1. Много ли среди вас людей без математического/прогерского высшего образования? Есть ли вкатывальщики с непрофильным ВО, но прошедшие кучу курсиков?

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

3. Как вы своё портфолио составляете и составляете ли? Просто перечисляете, какие модели вы построили и насколько они повысили таргетные показатели?

4. Сколько человек обычно работает над анализом одного датасета?

5. Существует ли потребность в дата-саенсерах, неплохо шарящих в медицине?

Заранее спс за ответ.
5 1421899
>>21889
Не датасаентист, но работаю непосредственно с ними.
1. Не много, в команде из 12 лишь трое было без профильного ВО, но они были после колледжа и в процессе получения ВО. Они там чисто от армии косили, да. Но тут есть одно но, огромное, ибо они поехавшие на этой тематике и у каждого по куче сертификатов было с онлайн платформ, по прохождению курсов разных, связанных с их работой. Поэтому фору дали бы любому товарищу с ВО.
2. Держать отдел датасаентистов - дело дорогое. Успех никогда не гарантирован, на обучение одной модели, могут уйти недели, на охуенном оборудовании, а результат может оказаться говном. Поэтому чаще всего это либо отдел в крупной фирме, либо же сама фирма состоит на 90% из ресерча и продает свои услуги.
3. Ничего не могу сказать.
4. Просто над анализом? Один. Над аналитикой - один. Над построением модели обучения - один. Над использованием модели - один/два(зависит от объема зада решаемых, т.к. обычно юзается куча моделей и каждая отвечает за свое, к примеру распознавание лиц, распознавание номеров автомобилей, распознавание возгораний и т.п.). А ещё есть те кто оптимизируют, тестируют. А ещё обычно идёт разработка в нескольких направлениях.
5. Узконаправленно, но почему бы и нет? Ищи и найдешь.
6 1422039
>>21899
Спасибо!
7 1422053
>>21889
Был с незаконченным профильным ВО.>>21889
8 1422080
Подскажите по фласку, пожалуйста.
Есть проект, сейчас в нём используется flask-bootstrap. Формы wtforms получают визуальное отображение опять же с помощью flask-bootstrap.
Но оный плагин использует бутстрап третьей версии.
Не могу выбрать, на какой хуй сесть - использовать просто фласк, импортировать бутстрап как все обычные люди с его cdn прямо в шаблон и прописывать формы самому ИЛИ использовать flask-bootstrap и сидеть на старой версии собственно бутстрапа.
Какие подводные у этих методов?
9 1422127
Проебали шапку, шланги!
10 1422130
>>22127
Вроде ж всё на своём месте?
Кроме названия
11 1422134
>>22130
Ага, про название и речь. Я еще утром зарепортил моче, но воз и ныне там.
12 1422348
>>22134
Сука, починили блять.
Пистон 3.7.3, заебись.
покажи мне его.webm3,9 Мб, webm,
1280x720, 0:26
13 1422399
14 1422417
Есть список из целых и не очень чисел, нужно показать их в читаемом виде. Сначала просто делал round(Decimal(value), 3).normalize() и все было прекрасно, пока не дошел до десятки, что делоть? Может есть что-то из коробки? А если нет, то почему не запилили, это же всем нужно

https://repl.it/repls/OrchidMulticoloredProgramminglanguages
15 1422429
>>22417
1, Что для тебя читаемый вид?
2, Что насчёт getcontext().prec = n ?
16 1422435
>>22429

>1, Что для тебя читаемый вид?


Число с плавающей точкой с точностью до трех знаков без нулей в конце и без указания экспоненты

>2, Что насчёт getcontext().prec = n ?


Производятся и другие расчеты с Decimal, которые нельзя просто так обрезать, а менять значение prec каждый раз не очень хорошая идея
изображение.png8 Кб, 339x297
17 1422461
>>22417
>>22435
Я извиняюсь, может просто циклом прогнать, с нужным форматом НЕ целых чисел?

мимо-нюфаня
18 1422476
>>22461
12.01255 это 12.0126, а не 12.0125, можно ли явное округление сделать?
изображение.png8 Кб, 349x259
19 1422479
>>22476
сейчас загуглил "округление" Python, и оказалось что всё ещё проще, не надо форматом и конвертацией ебаться. Для округления есть функция round, которой надо сообщить количество тебуемых знаков после запятой
20 1422482
>>22476
а, лол. Вижу, ты уже пользовался round. И не понимаю что случилось после десятки.

мимо-нюфаня.
21 1422485
>>22417
нихуя, кому-то впервые за десятки лет понадобился g специфаер!!!!!!!

> '{value:>.3g}'

22 1422486
>>22485

> f'{value:>.3g}'



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

>>22485

>'{value:>.3g}'


Во, действительно то что нужно, спасибо!
24 1422488
>>22487
хотя я только что вспомнил, что это делает ссайнтифик нотейшн для больших чисел
1000 уже в экспоненциальной записи будет
25 1422490
>>22487
Хотя, стоп, подставил 1.00003, вывод 1.00
26 1422494
>>22490
да. верни g на его пыльное место
попробуй сей костыль:

> f'{value:>.3f}'.rstrip('0').rstrip('.')

27 1422500
>>22494
Да, это работает, спасибо. Странно, что это никто не добавил в стандартную библиотеку, мне казалось, что потребность в такой вещи, как показывание пользователю данных в нормальном виде должна быть вшита по дефолту
изображение.png6 Кб, 344x212
28 1422505
>>22490
А сколько должно быть?

>>22485
поясни плиз, не понимаю. Применил этот специфаер, но он рубит на общее количество знаков - тоесть есл ставишь ему параметр 4 - то он считает 12.01 - 4 знака, и 2.016- 4 знака, тоесть он учитывает и до и после запятой. А как его отформатить, чтоб он только после запятой работал??
29 1422511
>>22500

4 это знаки после запятой, а если там 12.0100 то он сам отбросит лишние нули
30 1422515
изображение.png7 Кб, 328x244
31 1422526
>>22511
В том то и дело что 4 в данном коде вопспринимается как общее - до запятой и после. Почему? Посмотри на скрин, на число 12.хххх и 2.хххххх
32 1422535
>>22526
а, точняк. ну тогда не знаки после запятой а significant digits. это даже более дефолтно
33 1422539
>>22535
так как сделать чтобы это работало на знаки после запятой?
34 1422558
>>22539
вот инХУЙстрХУЙукцХУЙия: >>22494

(спамлист обезумел, сможете ли вы совладать с ним?)
35 1422562
инструкция
36 1422605
>>22558
Блин, ткни пожалуйста как применить это в моём коде. И где вабще про такое почитать
37 1422609
psycopg2 - инъекционно-устойчивый, если делать запросы по гайдам?
# the correct conversion (no more SQL injections!)

>>> cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)",

38 1422625
>>22605
resultlist = [f'{value:>.4f}'.rstrip('0').rstrip('.') for value in list]

про что именно почитать?
39 1422627
>>22609
Да.
Но всё же лучше использовать ОРМ, там где юзаются данные левые.
40 1422719
Отзовитесь аноны кто строил теграм бота, желательно на python-telegram-bot.
Как получить инфо сообщения по его id
41 1422720
>>22719

> Как получить инфо сообщения по его id


есть же дока к апи которая всё прекрасно расписывает
42 1422741
>>21793 (OP)
Блин, товарищи питонисты, поведайте Жаба-разраберу, заглянувшему к вам на огонек, с хрена ли вы каличные особенности вашего языка пытаетесь выставить как достоинства и преподносите еще как некую "философию языка"?.. Вы там совсем ебанулись что ли?
Недавно видал как адепт Питона до последнего защищал отсутствие public/private методов и аттрибутов, утверждая что наличие лезвий бритвы на питьевой кружке - заебись идея, и надо всего-то держать кружку определенным образом, тогда ты уж точно не порежешься
43 1422742
>>22720
Либо я тупой, либо в этом python-telegram-bot этого нет. Вообще я не уверен, что это в самом телеграмме есть.
44 1422745
>>22741
Ты и из жабы сможешь вызвать приватный метод через костыли, если понадобится, я лично пользовался этим во время тестирования.
Глубокое закапывание ни к чему не приведет, если тебе это действительно захочется сделать
TVTRgDIpFA8.jpg105 Кб, 654x417
Помогите долбоебу 45 1422747
Я хочу перенести телеграм-бота на вэбхук, для этого нужен адрес сервера, на котором будет запущен бот и сертификат. Насколько я понял, сертификат можно сделать самоподписанный через opensll. НО КАКОЙ МНЕ АЙПИ АДРЕС УКАЗЫВАТЬ а точнее, где и как можно создать тестовый сервер, чтобы он не висел на моем ПК, чтобы я мог отправлять на него ссаные пост-запросы от телеграма?
Извините, если это тупой вопрос.
46 1422759
>>22741
тухлая паста
47 1422802
>>22747
Можешь на pythonanywhere выложить, только там скорее всего какие-нибудь дополнительные тулзы нужно будет использовать (типа flask-sslify). Можешь ngrok использовать.
Вообще можешь видос посмотреть, здесь всё подробно показывается.
https://www.youtube.com/watch?v=ZggfQnmQhwY&list=PLlWXhlUMyooaTZA4vxU9ZRZQPCFxUq9VA
48 1422911
>>21793 (OP)
А действительно питонист по большей части ебётся со строками?
49 1422916
Сап прогромач, что скажите про курс питона для новичков на stepik?
50 1422918
>>22911
нет
51 1422922
>>22741
Технические особенности языка. При большом желании можно сделать защиту от переопределения метода или вызова из объекта-наследника. Только не нужно.

Приватные методы не защита от хакеров, а указание, что этими методами пользоваться не надо. Плюс, это методы для служебных нужд. Для последнего полезно, чтобы не было случайного переопределения методов, и жалко, что этого нет. При желании, можно обойти, если явно вызывать метод класса
MyClass.myMethod(self, args)
он уже не будет переопределён, если в детях сделают аналогичный метод myMethod
6uQdhpwwPC8.jpg66 Кб, 700x284
52 1423073
>>21793 (OP)
Вопрос ультраолдам и профи.
Нужен совет, я вроде достаточно владею VIMом и он мне очень нравится, но один знакомый сказал, что все профи в командах пишут в Pycharmе т.к. в нем есть все приспособы контроля версий, дебагинга, управления проектом, etc и я его понимаю, ведь пайчарм строго специализированный инструмент и должен быть лучшим в своем деле.
Но, он мне почему-то в своей блоатности отвратителен, а вим я люблю. И вот теперь главный вопрос, могу я просто юзать вим и по мере продвижения и возникновения потребностей просто обвешивать плагинами таким образом, чтобы ничего не потерять, но и кодить на высшем уровне?
А еще недавно запустил и увидел какую-то спай лицензию JetBrains Privacy Policy в интернетах пишут, что можно весь спай отключить, но тот факт, что мне его суют под видом пользовательского соглашения, напрягает.
Я в принципе готов осваивать пайчарм, но очень не хочу.
Ответьте адекватно пожалуйста, кто владеет обоими инструментами, почему выбрали тот или иной. Спасибо.
мимо_нюфаня
Алсо, залил пикчу и подумал, что возможно стоит упомянуть, что я правый чад с пикрилейтед.
53 1423096
>>22745
Тесты это одно. Работа на крупном расширяемом проекте, завязанном на бабках - совершенно иное. Защита от дурака это фундаментальный принцип существования любого производственного процесса, и не только в прогинге
гифки-Razer-Питон-змея-5133183.gif4,9 Мб, 270x480
55 1423333
пацаны что можно создать на питоне?
56 1423386
>>23333
бота для телеги
2UWB2.jpeg83 Кб, 653x593
57 1423394
>>23333
пожирателя тянок
58 1423406
>>23333
змейку можно создать. каждый день создаю змейку на питоне. бывает даже по две за день успеваю.
59 1423423
>>23386
вообще он как востребован?
60 1423426
>>23423
для работодателя норм експиреенс думаю
61 1423471
>>21793 (OP)
https://repl.it/repls/FaroffDisgustingOutliers
Как переделать регулярку так, чтоб она нашла не только первое вхождение паттерна в скобках, но и все остальные? Учитывая, что эти паттерны мы ищем после того, как нашли кусок 'hi:{'

Сейчас получается: ['"pro":{fgfgfdfg}']
Должно быть: [('"pro":{fgfgfdfg}', "ls":{fgfgffd})]
62 1423519
>>23471
text1 = text1.split('hi:{')[-1]
regexp1 = r'".+?":{.+?}'
15576910956670.jpg327 Кб, 750x718
63 1423551
>>23519
Весьма просто, оказывается! А я б пытался хер знает сколько времени все в одну регулярку впихнуть.
Спасибо, выручил.
64 1423561
Анон, подскажи плз.
Дано: спискок из 5 слов.
принтом рандомно выводим одно слово
далее нужно из списка его убрать и вывести рандомно слово из 4ех оставшихся.
И так далее.
2965013123418721153171000001851982571489246830309205n.jpg45 Кб, 543x720
65 1423567
>>23551
да я б тоже, но с этим желанием нужно бороться, товарищ
66 1423595
datetime.datetime.now() как срубить милипесюльки в конце?
67 1423661
>>23595
гугли strftime()
>>23561
Самый простой путь:
a = ['a', 'b', 'c', 'd']
el = random.choice(a)
print(el)
a.remove(el)
68 1423663
Анон, есть желание применить/отточить/изучить на практике свои знания по Qt5, или же cv2, а может быть и pytorch/keras/tf - пиши.
Хочешь поработать в команде(ну, я один, почти, но вместе уже команда) - пиши.
Или тебя заинтересует тематика проектика:

> Программа для детекта дубликатов мемасов и вебмов(пока что нет, но в будущих версиях точно добавим, чэсна).


Пиши.
Принять участие в разработке не готов, но есть идеи или же хочешь потестить - пиши.
Почта для связи - brH.4om.andrANUSyavQ4ndexPUNCTUMru0Tu
Как-то так.

Последний раз, честно
69 1423664
>>23561
import random
m = ["one", "two", "three", "four", "five"]
word = random.choice(m)
m.remove(word)

это идея, в цикл сам завернёшь
70 1423681
>>23661
print(datetime.utcnow().strftime('%H:%M:%S')) нормалёк
71 1423685
>>23561
import random
import time

a = ['twoi', 'lubimii', 'spisok', 'anon']
def takeAndDel(a):
el = random.choice(a)
print(el)
a.remove(el)
time.sleep(1)
while len(a):
takeAndDel(a)

Run
twoi
spisok
lubimii
anon

Process finished with exit code 0
72 1423697
А можно не выдумывать велосипед для детей которые не могут простой put или push с random и list закомбинить и ответить на мой очень важный вопрос >>23073 ????
Зачем вы так со мной, я же с вами по-хорошему?
73 1423700
>>23073
Ну окей, гляди.
Юзаю nvim для мелкой правки кода и написания небольших приложений, на парочку файликов. Это ок. Правлю конфиги и т.п. через него, на голых серверах юзаю нано.
Пайчарм збс подходит под крупные проекты. За счёт своих плагинов. Хочешь к бд подключиться и сразу селекты писать? Го. Готовый темплейт для джанги/фласка? Хорошо. Не желаешь ли немного профилирования? Давай. Как насчёт рассмотреть как работают твои потоки/процессы риалтайм? Смотри. И т.д. За это приходиться платить выжраной оперативой и долгой переиндексацией, но оно того стоит.
Я не представляю себе, как бы я разрабатывал свой проект, состоящий из 7 модулей, различного объема в виде.
Ну и глядя на коллег постарше, у которых прошел давно максимализм и гикство, понимаю, что пайчарм не зря так популярен ибо они юзают только его и делают это на все 100.
Но выбор все же за тобой, антош. Будет в виме некомфортно - пробуй пучарм, не понравится - потыкай вскод.
74 1423717
>>23194
это апдейт, т.е то что мы только что получили, в историю сообщений бот не может. Спросил в чати либы ответили что можно только реплайнуть нужную месагу, а получить ее инфо, мне нужно было содержание сообщения, нельзя потому что у бота такого функционала нет
75 1423719
>>23717
Задачу можном решить костылём, при чём не самым плохим: берешь какой-нибудь Redis с персистенс-файлом и заводишь туда базу сообщений, после чего по необходимости селектишь нужные message_id
76 1423726
>>23719
У тебя какой опыт пограмирования? я пришел к такому же выводу, но решил изменить концепцию общения с ботом, не прибегая к БД. В общем я в пограмировании месяц, и спрашиваю потому что мне интересно я нормально думаю или я думаю как нюфак
77 1423817
>>23700
Спасибо, чувак. А скажи вскод может все, что ты перечислил и вообще в принципе заменить пайчарм?
Пользуясь твоим советом буду херачить на виме как привык, а если где-то понадобится - буду уже перекатываться на пайчарм, собственно буду надеяться, что обстоятельства будут продуктивным мотиватором и поперед батьки можно не прыгать. Все правильно делаю?
Я толком просто раньше пайчармом не пользовался, пару раз палкой тыкал, потом долго сидел в вске, а потом и до сих пори сижу в виме. Если окажется, что пайчармом можно не заморачиваться, а на крайняк можно обратно прыгнуть на вску - буду пиздец как рад.
78 1423871
Стоит ли реально слушаться совета Зеда Шоу в книге и использовать блокнот + PowerShell или всё-таки заморочится и научиться пользоваться PyCharm?
79 1423877
>>23817
>>23871
Почему вы не хотите сразу пользоваться серьёзным инструментом? Ведь когда он понадобится - вы нихуя о нём знать не будете, потому что в блокноте блять писали
80 1423880
>>23877
Страшно, не понятно. В нотпаде++ накатал, сохранил, в повершеле запустил.
81 1423884
>>23880
К тому же я как скачал пучарм то больше с ним борюсь чем учусь кодить.
82 1423888
>>23880
тебе и не надо ничего понимать - запустил проект, создал в папочке проекта .py файл, и ебашиш. ctrl_shift+f10 - первый запуск конкретного py файла, shift+f10 - последующие. Всё, он тебя не искусает! Но в процессе работы будешь замечать особенности и возможности.
83 1423894
>>23817

> А скажи вскод может все, что ты перечислил и вообще в принципе заменить пайчарм?


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

> Все правильно делаю


Да.
Всё ещё зависит от целей, ибо если ты сидишь дома и для себя там бота для ТГ пишешь, то это одной, а если на работе что-то делать крупное и в команде, то это другое. Вот и всё.
84 1424123
здравствуй, дорогой анон.
у меня встал вопрос.
короче, беру я через апи грейлога респонс.
выглядит он примерно вот так
Есть ответ от сервера, который выглядит так
{"query":"траляля бла1бла"decoration_stats":null}

Дальше присваиваю респонс переменной и ищу по ней регуляркой вот так
нашелбла = re.search('(?<="траляля :).*?(?=1бла")', переменная)
то есть в результате должно остаться бла

Если я создаю переменную и прямо в IDE придаю ей значение как строку из ответа (x = текст_из_ответа), то поиск срабатывает.

Если я выношу его в переменную и ищу по нему регуляркой как re.search, то получаю None. Пробовал форматировать содержимое переменной, обрамляя его в кавычки - все еще None.

ЧЯДНТ?
85 1424124
>>24123
нашелбла = re.search('(?<="траляля ).*?(?=1бла")', переменная)

быстрофикс
86 1424239
>>23561
Блять, какие нахуй remove
Мешается функцией shuffle, затем юзается метод list.pop
87 1424377
88 1424468
Хайль питонисты. Пытаюсь в регулярки.
Как мне найти все слова длины 5? Именно полноценные слова, без цифр и любых других левых символов (хотя бы без цифр)

https://regex101.com/r/q1iSZl/1
Написал это. Но цифры не убираются
.png5 Кб, 325x90
89 1424507
>>24468
вон тебе подсказка полезная, изучи
90 1424532
>>24468
хотя нет, не изучай. питухон же не умеет

[^\W\d_]{5} должно сработать
изображение.png7 Кб, 699x118
91 1424555
>>24532

>[^\W\d_]{5}


т.е. нельзя сказать, что я хочу набор \w без символов из [0-9]? Если можно, то почему не работало?

В регексе работает, спасибо. Но почему-то на ПК чёт не работает. Вроде юникод по стандарту как флаг включен, не могу понять
92 1424571
93 1424638
Существует ли бесплатная ide, где я с sql смогу немного поработать?
94 1424642
>>24571
ухбля. А почему в каких-то случаях и без r можно, а в каких-то надо ставить?
96 1424656
>>24638
любой sql-сервер
97 1424665
>>24656
от майков что-ли?
15433325738940.png31 Кб, 400x345
98 1424672
Марк Лутц "Изучаем" \ "Программируем" оба издания еще актуальны для академического изучения python и в целом как учебник "рецептов"?

вкатывальщик-аутист
99 1424675
>>24665
Л - любой, sqlite - SQLiteStudio, mysql - MySQL Community Edition и тд, зависит от базы данных, которую выбрал... Проще всего тренироваться можно в SQLiteStudio
100 1424683
>>24672
Прочел "Изучаем" два с половиной года назад, после читал статьи и писал пет проекты пару месяцев.
"Программируем" читал уже совсем немного, т.к. по большей части трогал руками почти все что там было. Имхо книжка такая себе, максимум главу про IPC можно прочитать.
Работаю уже год питон девом.

Фишки вроде ассинхронности, последних аддоны стандартной библиотеки (pathlib etc) прийдется читать в статьях.
+ В книгах не затрагиваются фраемворки, самые популярные тоже придется прочитать отдельно.
101 1424685
>>24683

>Фишки вроде ассинхронности, последниe аддоны стандартной библиотеки (pathlib etc) прийдется читать в статьях.


Hotfix
102 1424691
Нужно сделать чат, что и в какой последовательности читать / изучать / тыкать? хочу на фласке
103 1424700
>>24691
сделай сервер в дискорде, ёпта. юзеры спасибо скажут
104 1424704
Анон, подскажи, что в портфолио необходимо для джуна?
Два бота для телеграмма будет достаточно? Все на гит лить? Но там же моего бота украдут
105 1424705
>>24638
Проще всего поставить sqlite там ставить опыты в штатной консоли. В sqlite вся база хранится в одном файле, настраивать сервер не надо, штатная консоль вполне функциональна, подключается легко ко всему угодно, не надо тратить время на то, чтобы админские вопросы решать. Для опытов с sql с головой хватит.
106 1424708
>>24691
Зайти на yandex.ru и набери фразу "как пользоваться гуглом". Освой эту тему, потом с чатом будет проще.

Дохрена инструкций есть по тому, как писать чат, на любой вкус.
108 1424712
>>24711
Ну или еще то, что нужно вызывать GetUserName 2 раза чтобы он вернул имя (в питоне), или то что GetLastError() всегда возвращает 6.
Кто-нибудь тут способен объяснить такое блевотное поведение питона ?
109 1424715
>>24712
Чем тебе не нравятся функции вродe os.getpid() и os.uname() ?

То, что ты описываешь, не питон, а подключение внешних либ, да ещё в винде. Не скажу, почему так происходит.
110 1424716
>>24715
Каких внешних либ ?
os.uname() и os.getpid() из себя представляет такое же точно обращение к API виндовс, следовательно, я ожидаю определенный результат, пытаясь самостоятельно вызвать эти функции, причем не через win32api из pywin32, а через ctypes.windll.
Ну в общем, несмотря на разные результаты одной и той же (по идее) функции все получилось.
111 1424721
>>24716
Потому что тогда надо разбираться с корректностью механизма подключения. Я ничего не могу посоветовать, давно не подключался, и не под виндой.

За то, что ты получаешь с помощью базовых модулей языка отвечают производители языка. Если глюки идут при попытке подключить dll/so, то тут что угодно может быть и может питон в этом ни разу не виноват.
112 1424724
>>24721
А зачем ты отвечаешь то тогда если посоветовать ничего не можешь ?
113 1424777
>>24711
А что не так? В одном случае у тебя HANDLE (беззнаковый инт), в другом ты забыл restype, и у тебя int со знаком. Фактически тебе в обоих случаях возвращают 0xffffffff. Про GetUserName() показывай пример. Для GetLastError() есть use_last_error в конструкторе длл и ctypes.get_last_error() соответственно - ты не один, питон тоже может дергать Windows API, и к моменту вызова GetLastError() напрямую, его могло уже распидорасить (тем же ctypes, например).
114 1424808
>>24704
Ридми красиво и адекватно оформлен?
За сколько комитов сделал каждого бота?
Комиты адекватные пишешь?
Боты можно прямо из репы запустить?
Какой функционал у ботов?
ПЕП8?
Автотесты написал?
Это вопросы на вскидку.
115 1424810
>>24683
Анон, а книги из шапки реально мастхев? Которые intermediate python и python cookbook? В каком-то прошлом треде видел пост, что шапка устарела или что-то вроде того
116 1424814
>>24810
Лично я учился по книге Byte of Python (Укус питона) + курсы на udemy, 3 месяца ушло чтобы вкатится в бекенд разработчики
117 1424818
>>24814
Блин, как-то пиздец быстро, я тоже хочу в бэкэнд, прочитал пока половину укуса питона, но я читаю на английском, и там половина времени уходит на то, чтобы изучать, как это всё на английском называется. До этого только на крестах байтоебил в вузе один семестр(нас учили на системных).
Ну 3 месяца это реально как в мечтах вечных вкатывальщиков
118 1424835
>>24818
Блядь, ты меня затроллил толстотой, да? Пиздец, до меня дошло только сейчас...
119 1424850
>>24818
Ну так то я не с нуля вкатывался, у меня за плечами 13 лет в ИТ админом, при чем умею и на джаве немного и на си шарпе, девопсил на паре проектов, предлагали перейти в отдел разработки на C#, но си шарп не нравится, поэтому уволился, и пошел на бекенд разраба (Django),
120 1424859
>>24808
А че с гитом обязательно нада работуть УУУСУКА. Я понял, спасибо за рекомендации.
Бтв я все равно не понимаю мне обязательно то что я сделал нужно вываливать в паблик чтобы оценили работу? Боты написаны на паблик апи, для меня они исполняют только очевидные общедоступные функцции.
121 1424863
>>24859

> нужно вываливать в паблик чтобы оценили работу?


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

> А че с гитом обязательно нада работуть УУУСУКА


Ну да, в 90% вакансий идёт требование работы гитом. В оставшихся 10% это подразумевается по дефолту.

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


Ну мне это ни о чём не говорит)
Ты главное распиши в ридми какие именно проблемы решают данные боты, и именно для тебя. Или может какие-то крупные сообщества их юзают и т.д., что б было понтно что ты не скопипастил их просто от нехуй делать.
122 1424873
>>24863
я вот эту тонкую грань скопипастил / осилил сам не понимаю.
Я использую 2 API для телеги и инсты, взаимодействия этих штук исполнение нужных мне задач выполняют они. Программирование не сложное и доковыривание и выполнение задач для меня видится задачей тривиальной. Разработка же самого АПИ видится для меня сложнее, отсюда моя работа для меня обесценена и ничтожна, потому что основную работу сделали за меня я взял лишь готовый инструмент. Но с другой стороны, готового решения под мои задачи я не нашел и написал это с нуля, хоть и использую готовые инструменты, вроде бы этим и занимаются в пограмировании, используют готовое нечно для реализации чего то другого. Если идти по пути первого размышления, то изобретение нового языка будет лишь объективно хорошей работой, языка который будет общаться сразу с машиной на бинаре.
Я так понимаю для портфолио делай то что тебе не жалко выложить в паблик, если ты делаешь что то коммерческое не думай о том чтобы это можно было использовать у себя в портфолио как код, как реализованный продукт упомянуть можно,.
123 1424908
>>24873

> много букв


Всё ок, в общем.
Сложность/легкость задачи - дело относительное, не ссы.
124 1424910
>>24908
Хорошо пасиб, пойду дрочить гит
5465465646.jpg919 Кб, 1080x1080
125 1424919
>>24850

>поэтому уволился, и пошел на бекенд разраба (Django),



Какой стек на фронт наиболее актуален и какой у вас используют?

Во фрилансе на джанге жизнь есть?
126 1424962
>>24919
На фрилансе важно знание питона и его библиотек, таких как scrapy и beautiful soup, очень много заказов связано именно с парсингом или скрапингом инфы в инете.
127 1424966
>>24919
Стек везде разный, там где раньше работал использовали angular (который второй сейчас уже 7 или 8) так как там все на C# пишут и typescript им удобнее. А вообще много проектов с React, я бы его советовал учить, Vue хорош, но его сейчас переделывают и говорят что он с будет сильно отличаться от старого, поэтому я бы пока не стал Vue учить.
128 1424972
>>24850
Можно ли вкатиться с нуля в Биг Дату?
В данный момент работаю инженером СВЧ (заебало). В универе было достаточно матана, линала и ОТС, так что с ними проблем нет. Но вот реально ли туда влезать с нуля или нужен опыт разработки на Питоне?
129 1424990
>>24972
Чувак твоя жизнь твои правила, тебе никто не запрещает, пробуй пытайся, не попробуешь не узнаешь. Не слушай никого, есть желание иди и вкатывайся, я 10 лет назад уезжал в ДС, мне друзья и родственники близкие говорили, что я вернусь через месяц, что не смогу и не выдержу, в рот я их всех ебал, я смог, уже 10 лет тут живу. С родными и друзьями до сих пор общаюсь, но смотрю на них и радуюсь что сьебался, а они так и живут в верхних залупках от зарплаты до зарплаты, так нечего и не достигли. По data science на sharewood видел курсы на русском от skillbox. В общем не ссы, дорогу осилит идущий.
130 1424991
Как получить координаты верхней левой точки окна? GetWindowRect возвращает какие-то рандомные цифры
131 1424997
>>24972
Да забыл добавить, для твоих целей хватит основ, главное освоить библиотеки вроде как numpy
132 1425042
>>24991
Ты тредом ошибся и пример забыл.
133 1425048
>>24997
+ matplotlib
+ в зависимости от направления ещё есть специфические либы, типа cv2 для фото/видео.
>>24990

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


> в рот я их всех ебал


Круто. Аж прослезился с осилятора.
134 1425051
>>24990
И как там устроился? В смысле, не приходится ли пол зарплаты за съемную квартиру отдавать, добираться на работу по два часа с утра и два часа вечером обратно, и все такое прочее, или реально пришел к успеху, ну, не знаю, там, долларовый миллионер с квартирой в центре и загородным поместьем в поселке для миллионеров?
135 1425060
анон, мне приспичило поставить свою поделку на хероку, но я что-то сосвем не понимаю, где у джанги находится объект application, который от меня требует херока. Добавил я туда файл как на пик1, вроде как надо через : указать какой application, но я туда всякое разное писал и не работало ничего
изображение.png8 Кб, 496x221
136 1425063
>>25060
вместо первой пикчи
137 1425066
Почему отлично работающий в системе код

pyautogui.click(10, 5)

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

Нужно как-то по-хитрому туда клики передавать? Если да то как?
138 1425071
>>25066
Прошлый тред чекни, там писали про КС на стиме и клики.
2019-06-30 223739-pr - Python 3.7.3.png20 Кб, 1156x196
139 1425078
>>25071
Не богато. Если кто сталкивался, отзовитесь пожалуйста.
140 1425083
>>25051
В целом считаю что не плохо, конечно не миллионер, но есть квартира двухкомнатная, семья, дети, ипотеку правда ещё 7 лет платить. Есть небольшие накопления, раз в год Турция или Тайланд, в целом жить можно. Не люблю хвастаться. В планах прокачаться до синьора и завести трактор в европку ну или в США в идеале, так как понятно, что лет через 20 тут будет СССР 2.0
141 1425135
>>25078
крч все игры в стиме запускаются в неком пространстве, где программно клик не обрабатывается, вот и все.
142 1425140
На сколько я понял лучше всего с обработкой текста в картинке справляется Tesseract-OCR.

Его можно обучать? Т.е. у меня есть текст на английском но шрифт мудреный, библиотека его считывает плохо, можно ее как-то обучить? Вручную присвоив значения образ буквы=буква?
143 1425151
>>25140

>Tesseract-OCR.


> лучше всего


Ха-ха-ха. Лучше всего с обработкой текста справляется файнридер. А тессеракт это бесплатная хуитка от безысходности.
144 1425182
>>25083
Ну и чем это так разительно отличается от жития твоих родичей, только локацией, и все?
145 1425269
>>25182
Все это оффтоп конечно. Но во первых качество жизни, во вторых медицина, образование в ДС лучше, нежели в мухосранске где ближайший универ в в соседнем городе. В третьих в плане культуры, ни одного театра там нету, два кинотеатра, да и в целом кругозор и мировоззрение у них сужено, мне на второй день становится скучно с ними, поговорить не о чем, люди всю жизнь живут в одном месте, многие на море не были никогда. При этом есть зависть типа "вот тебе хорошо живёшь в Москве, деньги гребешь лопатой, миллионер уже поди", но как только предлагаю им тоже перебраться в ДС, то слышу кучу отговорок, "типа ну это самое там дорого, пол ЗП будет на съем уходить", "у вас там куплено все работу не найдешь", " вот щас деньжат накоплю и на следующий год, приеду покорять Москву и лучше тебя буду жить", только все это отмазки. Как-то так.
thinking-face1f914.png12 Кб, 160x160
146 1425351
Что спрашивают на собесах за 130+к в Москве?

Есть боевой опыт джанги/django rest framework/тесты-питесты моки, немного asyncio, пишу убористый красивый код, могу и какой-нибудь functools-itertools ввернуть вместо того чтобы костылить индусятину, могу написать базовый докерфайл-композфайл (но обычно этим девопс занимается). Фронтенд не знаю и не планирую, всегда работал только по бекенду.
147 1425374
>>25351
Не знаю, самому интересно.

На чистую джангу мало вакансий, особенно чтобы 130+. Для бэка хотят кучу сопутствующего, Redis, Rabbit, Celery, Mongo, Postgres, GraphQL, ещё всякое, смотри сам, сама Джанга даже главное.

Если бы я набирал, то спрашивал бы про возможности, вроде как написать свой middleware, как профилировать ORM -обращения к базе, как модели внутри устроены и т.п., это если надо разобраться, действительно ли ты Джанго понимаешь.

Я это чисто для бампа, не обращай внимания.
148 1425380
>>25269
хз если я вдруг найду удаленку я лучше буду жить в своём городке на крайний случай крайцентре. тут уютно в отличие от дс, алсо уезжать за 9000 км от всех кого знаешь и всех родственников как-то не очень
149 1425420
>>24777
Показываю пример
И свой скриншот
В конструкторе dll может и есть, но если мы имеем дело с WinAPI, без мониторинга ошибок, не обойтись, нахуя кому-то понадобилось бы писать без use_last_error и почему нельзя включить это по-умолчанию ?
150 1425477
def screen(x1,y1):
...

cell1 = pos[1]+5,pos[0]+5

Как передать значения cell1 в screen
вот как-нибудь попроще, вроде того:

screen(cell1)

А не вот так
screen(cell1[0],cell1[1])
151 1425492
>>25420

> Показываю пример


> nSize = DWORD(0)


Вот твоя ошибка. nSize - [in, out], т.е., ты туда пишешь размер lpBuffer своего, а GetUserName туда пишет, сколько она в lpBuffer записала (или, если буфер слишком маленький - какой минимально нужен был буфер). Ты вызываешь функцию с нулевым nSize, она фэйлится и пишет, что тебе нужен буфер на 6 байт (len(b'xorke\x00')), и поэтому на второй раз срабатывает. Можешь сделать сразу nSize = DWORD(len(lpBuffer)), тогда одного вызова будет достаточно.

> без мониторинга ошибок, не обойтись


Оно достаточно редко нужно. Я навскидку могу только один пример вспомнить, когда без GetLastError никак - CreateMutex и ERROR_ALREADY_EXISTS. Во всех остальных случаях достаточно проверять возвращаемое значение, и похуй, по какой причине оно там сфэйлилось, поделать с этим ты все равно ничего не можешь. Например, что будет, если я на белом скриншоте подгадаю и сменю юзернейм как раз между первым и вторым вызовами GetUserName? Правильно, хуйня будет. И что, теперь в while ее вызывать?
152 1425494
>>25477
Анпак: screen(*cell1)
153 1425545
>>25494
Спасибо большое!

А как по человечески лучше передать значения этих переменных в цикле?

Не перебором
screen(cell1)
screen(
cell2)
screen(*cell3)

А в несколько строк. Проститу за супер нубские вопросы.
154 1425563
Ребятки, а помогите ньюфане. Не понимаю что делаю не так. Захотел попробовать накатать интерфейс на PyQt5.
Сделал:

>pip install PyQt5 pyside2


Так же установил PyQt5 и pyside2 для проекта в PyCharm.

Накатил простую форму в QTDesigner, сконвертировал результат в .py, вышло так:

https://pastebin.com/GsyHvTMk

Но у меня QT нихуя работать не хочет. При запуске через командную строку выдаёт:
qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
При запуске через PyCharm выдаёт:
Process finished with exit code -1073740791 (0xC0000409)

Решений в гугл нихуя не нахожу толковых, советуют вроде проверить PATH но он у меня чист.
155 1425580
>>25563
ууу, блять, добавил вот такую хуйню:

import PyQt5
import os
dirname = os.path.dirname(PyQt5.__file__)
plugin_path = os.path.join(dirname, 'qt', 'plugins', 'platforms')
os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path

и всё заработало... не пойму где эта переменная должна храниться по дефолту, почему она у меня пуста, если не задать вручную. Не подскаете?
156 1425583
>>25269
А в чем проявляется широта твоего мировоззрения?
157 1425636
tesseract не распознает цйифры, вот в таком виде, что можно попробовать?
158 1425672
Слыхал, что в пользовательских классах в методе __iter__ надо в конце добавлять конструкцию return iter(something), типо "это в духе Python", но понял что метод __iter__ пиздато справляется и без возвращаемых значений с iter, а просто если определить его как генератор с инструкцией yield в теле - можно изи пилить весьма извращенные итераторы. К тому же такой класс-генератор еще и не истощается (в отличие от обыкновенных генераторов), но вот как определить пользовательский класс, в котором генератор будет истощаться?..
159 1425690
>>25380
Ключевое слово здесь "если", поверь найти удалёнку не так то просто, есть два варианта, допустим если ты уже очень опытный специалист с большим багажом знаний то да можно работать удаленно, ну и второй вариант поработать в офисе, показать себя ответственным и самостоятельным спецом и договориться на удалёнку. А так искать удалёнку из мухосранска и без серьезного опыта практически безнадежно. Сам так хочу, планирую дорасти до крепкого мидла или синьора и тогда уходить на удалёнку, чтобы зимовать в теплых странах. Кстати работать удаленно не так то просто, попробуй не отвлечься на родных или сериал или ютубчик, тут уже размазать ответственность на отдел не получится, у каждого свои таски и по ним будет видно, кто пашет, а кто хуи пинает, опять же часто юзают таймтрекеры и следящий софт за тобой, чтобы видеть твою работу. В общем не все так просто как ты представляешь.
160 1425708
>>25583
Ну смотри, когда я жил в верхних залупках, я толком ни чем не интересовался, какие то игрушки, иногда сериалы, не изучал языки, так как не с кем было общаться, не следил за собой, так как мое окружение это были чмони с жирными волосами, лишним весом и гнилыми зубами, я курил, весил 120 кило, выпивал каждый вечер по 2 литра пива. Как переехал, стал видеть как живут люди, познакомился с кучей людей, окружил себя умными и стремящимеся быть успешными людьми, начал следить за собой, скинул 30 кило, не курю уже 7 лет, на алкоголь тоже забил, могу в пару раз в год на корпоративе пару бокалов виски с колой выпить, прочёл много книг, изучаю иностранные языки, был в Европе, в Турции ( не только в туристической), Израиле, в общем посмотрел мир, познакомился за границей со многими людьми, есть друзья везде и не просто друзья попиздеть или побухать, а реальные, кто может приютить или помочь чем нибудь. Интересы и взгляд на жизнь совсем другой.
161 1425709
>>25380

> тут уютно в отличие от дс


Ну, конечно, в мухосрани с гопниками, в которой в 11 вечера на улицу выйти страшно - уютно.

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


Когда ты молодой и здоровый самое то. Иначе зачем жить.
162 1425724
>>25563
>>25580
Ребят, ну подскажите. Создал вручную в переменных средах системную переменную QT_QPA_PLATFORM_PLUGIN_PATH со значением пути к папке platforms. Теперь вроде работает само, но почему так вышло что у меня этой переменной небыло, раз она должна там быть? Или всё должно работать как то иначе?
163 1425751
>>25636
Как насчёт ещё поработать над изображением и разделить его рили на цифры, а то тут число 10.
Может вообще стоит собрать свою базу элементов, если у тебя всё однотипно. Давай больше входных данных, а то нихуя не ясно.
164 1425920
>>25709

>Ну, конечно, в мухосрани с гопниками, в которой в 11 вечера на улицу выйти страшно - уютно.


ты в прошлом остался чтоле
сейчас за внешку скорее в москве убьют вон вчера постили очередную новость каак в мск кого-то зарезали за внешку
165 1425921
кроме кучи вакансий и зп в мск больше хорошего ничего нет от слова совсем
изображение.png39 Кб, 979x512
166 1425943
Ребят, хотел попробовать сконвертить программу в exe с Nuitka, дого с ней боролся, то пайтон64 несовсместим с MinGW x86_64, то русские буквы на пути к пайтону в utf-8 не читались, вроде поборол, теперь вот, пикрилейтед ошибками посыпает. Куда копать?
изображение.png38 Кб, 979x512
167 1425944
>>25943
Ошибок много разных
168 1426039
>>25751

>Может вообще стоит собрать свою базу элементов, если у тебя всё однотипно


Как с этим работать? Да, там шрифт один и тот же, я бы хоть в ручную прописал, если бы знал как.
169 1426055
Есть SQL-табличка с ролями пользователя в системе, и есть табличка с пользователями, которые эти роли занимают. Необходимо прицепить к первой табличке количество людей, которые эти роли занимают. Можно ли это как-то через джоин сделать или придётся массив перебирать?
sage 170 1426060
>>26055
join, group by, count
171 1426066
>>26055
Смотря какой SQL и какие виды JOIN он поддерживает.

Главный нюанс в том, что могут быть роли, у которых нет пользователей. Тогда надо вывести 0, но обычные join ничего не выведут, по идее right join нужен для этого. Но можно и без right join, но запрос будет сложнее.
172 1426153
>>26039
Обычный классификатор можно запилить, на том же керасе/скитлерне/пайторче.
Но для начала нужно нарезать все буквы-символы по одному и сложить в соответствующие папочки.
То есть все буквы "в" в одну папку, в соседнюю папку все буквы "к", и т.п. так для всего.
Затем будешь пробегаться по строке с символами, нарезать её на элементы и отдавать их в нейронку для классификации.
78B4E6EB-2783-4C89-9E88-8ACE0FDB2776.jpeg502 Кб, 1080x846
ГДЕ УЧИТЬ 173 1426158
Компания согласилась за свой счёт обучить Питону.
Какой курс выбрать ? Онлайн или офлайн?
Какие школы посоветуете ?
174 1426165
>>26158
Dive into python
175 1426210
>>26158
Если выбор стоит только между онлайн или офлайн курсами, я бы выбрал офлайн, в прошлом году ходил 3 месяца на JavaScript и Nodejs, отдал 18к, но многое понял, много задавал вопросов прямо на занятии, вместе с преподом сидели разбирали код, в общем считаю офлайн курсы намного лучше онлайн курсов. Если платит фирма, я бы пошел на индивидуальные офлайн курсы или же ментора взял, чтобы он подтянул. Как то так.
176 1426217
>>26210
>>26210
Спасибо.
Я тоже считаю, что офлайн лучше.
Какую-нибудь конкретную контору можешь порекомендовать в Москве?
177 1426348
Написал вот такой код для нахождения директории питона и файла в ней.

#смотрим PATH
dir = sys.path
#Проверяем записи в PATH если есть запись с \lib, которая скорее всего относится к пайтон, останавливаемся на этой директории
for i in dir:
if "\lib" in i:
path = i
break
path = path.replace('\lib', '\scripts')
convertor = path+'\pyuic5.exe'

Или есть какие-то более изящные способы узнать корневую директорию пайтон?
178 1426376
Аноны, я новенький и не понимаю как работает schedule. Допустим есть две функции которые выполняются продолжительное время, если подходит очередь второй функции выполняться по расписанию а первая не закончила исполнение всех инструкций, то вторая функция ждет своей очереди или исполняется параллельно?
Что гуглить по этому поводу?
Еще вопрос если у меня два бота один на вк другой на телегу, и они оба должны работать сообща, то как мне импортировать один в другой? Будет ли хендл телеграмма ждать обновления, пока вкашный будет лайкать/спамить/ делать бочку? Что это за вопрос, тоже параллельные потоки?
179 1426426
>>26217
Поищи Moscow Python, у них есть Learn Python курсы, вроде годные и офлайн в то же время. Преподы все крутые, у них и подкасты годные на Ютубчике.
180 1426437
>>26376
Ты про asyncio или про что?
Параллельно ничего не выполняется, если в разных процессах не запускать.
181 1426440
>>26376
Сразу, если про asyncio и некоторые аналоги, то в каждый момент выполняется только одна задача. Вторая задача ждёт, пока ты разрешишь ей запуститься.

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

Как видишь, всё просто.
182 1426479
>>25545
Если я правильно тебя понял, в цикле будет так:

for cell in cells:
    screen(⚹cell)

Если screen что-то возвращает, конечно, тоже можно ив цикле, но удобнее записать это одной строчкой:

results = (screen(⚹cell) for cell in cells)

Я подразумеваю, что у тебя есть некая коллекция, которую я назвал cells.
183 1426654
>>26348
os.path.join(sys.prefix, 'Scripts', 'pyuic5.exe'), но на линуксе ты соснешь. Скорее всего, Scripts/ уже есть у тебя в path, поэтому просто запускай exe-шник по имени без полного пути.
184 1426675
>>26348
Блядь, как можно пути писать \, это экспейп-символ нахуй, убей себя
185 1426697
https://habr.com/ru/post/458224/
Как индусы порешали синьоров-помидоров и парочку самолетов
186 1426748
>>26697
они на няшной прогали небось

а могли бы:
from flying import *
187 1426763
Хочу вкатиться
188 1426778
Есть ли что-нибудь про нейроночки для тупых ?
189 1426814
>>26654
Спасибо. Да на самом деле мне не запустить надо было, а проверить его наличие. Вся эта конструкция с вызовам os и sys не конвертилась в .exe через Nuitka. сделал проще: при отсутствии самого экзешника и попытке его запуска из командной строки, не обнаруживая такой софтины командная строка возвращает 1. При запуске софтины с ошибкой (неверный аргумент) так же возвращается 1. А при запуске с верным аргументом - возвращается 0.
Тупо сделал:

>check = os.system('pyuic5 --version')


>if check == 1:


> пишем ошибку что пайтон или PyQt5 не установлены



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

>>25943
>>25944
С этим разобрался кстати, правда сам не понял как. Накатил по-новой пайтон, ПиКт5, установил вижуалстудио и по-новой накатил mingw. Теперь другая проблема имеется, но поскольку никто на предыдущие толком не ответил, наверное описывать не буду.

>>25580
С этим тоже вроде разобрался - добавил это:
'QT_QPA_PLATFORM_PLUGIN_PATH = plugin_path
в PATH вручную.
190 1426828
>>26763
разрешаю
191 1426858
>>26440
Пасиб, с асинхронностью я вроде понял, послушал Олега на ютубе, но вот с примером моим нифига мне не ясно, покурю доки к телеграму может че то там написано.
Значит все инструкции выполняются последовательно, а зачем асинхронность вообще если и так все происходит в строгой последовательности по дефолту, чтобы расставлять условия переключения к следующим задачам?
Параллельное исполнение не реализовать в одном процессе? Хотя довольно интересное описание по первой ссылке в гугле, почитаю пойду)
192 1426871
>>26858
Чтобы врубиться и мыслить асинхронно нужно время.

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

Для бэка актуально становится, когда ты с сетью работаешь. У тебя много подключений, ты ждёшь подключений и данных. Это события. Можно параллельно с этим работать, это один подход. Но это плодить треды и процессы и как-то сложно их синхронизировать, это сложно. Можно асинхронно. В синхронном коде ты в основном не считаешь, а ждёшь, пока какое-нибудь событие произойдёт, и ничего не делаешь в это время. Смысл в том, что в это время можно переключиться на другую задачу и поделать её. Как-то так.

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

Короче, и асинхронное программирование, и многопоточное-многопроцессное, это всё довольно серьёзные и содержательные темы. В них надо долго и упорно разбираться, просто так прочитать и сразу понять не получится, это я тебе гарантирую. Но если захочешь, разберёшься.
193 1426872
>>26858
Про бота надо смотреть, как там интерфейсы библиотек сделаны. Можно делать асинхронно, можно через треды или процессы. Везде свои плюсы и минусы, везде свои подводные камни.
194 1426966
>>26872
Короче, мне на столько стыдно осознавать в чем был затуп бота и куда я нахер лез в праллелизм асинхронность, лол. В общем я иэс импорта и не разобрался и не правильно указывал функцию... Но все равно хорошо что покопался и узнал про треды, в одном из ботов они
image.png286 Кб, 1600x900
195 1427003
Что я делаю не так?Я всего лишь хочу проверить есть ли в переменной country массив denmark
196 1427004
>>27003
К слову я вообще не до конца понимаю как работает for...in
Личное мое мнение что for ПеременнаяN in Послеодвательность
Следовательно вся последовательность переходит в переменнуN?
197 1427005
>>27003
У тебя условие вне цикла.
198 1427006
>>27003

>Что я делаю не так


Кривая индентация, забыл двоеточие
199 1427007
Даже два двоеточия
image.png259 Кб, 1600x900
200 1427008
>>27007
>>27006
>>27005
Все исправил,заработало,но получил не тот результат к которому стремился
201 1427009
>>27008
аааа бля,я дебил,ща
202 1427011
>>27009
Сука блядь, у тебя трясутся руки или ты слепой от рождения и ты не можешь отсчитать 4 пробела на отступ?
Screenshot12.png7 Кб, 170x79
203 1427012
>>27008
У меня во дворе пацаны за такое убивают нахуй.
204 1427022
>>27012
а как нада?
205 1427030
>>27022
Индентацию пофикси, мудила. Ссука, прямо вижу этого тупорылого школьника, который увидел незнакомое длинное слово и решил забить, ведь хули, все равно же работает
206 1427033
>>27012
А нахуя ты используешь для сравнение оператор in, а не ==?
207 1427040
>>27033
Я нихуя не использую, использует анон выше. Я просто тихо охуеваю от таких отступов.
208 1427041
>>27040
>>27033
Да я уже все пофиксил,спасибо что указали на ошибки,без вас бы я тупил бы еще часа два
209 1427043
>>27012
О господи, я только сейчас понял какую хуйню ты делаешь >>27033

Тебе короче не нужен for.

>Я всего лишь хочу проверить есть ли в переменной country массив denmark



Тебе не переменная country нужна, а твой список countries.

И ты делаешь так:

if "denmark" in counries:
print("Yes")

На случай если табуляция удалится - перед принтом конечно таб
210 1427151
Анонасы, объясните одну вещь, что лучше изучать сейчас фласк, или джанго? Джанго пробовал, но на мой взгляд на старте проекта там очень много всего накручено.
Вообще, в дальнейшем необходимо будет создавать и развивать систему back-end <-> rest-api <-> front-end, с учётом того, что на фронте не просто сайт/шаблоны, а веб-приложение. То есть на беке отрисовывать ничего особо нахуй не нужно будет, с этим будет ебаться макака на фронте, моя задача реализовать логику/бизнес-логику и рест апи.
211 1427183
>>27151
Можно глянуть на какой-нибудь aiohttp, более современный фреймворк, очень быстрый, с поддержкой современных технологий, от разработчиков питона.

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

Джанго это ОРМ и ещё админка в комплекте. Если тебе не нужна развитая система моделей и админка, то наверно и джанго не нужен. Джанго синхронный, там сложно поддержать вебсокеты и т.п., это фреймворк больше для классических сложных сайтов, а не приложений.
212 1427184
>>27183
Спасибо за информацию, учту.
213 1427185
>>27041
[print("%s\n%s" % (country, 'yes' if country == 'Denmark' else 'no')) for country in countries]
214 1427187
>>27185
Хуита нечитабельная
215 1427190
Ребяточеки, запустив программу в терминале и потом изменив код, он не будет исполняться по новому, а есть возможно сть сделать так чтобы он обновлял свои исполняемый код
216 1427203
>>27190
Есть, в джанге/фласке в дебаг режиме искаропки такой функционал есть. Если ты что-то своё делаешь - надо вручную пердолить это.
217 1427207
>>27190
Сделай бантик, что в консоле будет тебе перезапускать код, когда ты сохраняешь файл с кодом
218 1427239
>>25708
>>25269
Прямо как у Пелевина:

— Главная мысль, которую человек пытается донести до других, заключается в том, что он имеет доступ к гораздо более престижному потреблению, чем про него могли подумать. Одновременно с этим он старается объяснить окружающим, что их тип потребления гораздо менее престижен, чем они имели наивность думать. Этому подчинены все социальные манёвры. Больше того, только эти вопросы вызывают у людей стойкие эмоции.
— Вообще-то мне в жизни попадались и другие люди, — сказал я с лёгкой иронией.
Иегова кротко посмотрел на меня.
— Рама, — сказал он, — вот прямо сейчас ты пытаешься донести до меня мысль о том, что ты имеешь доступ к более престижному потреблению, чем я, а мой тип потребления, как сейчас говорят, сосёт и причмокивает. Только речь идёт о потреблении в сфере общения. Именно об этом движении человеческой души я и говорю. Ничего другого в людях ты не встретишь, как не ищи. Меняться будет только конкретный тип потребления, о котором пойдёт речь. Это может быть потребление вещей, впечатлений, культурных объектов, книг, концепций, состояний ума и так далее.
— Отвратительно, — сказал я искренне.
219 1427244
>>21793 (OP)
Прошёл стажировку по DS, понял, что моё, но в моем мухосранске вакансий 2.5, везде нужен полный день и опыт. А мне нужно закончить последний курс бакалавриата. Что бы такого за остаток лета задрочить? Чем коллеги-датасейнтисты занимаются/занимались помимо DS? Можно и без привязки к питону, с радостью выучу другой язык.
220 1427255
>>26697
$9 в час
тем временем моя зп на прошлой работке была 160 р в час...
221 1427280
>>27255
И это у джунов. Правда до налогов. После налогов считай 80 т.р. Так себе.
222 1427288
>>27244
Если на питон идёшь, я бы какую-нибудь сопутствующую технологию освоил.
Или специализированное, как openCV
Или веб, как джанго или аналоги
Или устроил бы практику по мультитредам-мультипроцессам-асинкио
Или технологии вроде брокеров сообщений, раббит, зероэмку и т.п.
Или работу с базами, SQL-NoSQL
Или можно научиться писать модули на C/C++ к питону.

Одного питона мало, сопутствующие технологии важны и нужны.
223 1427306
Привет, Аноны. Хочу вкатиться в питон. Из опыта - ковырял в детстве совсем немного всякой всячины, дальше хеллоуворлда по сути и не продвинулся. Правда было это несколько лет назад.
В идеале хочу вкатиться в веб на джанге. Начать с фронта (а именно HTML и CSS) или же потом это все догнать, а сейчас сделать весь упор на Питон?
224 1427436
Аноны, поясните пожалуйста, как этим пользоваться:

> PySide2.QtWidgets.QTableWidget.itemDoubleClicked(item)


> Parameters


> item – QTableWidgetItem



Надо узнать что по рандомной ячейке в QTableWidgets даблкликнули.

Мимо-2-день пытаюсь в PyQt
225 1427516
из одного питоновского скрипта мне нужно запустить другой с именоваными параметрами и распарсить его вывод я предполагаю, что выводить он будет в stdout. как это лучше всего сделать? на stackoverflow натыкался на мнение, что лучше всего - это импортировать скрипт, но тогда я что то не въезжаю, как параметры ему загонять. с другой стороны, есть еще всякие call, execfile, но их почему то не рекомендуют, хотя параметры вроде передавать можно.

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

vol.py --plugins="/ololo" -f alala --profile=elele pluginname
226 1427532
>>27516
Такой импортировать скорее всего не получится. Там будут и всякие argparse, и "if __name__ == '__main__'", и ещё что-нибудь.

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

ИМХО в такой ситуации лучше вызвать как внешний процесс.
227 1427699
С чего начать? Шакпа у вас говно
228 1427733
>>27699
Дайв ту питон
Потом разберись с чем нить что тебе интересно и все.
229 1427778
>>27699

> Шакпа у вас говно


Пиздуй в JS-тред, маня.
Или предложи свою шапку.
230 1427784
>>27778
Но шапка правда говно
231 1427788
>>27784

> Или предложи свою шапку.

232 1427794
>>27788
Я волен давать оценочные суждения без предложения улучшения.
233 1427800
>>27794
Ты волен пройти нахуй.
234 1427801
>>27800
Приглашаешь, няша? :3
235 1427802
>>27800
Волен, но моя сексуальная жизнь тебя волновать тоже не должна, но если она тебя волнует, то я не осуждаю, имеешь на это право, пока не сталкеришь
236 1427803
>>27802

>пока не сталкеришь


Оставляй контакты.
image.png79 Кб, 640x383
237 1427805
ну че ебанарот погнали нахуй
238 1427808
>>27801
Я разве написал что на мой?
>>27802

> но моя сексуальная жизнь


Где и что я про неё написал?
239 1427811
>>27805

>погнали нахуй


Нет ты.
240 1427814
>>27811
Лично я, хуи обожаю
241 1427817
>>27814
Это потому что питон ставишь на винду. Гетеросексуалы на линуксе в таких вещах кодят. Но на линуксе тоже есть гомосеки
242 1427999
>>27817
А как быть игродебилам? Линукс не может в игры
243 1428003
как я РЕР8 запомню вы че бляя
Почему? 244 1428009
Сап пайтонбоги! Помогите нубу, не могу понять одну вещь.
учу питон, но застрял

>for i in range( 1, 5 ):


> print ( i )


>else:


> print ( 'Цикл for закончен' )



Вывод:

>1


>2


>3


>4


>Цикл for закончен



Окей, здесь всё понятно, но дальше

>Мы задаём два числа, и range возвращает последовательность чисел от пер-вого числа до второго. Например,range(1,5)даёт последовательность[1, 2,3, 4]. По умолчанию range принимает значение шага, равное 1. Если мы зададим также и третье число range, оно будет служить шагом. Например,range(1,5,2)даст[1,3]. Помните, интервал простирается только до второго числа, т.е. не включает его в себя.



Почему будет [1,3]?
245 1428010
>>28009
Потому что предел не включен.
Что по твоему должно быть вместо [1,3]?
246 1428011
>>28010
Я вообще не понимаю как оно рабит, вот в чём проблема.
247 1428012
>>28009
Пототому, что ранж от 1 до (НЕ ВКЛЮЧИТЕЛЬНО) 5. Надо чтоб было 1, 3, 5 - задай до 6.
248 1428013
>>28011
У тебя начинается перебор i с шагом 2. Первое значение - 1. Второе значение 1+2 =3. Третье значение 3+2=5, но 5 уже выходит за предел.
249 1428016
>>28013
Пасибо огромное, честно. Теперь понял.
250 1428017
>>28016
Тяжело тебе дальше будет.
251 1428018
>>28017
Почему? Как фиксить?
252 1428030
>>27999
Игродебилам нужно программировать на крестах и вообще больше интересоваться вычислениями на GPU. А питон для этого не подходит.
253 1428101
С каких пор кстати словари в Питоне поддерживают возможность добавления int-значений в качестве ключей?.. Были ж только строки
254 1428111
>>28101
Ну здрасти. Всегда так было, ты с чем-то путаешь.

Любые объекты можно в качестве ключей использовать.
255 1428112
>>28111

>Любые объекты


Прям любые?
256 1428115
>>28112
"Хешируемые" можно. Но таким можно любой объект сделать при желании, то есть вот классы и экземпляры классов можно использовать. Словари нельзя, впрочем, хотя казалось бы тоже объект.
257 1428131
>>21793 (OP)
Ребята, хелп
Вкатываюсь в петон попутно решая задачки
https://www.codepile.net/pile/1jP8xyjb
результат почти, но не совсем.
где я проебался?
258 1428137
>>28131
А что ты пытаешься сделать? Логика алгоритма не ясна, словами скажи.
259 1428139
>>28137
например есть у нас строка "abc"
генерируем все возможные варианты из этих букв т.е
abc, bac, cba и тд
260 1428140
>>28139
пиздец
штудируй collections
261 1428142
>>28140
шо?
262 1428144
>>28142
И учись пользоваться гуглом
263 1428148
>>28144
лол
нагуглить эту типовую задачку и скопировать код дело нескольких секунд
но нахуа?
лучше скажи где ошибка в коде выше
264 1428164
>>28148

>где ошибка


Очевидно что в ДНК
265 1428168
>>28148
Потому что такие типовые задачи решаются встроенными средствами, на практике.
Тебе добрый анон указал на либу, которая делает то что тебе нужно. Только он видимо ошибся, т.к. тебе нужна itertools
В чём проблема?
Так же стоит научиться правильно гуглить свою проблему на англицком.
К примеру, запрос python combinations даёт поразительно годные ответы для решения твоей задачи.
266 1428173
>>28168

>тебе нужна itertools


чем она лучше циклов for?

>Так же стоит научиться правильно гуглить свою проблему на англицком.


>>28148
267 1428174
Пишу бота по этому видеоуроку:
https://www.youtube.com/watch?v=nG9nObVSQ6k

Сделал клавиатуру, но она не работает. Что я делаю не так?

полный код:
https://pastebin.com/0cYTcEkS
268 1428175
>>28174
обезьяна не пропускает пост с фрагментом кода
269 1428176
>>28173

> чем она лучше циклов for?


Скоростью.
Читабельностью.
Стандартностью.
Правильностью.

> нагуглить эту типовую задачку и скопировать код дело нескольких секунд но нахуа?


Ты в порядке? Я тебе уже сказал, что подобного плана задачи правильно решать именно стандартными средствами, и всё.
270 1428178
>>28176

>Скоростью.


Your proofs, manya?

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


Ты про итерейшнс? Надеюсь, рофлишь, иначе даже не смешно.
271 1428180
>>28178

> Your proofs, manya?


Запусти и узнаешь.

> Ты про итерейшнс?


Я про итертулс.
Вместо того что бы здесь пиздеть, пошёл бы да начал читать доки к стандартным либам - полезная вещь.
272 1428182
>>28180

>Запусти и узнаешь.


yasno ponyano.

>Я про итертулс.


Спасибо, интересная библиотека, но вопрос был не о том.
Ты пришел повыебываться, в итоге обкакался и обтекаешь. Смысл был самому реализовать алгоритм, а не использовать готовое решение.
273 1428185
>>28139
Количество перестановок - факториал от числа. 3! = 1x2x3 = 6
Количество вариантов кода типа aaa, aab, aac, aba abb - это количество букв в степени длины слова, 3^3=27
В твоем цикле же 3x3=9 операций. Вообще не бьется, не находишь?
274 1428193
>>28185
толковый ответ, спс
по моей логике, первый цикл для прохождения по буквам, второй чтобы вставлять букву в разные места
275 1428219
>>26858
Объясню, предельно упрощенно:
Синхронное выполнение (в одном потоке) - код работает по порядку следования (обычно сверху вниз, лол) в твоем исходнике и соответствует порядку во времени, и может даже выполняться довольно шустро, но внезапно оказывается, что все честно стоят на строке 146 и ждут, когда допишется файлик file.write(MEGA_STRING). После чего выполняются строки 147,148, 149,.. 271 - хуяк! И опять все ждут, когда прочтем из базы хуиту: data = db1.execute("SELECT name
FROM table1 WHERE wtfield = ULTRA_STRING"), а потом идут строки 272, 273, 274... с остальными командами в духе a = b + c и программа успешно завершается.

Асинхронное выполнение (в одном потоке) - это когда ты выполняешь код и, не ожидая готовности к использованию данных из сети, диска, ГУИ и т.д., части кода (например, функции или еще что) могут выполнятся без четкого порядка во времени, но при этом ОДНА ЗА ДРУГОЙ, иногда переключаясь. Происходит следующее: сначала выполняем строки 1,2,3, ... 144, 145, 146 - опаньки, пошло-поехало писать file.write(MEGA_STRING), но мы никого не ждем и выполняем строки 147, 148, 149 ... 271 - опа! выполняем чтение data = async db1.execute(...) и не дожидаясь окончания выполняем строки 272,273 ..., там по пути где-то заканчиваем ввод-вывод в произвольные моменты времени, собираем данные и после этого программа завершается. Мы получили ускорение за счет того, что строки 1-145, 147-270, 272... выполнились без существенных задержек.

Мультипоточное/мультипроцессное выполнение: в данном примере все будет похоже, только перед строкой c вводом-выводом мы заведем новый процесс/поток и пойдем делать это там. Выигрыш такой же примерно. В чем же разница?
А в том, что теперь мы можем исполнять некоторые куски кода ОДНОВРЕМЕННО, если ядра/процессоры/узлы кластера есть. И здесь мы не ограниченны только улучшением работы с операциями ввода-вывода.
То есть, если мы имеем задачу вычислительную: числа от 100 до 500 возвести в 5 степень и вывести полученный результат, то создав 4 потока (при 4 ядрах) , мы сможем вызвать нашу функцию вместо exp5([100,101,102, ..., 500]), как-то в духе:
pool.map(exp5, [[100, ...],[200, ...],[300, ...],[400,...]])
В результате мы получим кратный выигрыш по времени, который не смогли бы никак сделать с одним потоком.
275 1428219
>>26858
Объясню, предельно упрощенно:
Синхронное выполнение (в одном потоке) - код работает по порядку следования (обычно сверху вниз, лол) в твоем исходнике и соответствует порядку во времени, и может даже выполняться довольно шустро, но внезапно оказывается, что все честно стоят на строке 146 и ждут, когда допишется файлик file.write(MEGA_STRING). После чего выполняются строки 147,148, 149,.. 271 - хуяк! И опять все ждут, когда прочтем из базы хуиту: data = db1.execute("SELECT name
FROM table1 WHERE wtfield = ULTRA_STRING"), а потом идут строки 272, 273, 274... с остальными командами в духе a = b + c и программа успешно завершается.

Асинхронное выполнение (в одном потоке) - это когда ты выполняешь код и, не ожидая готовности к использованию данных из сети, диска, ГУИ и т.д., части кода (например, функции или еще что) могут выполнятся без четкого порядка во времени, но при этом ОДНА ЗА ДРУГОЙ, иногда переключаясь. Происходит следующее: сначала выполняем строки 1,2,3, ... 144, 145, 146 - опаньки, пошло-поехало писать file.write(MEGA_STRING), но мы никого не ждем и выполняем строки 147, 148, 149 ... 271 - опа! выполняем чтение data = async db1.execute(...) и не дожидаясь окончания выполняем строки 272,273 ..., там по пути где-то заканчиваем ввод-вывод в произвольные моменты времени, собираем данные и после этого программа завершается. Мы получили ускорение за счет того, что строки 1-145, 147-270, 272... выполнились без существенных задержек.

Мультипоточное/мультипроцессное выполнение: в данном примере все будет похоже, только перед строкой c вводом-выводом мы заведем новый процесс/поток и пойдем делать это там. Выигрыш такой же примерно. В чем же разница?
А в том, что теперь мы можем исполнять некоторые куски кода ОДНОВРЕМЕННО, если ядра/процессоры/узлы кластера есть. И здесь мы не ограниченны только улучшением работы с операциями ввода-вывода.
То есть, если мы имеем задачу вычислительную: числа от 100 до 500 возвести в 5 степень и вывести полученный результат, то создав 4 потока (при 4 ядрах) , мы сможем вызвать нашу функцию вместо exp5([100,101,102, ..., 500]), как-то в духе:
pool.map(exp5, [[100, ...],[200, ...],[300, ...],[400,...]])
В результате мы получим кратный выигрыш по времени, который не смогли бы никак сделать с одним потоком.
276 1428228
>>28193
Эту задачу проще решать или рекурсивно, или имитируя рекурсивность через стек, это один подход. Есть другой алгоритм, стека в явном виде нет, смысл в то, что если была исходная последовательность условно стартующая с 1234567, то глядя на какой-то элемент, например
4563172
можно всегда быстро сказать, какой элемент должен быть следующим.
4563217
4563271
4563712
4563721
4567123
...
в принципе, это почти тот же стек, но без стека. В общем подумай. Интересная задачка, чтобы реализовать, просто для практики.
277 1428234
>>28219
Сюда надо добавить, что треды переключаются в случайные моменты времени, да и само переключение накладно бывает, надо поднимать контекст, кеши могут сбрасываться и т.п. Есть серьёзная проблемы синхронизации, необходимо блочить "критические секции".

В питоне многотредовость вообще будет плохо работать, из-за GIL, это известная проблема. Параллельно код питона работать не будет, ускорение будет только при работе со внешними библиотеками, написанными не на питоне и не привязанных к GIL.
278 1428236
>>28182

> yasno ponyano.


Рук нет? Я должен за тебя гуглить?

> Ты пришел повыебываться


Было бы перед кем.
Я пришёл подсказать верный путь решения данной задачи и всё.

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


Реализовывай что-то поинтересней, не надо заниматься тем, что уже готово и отлично работает.
279 1428238
>>28236
Ты макака что-ли?
280 1428384
Посоны, поясните за multiprocessing.Pool. На основе мануалов от индусов и документации я понял, что он создает пул процессов и через очередь передает им аргументы. Когда процесс отработал, он убирается из пула и заменяется новым?

Интересует вкупе с pool.map. Как это, блджад, работает???
281 1428568
>>28384
Если бы создавать треды было бесплатно, эта хуйня была бы не нужна. Захотел выполнить map допустим, создал треды по числу ядер в системе, выполнил часть работы на каждом ядре, убил треды.
Но создавать треды довольно дорого поэтому создается пул воркеров, которым и скармливается работа.
image.png186 Кб, 1600x900
282 1428576
Народ,меня вот что интересует,если пользователь вместо знаков сложения,вычитания,умножения,деления введ что нибудь другое,как меня его об этом предупредить и оставноить программу
Заранее благодарен
283 1428577
Ребята, подскажите какие-нибудь интерактивные курсы по питону на подобие жавараш и годных видео уроков. Люблю вас
284 1428581
>>28576
else:
print('ты хуй, зачем ты это запустил')
image.png253 Кб, 1600x900
285 1428583
>>28581
Мне нужна конструкция,которая будет предупреждать пользователя в случаи если он введет не знак,а хуй знает что
Наглядный пример что программа пропускает этот пункт
286 1428590
>>28583
operand=['=','-','*','/']
while what not in operand:
print('ты хуй')
what=input("вводи внимательно блядина")
1112233.png3 Кб, 250x193
287 1428596
Аноны, поясните как работает not в скобках. Почему он выдаёт фолс только с двумя нулями. А остальные числа могут быть любые. Я уже заебался пытаться понять как оно работает.
image.png202 Кб, 1600x900
288 1428597
>>28590
не ебу
289 1428601
>>28597
анон, помоги с этим >>28596 молю. объясни как он так считает что при любых значениях будет тру кроме, только если 2 числа равны 0 будет фолс.
290 1428604
>>28596
Мда, то ли я тупой, то ли с этим языком что-то не так.
291 1428606
>>28604
вот-вот и я в ахуе. я не понимаю принцип работы. пиздец уже всех заебал этим вопросом и никто конкретно не ответил!

при том если убрать скобки то будет работать так как это работает. ну как-то же высчиытвается это множественное нот в множественных скобках ёбана врот
292 1428608
>>28601
Скинь если не сложно весь код,я не до конца понимаю сути
293 1428609
>>28608
какой весь код? там нет никакого кода, я в оболочке просто балуюсь различными командами. всё на скрине

суть в том БЛЯДЬ что почему в выражении

not (not (not 2) ) == 5 он даёт ТРУ при любых числах и вне зависимости от количества нотов. и только при двух нулях в выражении

not (not (not 0) ) == 0 он даст фолс
image.png205 Кб, 1600x900
294 1428612
Пофиксил,но все равно не то
image.png205 Кб, 1600x900
295 1428613
>>28590
>>28581
Пофиксил,но все равно не то*
296 1428615
>>28596
Он сначала делает "==" а потом инвертирует самым первым(левым) нотом результат.
297 1428618
>>28615
а почему "=="? он же скобки первым деложен делать. извини, пожалуйста, а ты можешь мне раписать всё на схеме. ну записать это выражение и там по пунктам со стрелочками всё разложить, молю
111245533.png1 Кб, 235x112
298 1428622
>>28615
анончик, смотри какой прикол. вот я вообще уже не понимаю как это работает.

пожалуйста, распиши за эти выражения максимально подробно, каждое действите отметь цифоркой и распиши что оно делает. молю. я пол дня мозг себе ебу наверное и спать не лягу пока не разберусь.
299 1428623
>>28618
Он и делает сначала скобки, но самый левый нот не в скобках, поэтому он делается последним, уже после проверки на равенство.
300 1428624
>>28623
АААА ДОШЛО
СПАСИБО АНОН, ТЫ САМЫЙ САМЫЙ ЛУЧШИЙ НА ЗЕМЛЕ. АНОН, ТЫ ЛУЧШИЙ ПРОСТО ОХУЕННЫЙ. СПАСИБО ТЕБЕ НАКОНЕЦ-ТО Я ПОНЯЛ.
301 1428625
>>28622
-(-(-1))) есть число отрицательное
вот теперь думай почему
мимо
111222222222222.png252x32
302 1428627
>>28623
хотя нет, анон. а как ты это объснишь? 2 not слева и результат изменился
303 1428628
>>28625
возьми то выражение, пронумеруй как в школе на уроке алгебры каждое действие и под каждой цифрой подпиши что он делает. вот тогда я пойму.
304 1428629
>>28628
Тогда ты пойдешь нахуй. Научись напрягаться хотя бы минимально
305 1428631
>>28629
я пол дня уже заебался гуглить и всё такое делать. нихуя не знаю и ты кстати тоже, ты здесь только кукарекаешь. если бы ты знал ты бы расписал там от силы 6 действий.
306 1428632
>>28627
Сначала скобки, потом проверка равенства, потом два нота. Все нормально.
1.png1 Кб, 252x79
307 1428634
>>28632
хорошо, а как ты это обхяснишь тогда. почему ему похуй на цифры? кроме случаев когда там 0 0
308 1428644
>>26158
>>26217
>>26426
Какая незамысловатая реклама. Контора взяла дауна и решила учить питону, ага, сейчас так модно. inb4: я с++еньор, мне только синтаксис выучить
309 1428645
>>28597
открой для себя конструкции else if (elif в питоне) и else в языках программирования
310 1428646
>>26426
если те люди так охуенно знают питон то почему они зарабатывают тем что обучают людей ему а не пишут на нём получая 300кк в наносек?

это как всякие уебаны которые учат зарабатывать миллионы, но при этом единственных их доход это обучение на заработке этих самых миллионов
311 1428647
>>28634
Потому что ты булево значение сравниваешь с числом. А ноль сам по себе булево false.
312 1428648
>>28634
Ну, это совсем азы.
False == 0
True
True == 1
True
313 1428649
>>28647
>>28648
блять. да знаю я что фолс это 0, а тру это 1. ну напишите мне схематично порядок действий и опишите что каждое из них делает. сделай мне вычисление для дауна.
314 1428651
>>28609
Для начала перестань писать выражения с неочевидным приоритетом. not (not (not 2) ) == 5 это (not (not (not 2) )) == 5 или not ((not (not 2) ) == 5)?
Затем перестань сравнивать числа с булевыми выражниями.

После этого можешь перестать заморачиваться такой хуйней, которая интересна только разработчикам интерпретатора питона.
315 1428652
>>28649
Сравнение числа с числом у тебя должно быть под первыми скобками.
image.png204 Кб, 1600x900
316 1428654
>>28645
Спасибо,я уже решил(конечно не без твоей помощи)
317 1428655

>>> def id(x):


... print(x)
... return x
...

>>> id(not id(not id(not 2) )) == 5


False
True
False
False

А вообще это делается так.
318 1428656
>>28651
да мне интересно, занимался и буду такой хуетой заниматься. если он вычисляет интеджеры, с булеанами значит он их вычисляет и я хочу понять как.
319 1428657
>>28656
Ну и дурак
320 1428659
>>28657
а блять вот я долбаёб. до меня дошло сейчас что вынося not За скобки я сравнивал не число а not с числом
ёбаный врот, какая я ебанаха-пидораха
321 1428673
Есть параметры искомых пикселей
pix1 = [8,7,6]
pix2 = [8,8,8]
pix3 = [8,9,8]
pix4 = [8,8,6]
pix5 = [8,10,8]
pix6 = [9,8,8]

Как правильно создать лист из этих параметров и поместить в функцию, для проверки соответствует ли цвет присылаемого в функцию пикселя одному из этих?

def get_pix(x,y):
monitor = {'top': x, 'left': y, 'width': 5, 'height': 5}
im = numpy.array(sct.grab(monitor), dtype=numpy.uint8)
im = numpy.flip(im[:, :, :3], 2) # BGRA -> RGB conversion
pixel= im[1, 1]

if pixel in ??

else:

Заранее спасибо!
322 1428674
>>28673

>лист из этих параметров


напиши пример листа, пожалуйста
323 1428675
>>28673
pixels = [[8,7,6], [8,8,8], ...и так далее ...]
Это самый простой способ, хотя не самый эффективный. Более эффективно было бы использовать функцию where наверное
324 1428679
>>28674
Что ты имеешь ввиду?

list = [1,2,3
4,5,6
7,8,9]

Такой, где значения в нем простые и однозначные, я знаю как работает и если pix=1, то if pixel in list. работает.

Но тут в каждом значении pix еще набор значений, т.е. вроде как нужно создать список со списками.

А такое я пока не изучилл, вот обратился за помощью.
1.png9 Кб, 801x324
325 1428693
>>28625
>>28623
Так сложно это было сделать, профи ёбаные.
2.png3 Кб, 241x241
326 1428702
>>28693
алсо, дополню свой пост вычислениями с питона.
327 1428708
>>28693
Если тебе нужно рисовать картинки для анализа простейшего выражения, ты делаешь что-то не то. Вечер убил на хуйню полную.
328 1428711
>>28708
не совсем вечер. я с 4-х дня ебусь.
да представь, нужны, люблю когда всё по полочкам разобрано нахуй прямо в разрезе как оно вычисляется.

поясни, пожалуйста почему
not 2 любое другое число это False.
но в тоже время 2 и любое другое число не == True? А только 1, а почему?
329 1428714
https://github.com/deepinstruction/deepnude_official
Почему такие поделки всегда юзают питон?
330 1428715
>>28711

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


В уме такие вещи надо делать.

>поясни, пожалуйста почему


Тут нужен вопрос не почему, а зачем.

>>> type(True)


<class 'bool'>

>>> type(1)


<class 'int'>

Как видно, у True тип bool, у 1 - int. Значит где-то (либо перед ==, либо внутри ==, либо после ==, аналогично и not) должно происходить неявное преобразование типа.

То есть сравнение будет либо bool(1) == True, либо 1 == int(True), а напрямую сравнить ежа с ужом нельзя. Смотрим результаты преобразований

>>> int(True)


1

>>> bool(1)


True

>>> bool(2)


True

Так как 2 == True - это ложь, значит имеет место неявное преобразование True к 1, а не 2 к True. Почему я не знаю и знать не хочу.

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

Другой вопрос, зачем. Потому что если не писать говнокод, они неплохо сокращают код от кучи явных преобразований. Когда у тебя yoba возвращает число, но ты можешь написать if yoba(), не if bool(yoba()).

Язык, в котором неявные преобразования запрещены, называется языком со строгой типизацией. Разрешены - с нестрогой. Питон более строг, чем жс, но, как видишь, не на 100% строг.
330 1428715
>>28711

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


В уме такие вещи надо делать.

>поясни, пожалуйста почему


Тут нужен вопрос не почему, а зачем.

>>> type(True)


<class 'bool'>

>>> type(1)


<class 'int'>

Как видно, у True тип bool, у 1 - int. Значит где-то (либо перед ==, либо внутри ==, либо после ==, аналогично и not) должно происходить неявное преобразование типа.

То есть сравнение будет либо bool(1) == True, либо 1 == int(True), а напрямую сравнить ежа с ужом нельзя. Смотрим результаты преобразований

>>> int(True)


1

>>> bool(1)


True

>>> bool(2)


True

Так как 2 == True - это ложь, значит имеет место неявное преобразование True к 1, а не 2 к True. Почему я не знаю и знать не хочу.

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

Другой вопрос, зачем. Потому что если не писать говнокод, они неплохо сокращают код от кучи явных преобразований. Когда у тебя yoba возвращает число, но ты можешь написать if yoba(), не if bool(yoba()).

Язык, в котором неявные преобразования запрещены, называется языком со строгой типизацией. Разрешены - с нестрогой. Питон более строг, чем жс, но, как видишь, не на 100% строг.
331 1428717
>>28714
Потому что питон является лучшим языком для написания тензорных CAS.
332 1428734
Сап.
import sys from cx_Freeze import setup, Executable
^
SyntaxError: invalid syntax

Ругается, сука. Что не так?
333 1428735
>>28734
Сначала надо мозг импортировать.
image.png4 Кб, 513x63
334 1428736
>>28734
Сука, проебался как на трифорсе. Вот пик
335 1428737
>>28735
Чяднт?
336 1428738
>>28734
синтаксис же написано блять
337 1428739
>>28736
новую строку после sys нажми
338 1428740
>>28738
Но я это копипастнул из книги, лол. Что с ним не так?
image.png18 Кб, 679x182
339 1428741
>>28739
Сработало. Но ругается на другое теперь
340 1428742
>>28711

>не, я не тупой, раз не могу понять почему 2*3 = 6, прост люблю, когда все по полочкам разобрано

341 1428744
>>28741
У тебя айсикью хлебушка. Извини, попробуй устроиться на завод.
342 1428745
>>28741
ты наверное при импорте файл в котором кодишь назвал именем модуля вот он и ругается. попробуй скрипт переиминовать в хуй например
image.png20 Кб, 604x215
343 1428747
>>28745
И нихуя.
344 1428749
>>28747
хз, не ебу тогда. я сам ньюфаня
345 1428750
>>28747
pip install cx_Freeze
346 1428753
>>28715
спасибо за развёрнутый ответ
347 1428771
>>28715

>место неявное преобразование True к 1, а не 2 к True.


True к 2 ты хотел написать?
python.png1 Кб, 168x37
348 1428775
Какого хуя?
349 1428776
>>28775
а что ты хочешь получить?
350 1428777
>>28776
Откуда взялось 3 в конце?
351 1428778
>>28777
ну он так посчитал. округли просто до сотых и не парься
352 1428779
>>28778
Почему он так посчитал? Это же неверно
353 1428780
>>28779
примерно верно. Если хочешь точнее - бери decimal.
223333.png213x58
354 1428782
>>28779
всё он правильно посчитал
356 1428787
>>28784
хуй знает, честно. может быть какое-нибудь очередное скрытое преобразование by pythone
357 1428788
>>28784
ну надо decimal Юзать. а здесь типа из-за флоат какая-то хуйня там с памятью. не ебу точно. загугли "питон неправильно считает" там может выйдет что-нибудь полезное
359 1428791
>>28790
спасибо что решение залил. да питон та ещё хуета багованая-лагованая с кучей неясностей. хотя я видел и по хуже.
360 1428804
>>28788
>>28790
>>28784
>>28782

это постирония?
361 1428812
362 1428819
Привет питонач, тупой конечно вопрос.. а джанга это бекэнд? Можно ли на питоне сделать сайт и не юзать html и тому подобное? Чисто на питоне
363 1428826
>>28819
нельзя. вся эта база за 2 недели осваивается
364 1428839
>>28747
У тебя модуль который ты пытаешься имортировать не установлен.
pip install cx_Freeze
365 1428863
>>28234
Там довольно таки популярный бот для инсты на питоне многозадачность которого организована на тредах и расписании https://github.com/instagrambot/instabot/blob/master/examples/ultimate_schedule/ultimate.py
366 1428920
>>28826
html с css чтобы норм работать ему 3 месяца потребуется
367 1428921
>>28779
Блять, ты сейчас серьезно?
368 1428926
>>28921
пошёл нахуй, пиздюк ёбаный. съеби из треда, пока я на твою стрижечку из барбержопа не нассал.
369 1428929
>>28926
Ишак, это же ты вчера усирался: >>28622 ?
Просто пиздец блять. Народ не способен освоить математику уровня 6 класса, не в курсе базовых операций с битами и float-значениями в ЦП и вот это потенциальные погромизды. Ахуеть
370 1428930
>>28929
распиши тогда ему как он считает и он будет знать.
Артемий 371 1428997
Помогите пожалуйста починить проект.
В общем в 16 году, один чел писал симулятор частиц. вот его проект
https://github.com/grogno/Proto/blob/master/Proto.py
и тред https://2ch.hk/sci/arch/2016-09-25/res/364630.html (М)

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

File "proto.py", line 168, in <module>
rungeKutta(particles, dt) #Делает шаг симуляции
File "proto.py", line 115, in rungeKutta
next_positions, next_velocities = Bounce(next_positions, next_velocities)
NameError: name 'Bounce' is not defined
372 1429012
>>28997
Откатись на коммит назад, заработает
373 1429058
>>28826
Джанга это все таки бекэнд?
374 1429060
>>28819
Чё за хуйню ты несёшь? Прочитай хоть один гайд о том, как работает веб.
15623706254320.mp42,7 Мб, mp4,
512x640, 0:30
375 1429105
376 1429184
Открываю hh, пишу python, опыт работы - нет опыта работы. Вакансий 78, почти везде python идёт как дополнение
377 1429214
>>29184

>78


300к в секунду забыл поставить
378 1429295
Тут хоть кто-нибудь в Pysyde/PyQt5 сечёт?
379 1429297
>>29214

>в наносекунду



При чём здесь заработок?
380 1429337
>>29295
Задавай свой вопрос.
381 1429342
>>21793 (OP)
Почему в питоне до сих пор нет нормальных инструментов типа гредла или карго?
Хуже ведь только в c/c++
382 1429421
>>28234
Посоветуй почитать что то с тредами и с паралельностью.
Походу они задачи наложились друг на друга, и эта сука пропустила постинг. злюсь на программу которую коряво написал сам типа у неё был вариант сделать все иначе...ну не дебил? Дебил. в целом работает статистика по другим задачам растёт, а запостить не запостил. Он 9апущен на orange pi zero.
383 1429488
>>29421
Зачем ты пытаешься заебать читателя таким количеством спойлеров? Ты тупой?
384 1429490
Гайз, кто-нибудь может перевести небольшой тривиальной код с плюсов на пайтон? В синтаксис етить не охота вдрачиваться, там буквально знания массивов и циклов нужны
385 1429500
>>29490
$50 в час
386 1429501
>>29500
еб*ать
387 1429502
>>29490
Я могу.
388 1429556
>>29488
Да, по вопросу не ясно?
zhmyh-valakas.jpg94 Кб, 968x905
389 1429587
Объясните мне, django rest framework полезен во всех случаях, или только в тех, в которых требуется сделать внешнее API? И можете подсказать каких нибудь гайдов по фреймворку.
maxresdefault (7).jpg68 Кб, 1280x720
390 1429594
Зачем я учу пайтон? Я найду работу?
391 1429618
>>29587
Гайдов, хуяйдов, пиздец вы блять все обленились, суки. С таким настроем - пиздуй макакой во фронт, или на завод.
Гайды - параша, но на drf ты их в гугле найдёшь ёбаную кучу, все плюс-минус одинаковой парашности. На любом языке. Но это drf, он сравнительно популярен. На тот же flask - уже меньше, на aiohttp - только даташит.
Учи английский, кури даташит, смотри чужие решения на гите, или дрочи паттерны и алгоритмы и делай свои, учитывая ньюансы оформления кода, и выбранной парадигмы.
392 1429660
>>29594
Потому что фантазируешь о 300к. Найдешь, если будешь искать. Но вряд ли программистом :3
393 1429665
>>29660

>фантазируешь о 300к


А так не бывает? В /b говорят средняя зп прогера $5-6к
394 1429671
>>29665

>5~6k


Код для боинга писали прогеры за 9 баксов в час. Это 1.5к в месяц. А в /b как и здесь рекламируют курсы для лохов.
И даже эти ебучие индусы прогеры изучали программирование, а не какой-то там ЯП.
395 1429679
>>29671
У меня 450к/месяц в ДС, задавай свои ответы.
396 1429680
>>29679
Почему тогда сидишь в этом треде?
397 1429681
>>29679
Какие курсы заканчивал? Посоветуй, тоже хочу 450к.
399 1429683
>>29618
кароче ты пернул мозгом и так и не сказал ничего по теме
400 1429688
>>29680
Почему мне тут не сидеть? Я на бордах уже больше 10 лет, последние лет 5 катаюсь в тематике.
/pr попахивает конечно, но тем не менее. Когда-то я тут сам советы просил.
>>29681
Когда я программирование осваивал никаких курсов не было, только книги Страуструпа, Кормана и Кнута. А сейчас уже бестолку. Ну разве что интересно было проскролить недавно Grokking the System Design Interview
401 1429691
>>29683
Я тебе сказал, что гайдов, хуева гора, и все одинаковой степени паршивости, если тебя в гугле забанили, это исключительно твои проблемы. Все эти гайды уровня "Пишем свой блог и делаем доступ к статьям/комментам по апи). Их куча на хабре, есть блоги погромиздов и т.д. и т.п.
Если ты не можешь в гугл, или анализ написанного - выкатывайся.
Но опять же, я тут токсичу сегодня, потому что не с той ноги встал.
Как эпилог, несколько перефразирую сказанное:
Анонче, если хочешь овладеть drf, то подойдёт для начала, любой из найденных в гугле гайдов, по нему запилишь первый проект, уровня laba1, а после уже поняв, как примерно на базовом уровне устроен фреймворк, либо сидишь и гуглишь решения на гите, стаке, либо куришь даташит и вникаешь. После реализуешь это сам. Опять же, как писали несколькими постами выше - начинать нужно изучать не яп, и тем более, не фреймворк, а программирование. Без этого увы никуда. И если формошлёпить можно научиться за 2-3 месяца, то вот реализовывать функционал не предусмотренный изкоробки фреймворком - может уйти и 2 года, если до этого не сталкивался с паттернами, алгоритмами, структурами и т.д.
402 1429733
>>29502
силь ву пле

#include <iostream>
#include <vector>

using namespace std;

int main()
{
long long n, k; cin >> k >> n;
vector <long long> step (n + 1);

step[1] = 1;

for (long long i = 2; i <= k; i++)
step = step [i - 1] * 2;

for (long long i = k + 1; i <= n; i++)
for (long long j = 1; j <= k; j++)
step += step [i - j];

cout << step [n];
}
403 1429753
Хайль питонисты. Маленький вопрос, который не отнимет у вас много времени.

Положим, есть генератор названий фентезийных городов, с суфиксами, там, двойными корнями и прочим. Этот генератор засовывается в бота для телеги.
Как хранить списки суффиксов, окончаний и прочего? В файле и каждый раз читать? Или прям отдельно забить их в питоносписок явным образом? Что быстрее? Что правильнее, с точки зрения идеологии? MySQL не предлагать, не те масштабы (или те и я чего-то не понимаю?)
404 1429759
>>29753
кортеж, разумеется
405 1429784
>>29753

>MySQL не предлагать, не те масштабы


Тогда вообще похуй.

>Что правильнее, с точки зрения идеологии?


Для говноскриптов как-то про идеологию странно говорить. Скорее всего у тебя твоя поделка будет на VPSке работать, поэтому сделай лучше

>прям отдельно забить их в питоносписок

406 1429798
>>29753
sqlite
407 1429802
>>29798
долбоеб
408 1429804
>>29802
Схуяли?
409 1429805
>>29804
потому что хуйню предлагаешь
410 1429807
>>29805
И чем ему не подходит sqlite?
411 1429811
>>29807
Тем, что сраных десять килобайт данных не надо хранить ни в какой БД. Тем, что там нет сложных запросов. Тем, что каждый селект из твоего злоебучего говна будет насиловать диск на обосраной виртуалке.
412 1429824
>>29811
И каждый раз код редачить и деплоить при добавлении нового значения вместо того, что бы к базе один раз подключиться

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


Указал кеширование и никто к диску обращаться не будет
414 1429842
следую этому гайду https://pythonworld.ru/samouchitel-python
че то гавно какое то
изображение.png962 Кб, 1280x720
415 1429860
tkinter актуален для чего то большего, чем учебное пособие по гуи?

Чет припекло и решил в свободное время подвести под свои консольные подделки гуи, но с пользовательскими интерфейсами мало знаком
416 1429867
>>29842
У питона есть официальный туториал можешь попробовать его
https://docs.python.org/3/tutorial/index.html
417 1429879
>>29824
Добавить одну строку и запустить один скрипт для деплоя. Вместо ебучего макакинга вида зайти на виртуалку, запустить пейсон, import sqlite, <тут 5 минут тужения и вспоминания синтаксиса>, хуйпизда.commit()
Даже не знаю.

>Указал кеширование и никто к диску обращаться не будет


Боже, это пиздец. Нести копробазу ради того, чтобы в итоге все равно все в память загрузить.
418 1429880
>>29860
Эти интерфейсы вообще неактуальны как класс, все уже давно в веб укатилось.
419 1429903
>>29833
благодарю
420 1429914
>>29753
Ну а сколько этих самых имен и суффиксов, сто, тысяча или миллион? Как часто их надо менять-изменять, если вообще надо? Нужны подробности. Если их не так много, то, действительно, можешь просто сделать отдельный текстовый файл и забить туда города. Можно и питоновский файл со списком сделать, но, думаю, что данные надо хранить без привязки к конкретному языку
421 1429921
>>29879
Ебать ты долбоёб, /б/ратишка.
Если он захочет изменять список налету? Если захочет расширить функционал и добавить ещё пару таблиц в БД или полей в уже имеющуюся?
>>29753
SQLite твой выбор.
422 1429922
>>29860

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


Особо рьяные на нём делают что-то сложное, но ну нахуй.
Можешь попробовать поюзать PyQT, вполне себе ок.
423 1429925
>>29921
Какой же ты тупой, пиздец просто. Там вся задача на три строчки, а тупорылая макака типа тебя с синдромом утки пытается впихнуть вчера выученную библиотеку в каждый угол, хотя она там нахуй никому не нужна.

>Если он захочет изменять список налету?


>Указал кеширование и никто к диску обращаться не будет


Обезумевший еблан, что ты несешь? Кто кеш инвалидировать внутри процесса будет?
424 1429933
>>29921

>Если он захочет изменять список налету?


>Если захочет расширить функционал и добавить ещё пару таблиц в БД или полей в уже имеющуюся?


>Если ебучий телеграм бот захватит вселенную


Из-за того долбоебизма вы тут и сидите все, лол. Самый простой вариант всегда лучше преждевременной оптимизации.
425 1429936
>>29880

>Эти интерфейсы вообще неактуальны как класс,


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



Предлагаешь мне получать дамп ядра через веб?
Конструктор булко-тролейбуса, ты?
426 1429939
>>21793 (OP)
notepad++
как отключить ёбаную подсветку повторяющихся фрагментов?????????
427 1429940
>>29936

>Предлагаешь мне получать дамп ядра через веб?


Предлагаю тебе вопросы писать с подробностями, а не “ыыыы я тут заибался чо лучше для гуев взять”.
Корки прекрасно в GDB читаются, зачем для них огород из интерфейсов - загадка.
еслизаебало.jpg70 Кб, 697x398
428 1429942
>>29939
нашел как отключить подсветку повторяющихся фрагментов (дубликатов). охуенно ебет глаза и отвлекает.
429 1429943
>>29860
под задачу выбирай и не парься.
всякие qt могут быть тормознуты и тяжеловаты, например.
430 1429945
>>29936
А в чем проблема? Нарисовал интерфейс в браузере, кинул туда файл с дампом, сидишь и смотришь. В клиентском JS выбор для формошлепства неизмеримо больше.
431 1429950
>>29921

>sqlite


Там какие-то траблы были с кириллицей. Если память не изменяет.
432 1429951
>>29950
utf-8 не канает?
433 1429956
>>29951
Вспомнил. upper() и lower() не работали у меня.

A bug: SQLite only understands upper/lower case for ASCII characters by default. The LIKE operator is case sensitive by default for unicode characters that are beyond the ASCII range
P-zvpsr03LE.jpg154 Кб, 1280x698
434 1429993
Аноны поясните мне пару вещей за питон

1) Что использовать вместо исключений? Конструкция как понимаю, заметно тормозит выполнение программы.
Просто прописывать жестко детерминированную логику получения конкретных данных от пользователя не заморачиваясь над конструкцией try/except ?

2) Стоит ли выносить авторизацию пользователя в отдельный модуль, или писать прямо в основном коде проекта? Имхо по ощущениям это самый тормозящий процесс. И в обще насколько оправдано использование микроархитектуры в p2p приложениях? Насколько такой подход тормозит выполнение программы, из за обмена данными и импорта модулей?
435 1429998
>>29993

> данных от пользователя


Данные от пользователя (если это не поток с какой-то мышки или типа того) можно спокойно обрабатывать исключениями. Исключения тормозят выполнение программы когда ты их выбрасываешь по паре сотен в секунду. Ивентов по вводу от пользователя должно быть немного - их спокойно с исключениями можно обрабатывать.
436 1430002
>>29998
Вопрос был в том, насколько тормозит прогу конструкция try/except а не сами выброшенные исключения
437 1430017
Пацаны, надо запилить эмулятор одной очень специфичной железяки для работы, но из ЯП знаю только змею. Сам я не особо силен в кодинге, максимум скрипты хуярил в 100 строк, но принцип ООП вроде осилил. Проблема в том, что больно дохуя классов получается, так как прибор довольно сложный и связан с множеством других простых железяк, я уже путаюсь нахуй в этих классах/модулях. Реквестирую советы как это реализовать на питоне, сам нихуя подходящего не нашел в гугле, или затея говно и мне на js/java/c++/c# перекатываться? Еще реквестирую софтину для перевода uml-диаграммы классов в питонячий код, если таковая имеется.
438 1430040
>>29922

>PyQT


А если попытаться сделать портативный вариант приложения с помощью, например, Pyinstaller, результат не получится ли тяжеловатым, сотни мегабайт даже для самых простых приложений?
439 1430041
>>30040
Попробуй kivy
440 1430043
>>30017
А ты не смотрел в сторону готовых приложений для эмуляции, где можно накидать элементы соединить их линиями и запустить, какой-нибудь там NI Multisim, или Matlab Simulink, или похожая программа? Тебе же электронику надо эмулировать, да? Хотя, и для чисто механических систем тоже должны быть симуляторы.
441 1430046
>>30043

>готовые решения


Не подойдут. Мне на выходе нужен exe-шник с минималистичным гуем, который запустится на любом компе и веб-приложение.
442 1430056
>>29950
Да вроде нет, по крайней мере не встречал за всё время работы.
443 1430057
>>29933

> Самый простой вариант всегда лучше преждевременной оптимизации.


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

> Из-за того долбоебизма вы тут и сидите все


Но ведь ты тоже тут сидишь? Да и как сидение тут влияет на что-то ещё?
Напомню, это не "мы вам перезвоним тред".
Успокойся, болезненный.
444 1430068
>>21793 (OP)
Возможно ли как-нибудь перенести виртуальное окружение с одной машины на другую машину, при чем, эта другая машина не подключенна к интернету? Пусть, для определенности, на обеих машинах стоит убунта.
445 1430070
g
446 1430073
>>30068
Docker
447 1430087
>>30057

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


Невменяемый уебок, остановись. Масштабируемость и гибкость приложения, генерирующего список фентейзиных городов? Ты больной долбоеб, попытайся хотя бы примерно оценивать продуктовую суть задания и траекторию его развития, а не лепить свою ебучую говнотехнологию куда ни попадя.
Когда говно из описания автора вырастет до таких масштабов, что не будет держать нагрузку, то у него уже будет столько денег, чтобы нанять штат переписыльщиков. И вероятность развития телеграмного бота до такого состояния равна примерно нулю.
448 1430108
>>30087
внезапно двачую этого агрессора. устроили цирк, базы-хуязы, хотя задача уровня лаба1
449 1430123
>>30087
>>30108
Ебал твою мамашу.
450 1430202
>>30108

> хотя задача уровня лаба1


Даже если так, но ведь это же не повод городить структуру, которую потом будет сложно дополнить на ходу или изменить немного(флаги какие добавить или ещё что, к примеру).
Тот анон сделает так, как посчитает нужным, офк, но про вариант с небольшой БД будет знать, почему бы и нет?
P.s. Да и логика, как у того поехавшего, уровня "хули тут думать, ебош так" - не самый лучший вариант, как по мне.

>>30087

> Невменяемый уебок


> Ты больной долбоеб


Прими таблетки, неадекват.
451 1430257
>>29337
Прошу прощения за задержку - как сделать так, чтобы дочерние окна закрывались вместе с основным?
452 1430373
>>30041
А для десктопа?
453 1430409
>>30373
PyGTK
wxPython
PyGUI
Pyforms
Насчет веса конечного пакета не уверен, но должен быть поменьше pyqt. Отпишись сюда, как найдешь что то компактное, а то все руки не доходят с гуями поиграться.
454 1430416
Вощем есть скрипт, который я хочу запустить из другого скрипта через subprocess.POPEN. я знаю, что первый скрипт выводит кучу всего в консоль. Как мне этот вывод во втором скрипте запихать в какую нибудь строковую переменную в идеале, чтобы это был массив строк, т.к. некоторые строки мне не нужны будут? Там вроде можно в POPEN указать stdout=PIPE, но вот дальше чёт не въезжаю как там в питоне чё делать
455 1430419
>>30416
Я так делал:
res = subprocess.Popen(['ping', '-c', '3', ip], stdout = subprocess.PIPE, stderr = subprocess.PIPE)
output = res.stdout.read()
a = output.decode("utf-8")
456 1430427
>>30419
Вроде да, а вроде и нет. При запуске скрипта передаю ему параметры таким же образом (['something.py', '-p1', 'val1', '-p2', 'val2']) и тд, но почему то при subprocess.POpen он как то неправильно параметры парсит, потому что если я те же параметры один за одним вобью в терминал, то нормально отработает.
457 1430437
>>30427
Попробуй shell=True c Popen
458 1430445
>>24704
Никому не нужен твой код. Устареет за год
459 1430449
>>30046
Такие решения как, например, LabVIEW или Matlab Simulink или OpenModelica, могут не только создавать программу на основе графической схемы, но и создавать графический интерфейс, и создавать отдельные исполняемые приложения, и взаимодействовать с другими программами, что позволит в случае необходимости работать и по сети.
460 1430472
>>30437
Да уж, как то бля непривычен питон. С shell=True заработало, когда команду и процесс запихал вместе в одну строку. без Shell=True сам скрипт запускается, но как то неправильно пережёвывает аргументы и говорит типа "файл не найден". Т.е. именно логика скрипта это выдаёт, сам скрипт точно запускается. Но на stackoverflow питонмейстеры чёт не рекомендуют Shell=True использовать, типа не секьюрно. Хотя если всё запускается без sudo и на моей тачке и я знаю, что запускаю, то может и нет никакой проблемы с этим?
461 1430481
В питоне можно как в js объекты из нихуя собирать, типа есть у меня массив строк, а я такой беру из ничего
obj.pid = data[0]
obj.ppid = data[1]
и т.д.?
462 1430497
>>30481
Можно, но не нужно.
463 1430501
>>30497
Чому? Очень удобно же. Как вообще в питоне обстоят дела с классами/структурами? Знаю, что в классах можно дефать методы, но про поля когда то давно читал, и там какая то ебатория, что они не как в си-подобных языках работают.
464 1430502
>>30501
В питоновском for x in y: как то можно из под коробки скипнуть первый объект? В C# я бы например через какой нибудь LINQ сделал бы foreach (var x in y.Skip(1)), а в питоне как с таким дела обстоят?
465 1430503
>>30502
Получай срез без первого элемента.
for x in y[1:]
466 1430504
467 1430506
А у вас в питоне есть дефолтный аналог того же LINQа с агрегантными функциями и фильтрами типа Where, Any, Sum, котором можно было бы лямбда-функцию скормить и тд?
468 1430507
>>30504
Ну можешь изъебаться и проверку сделать на то, что enumerate i =10 и скипнуть или опять же сделать срезы типа
for x in y[:10] + y[11:]:
469 1430510
питонач, где про тесты на питоне почитать, в гугле не нашел ничо хорошего
470 1430511
>>30506
Не совсем понял что хочешь.
a = [1,2,3,4,5]
Фильтрация
filter(lambda x: x>3, a)
Перемножение списка через reduce
from functools import reduce
reduce((lambda x, y: x*y), a)
471 1430512
>>30511
Ничё конкретно не хочу. Мне просто нужно одну задачу решить на питоне, а я как бе в нём не бе ни ме, но есть опыт на других языках, вот и спрашиваю местных питонистов какие есть аналоги инструментов, которые я использовал раньше в других языках. За filter lambda x: x <3 спасибо, чичяс попробую.
hellopetuchi.png26 Кб, 601x677
472 1430513
ну привет)
473 1430514
>>30512
Ты лучше напиши, что именно хочешь. filter вернет объект класса filter, тебе нужно конструкцию обернуть в list, чтоб получить список, с которым можно дальше работать.
list(filter(lambda x: x>3, a))
474 1430516
>>30513
False == True in [False]
Решить сможешь? И объяснить почему так?
475 1430520
>>30514
Раз в каждые N мс я получаю вывод из от работы 3rd party скрипта, который представляет из себя массив строк, каждую из которых я split'чу по \t. Этот разделенный сплитом массив список по сути - некая структура, поэтому я и спрашивал, можно ли как в js без определения структуры произвольному объекту навешивать поля. Мне нужно проанализировать, какие объекты добавились, какие удалились, поэтому после каждой итерации запуска 3rd party скрипта я хочу записывать, какие объекты есть, а потом после i+1 итерации с помощью фильтра any/where логгировать, что такие то объекты добавились, а такие пропали. Вот как в питоне наиболее элегантно создать объект из массива и пофильтровать пару списков?
476 1430523
>>30516
Ложьб потому как нет правды во лжи.

вытер ноги о полотенце
477 1430525
>>30523
Ну как же False == True будет False, а False in [False] будет True. Неувязочка. Ну с другой стороны зайдем True in [False] будет False, a False == False будет True. Опять не то, ебучий питон выдает False. Это на знания языка задача была на собеседовании.
15625173844370.jpg35 Кб, 640x426
478 1430529
479 1430546
>>30516
Ленивое выполнение c and и порядок слева направо. Выражение эквивалентно
True in False and False == False
После вычисления первой части получаем False и вторая часть не вычисляется.
480 1430557
>>30501
Потому что в питоне есть нормальная система типов. Если тебе нужно хранилище пар ключ-значение есть замечательная структура данных - словарь. Если тебе нужен класс, создавай нормальный класс. Такой код легче читать, легче расширять и поддерживать.
481 1430563
>>30502
Если тип данных позволяет, делаешь срез y[1:], можешь сделать так y1 = iter(y) потом next(y1) , после этого цикл for x in y1 пройдет все элементы кроме первого, можешь использовать функцию enumerate, типа for i, x in enumerate(y): if i !=0: <do somthing>, еще есть в стандартной библиотеке модуль itertools для работы с любыми итераторами, классная штука
482 1430571
>>28568
Т.е. я так понимаю, создаем пул воркеров на Х процессов, через очередь задач внутри пула им подается сериализованная функция и аргументы к ней (если у нас pool.map(...)), и так гоняем воркеры до тех пор, пока все задачи не выполним. А уже пул убивает вручную. Это так работает?
483 1430581
>>30520
Есть встроенный тип set - множество уникальных элементов, пусть у нас есть некая функция get_data(), которая выдает новые элементы, тогда можно обрисовать примерный алгоритм:

current_items = set(get_data())
log = {}
for i in range(iteration_count):
    new_items = set(get_data())
    added = new_items - current_items #получаем элементы, которые есть среди новых, но нет среди старых
    lost = current_items - new_items #получаем элементы, которые есть среди старых, но нет среди новых
    log = (added, lost) #сохраняем кортеж состоящий из множества новых элементов и множества потерянных элементов в словарь log, ключ - номер итерации
    current_items = new_items

Не знаю, насколько это элегантно, и правильно ли я вообще тебя понял, просто первое, что пришло на ум.
484 1430609
Пытаюсь сношать codewars на уровне ниже нуба. Один и тот-же код на сайте и в PyCharm ведёт себя по-разному
485 1430611
>>30609
Может у них внутри теста validate_pin("-123"). Это не самая большая проблема твоего кода
Аннотация 2019-07-09 023236.png53 Кб, 1032x725
486 1430612
>>30611

> Может у них внутри теста validate_pin("-123").


Похоже

> Это не самая большая проблема твоего кода


Настолько плохо?
487 1430613
>>30612
Я вообще не понимаю что делает int(pin) > 0 по твоей задумке. Бросает исключение? Ну или например

>>> len(123)


Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: object of type 'int' has no len()

Этот код работает чудом и работать не должен.
488 1430614
>>30613

> len(123)


с чего ты взял, что у него пин должен быть интом, а не строкой? ну ладно, можно добавить в самое начало пин=стр(пин)
а инт(пин)>0 нужно засунуть в кондишнал ифа к двум остальным условиям, а сам иф убрать нахуй и сделать вместо него ретерн этого кодишнала.
489 1430620
>>30614

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


Потому что в посте >>30609 он пишет так в правом скриншоте.

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


Человек учится, и тут приходишь ты и такой йоба поясняешь как все сделать от начала до конца, ну молодец, четкий пацан, всем тут пояснил как что нужно делать.
490 1430622
>>30620

> как все сделать от начала до конца, ну молодец, четкий пацан, всем тут пояснил как что нужно делать.


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

>Этот код работает чудом и работать не должен.


хелпфул пиздец. бтв код этот не должен работать и не работает, он тесты не проходит.
491 1430626
>>30622

> метод сократа для тривиальных вещей это трата времени на капчи.


Это для тебя тривиальные вещи.

>лучше обосри моё решение


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

>и предложи еще лучше.


Да регулярку надо писать, хули тут думать. Как-то так, если не проебался (я MLщик и регулярки мне не нужны по жизни)
re.match("^(\d{4}|\d{6})$", str(pin)) != None
492 1430678
>>30040

>>PyQT


>А если попытаться сделать портативный вариант приложения с помощью, например, Pyinstaller, результат не получится ли тяжеловатым, сотни мегабайт даже для самых простых приложений?



в 20 метров изи влезть, ниже не пробовал. главное из-под чистого пайтона / энвайронмента собирать где только нужные модули, т.к. система несовершенна
493 1430700
ПХП-сеньйор вкатывается в тред. Хочу перекатится к вам. Каким набором скиллов нужно обладать, чтобы найти работу примерно на 100-150 и 200-250к ? Сейчас вакансии посмотрел, везде просят джанго, фласк, асинк айо, докер, рэбит, монго, рэдис, сечь в микросервисной архитектуре. Я что-то пропускаю ?
494 1430712
>>30700
Разумеется, нужно еще знать как сам язык работает, лютый дроч на микросервисы(нахуй не нужны, имхо), кафку. Это в дополнение к тобой сказанному на 150к. На 200 хз что еще потребуют.
495 1430733
>>30712

>нужно еще знать как сам язык работает


Что под этим подразумеваешь ? Знать синтаксис, возможности языка и лучшие практики или глубокое понимание работы интерпретатора, чтобы писать максимально оптимизированный код ?
496 1430743
>>30733
Все это + как работает список на низком уровне, что он из себя представляет. Как работает множество и что из себя представляет. Метаклассы, их особенности. Что такое type, особенности работы и т.д. Всякие явные и неявные вызовы магических методов. Довольно часто спрашивают такое на собесах.
497 1430752
>>30743
Хотя я проглядел, что ты написал про понимание работы интерпретатора. И довольно мало книжек, где про это хоть как-то рассказывается. Немного встречается в официальной доке.
498 1430806
>>30743
Можешь посоветовать книжку, где особенности языка, которые ты перечислил, будут нормально описаны ? Ну или вообще книжку для не совсем начинающих.
499 1430833
>>30806
python к вершинам мастерства. Местами очень нудная и слишком подробная, я половину книги скипнул. Но в целом довольно годная. Может меня кто из местных поправит или дополнит.
Как устроен python. Только фрагменты брал, там очевидные вещи с интересными связаны, половину глав пропускал.
Чистый python. Сам не читал, но коллеги одобряют.
По джанге могу посоветовать lightweight django. Там она с нуля(т.е. не стого как ствится, а как запускается внутри) по кусочками расписана.
500 1430848
>>30833
А как же "вглубь"?
501 1430865
>>30833
Спасибо за список и советы. Буду читать.
503 1433181
Заранее извиняюсь что с такой легчайшей задачей. Но прошу помогите. https://ideone.com/BCgay1
504 1433296
>>33181
Пробел перед "guess".
Вместо "n" и "r" используешь "number" и "running", которые не определены.
505 1438570
Имеет смысл смотреть курсы по django 1.1 или это трата времени, учитывая что сейчас версии 2+ ? С какой версии актуально читать материалы?

inb4 понимаю что доки и гугление
15463547244970.jpg177 Кб, 750x733
506 1438725
>>38570
С поддерживаемой lts(1.11 лучше не стоит, 2.2 самая актуальная) или готовиться к 3.0 - тут конечно и баги будут и сырая сама, но будешь на острие, так сказать. Вообще 2.2 лучше всего.
507 1440013
Анонче,что из себя подразумевает изучение пайтона по книгам?Круглосуточная дрочка терминов и изречений автора?Просто держа книгу в 2к+страниц,я вряд ли запомню все,к тому же такие термины как "list comprehension expression" уже выветрились и я не вспомню чему он служитЭто я привел как пример,не обессудьте
508 1441254
>>40013

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


Тоже что и изучение любого другого языка в любом другом формате.
509 1441264
>>40013
Изучение подразумевает написание программ.
Тред утонул или удален.
Это копия, сохраненная 7 августа 2019 года.

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

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