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

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

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

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

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

#######################################
Вопросы-ответы:
— С чего начать изучать питон?
У питона намного лучше официальная документация, чем у большинства других языков. Есть там и учебное пособие для начинающих: https://docs.python.org/3/tutorial/introduction.html , неофициальный перевод на русский язык: https://digitology.tech/docs/python_3/tutorial/introduction.html (для питона версии 3.8, но разницы почти нет)

— Какие книги считаются лучшими?
На слуху чаще всего Лутц, но там очень много воды. Ещё на слуху Марк Саммерфильд, Эл Свейгарт "Автоматизация рутинных задач с помощью python". Эти книги рекомендуют чаще всего, но книги довольно старые, а питон развивается.

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

— А как учить джангу? Нахожу только книги по джанге 1.х
У джанги отличные доки (одни из лучших для пистоновских либ, имхо), почитай их для начала. Книгу по джанге можно читать даже для версий 1.x, т.к. принципы остаются теми же. Но лучше хотя бы с версии 2.0, слишком много мелких изменений в базе.

— Какие веб-фреймворки стоит учить в начале двадцатых?
Что бы не говорили, Джанго живее всех живых и умирать не собирается (и Django REST Framework), очень перспективный асинхронный FastAPI, асинхронный AioHTTP. Flask ещё где-то используется, но уже legacy. Прочие фреймворки или у нас экзотика, или это вымирающее легаси как Торнадо.

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

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

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

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

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

старая версия шапки, треды 90-148 и ранее: https://dumpz.org/bASGKD8cCFDf
ps: анон, если ты вносишь изменения в шапку, оставляй ссылку на код с обновлённым исходником.
текущий исходник: https://goonlinetools.com/snapshot/code/#8gd2g1snu3l8i26k0bc6k9
2 2686830
Какой шанс не вернуться в питон, изучая жс?
Конечно, он каличный, но все эти годовые ES прям вправляют по живому.
И я оценил его, делая юзерскрипты. Что-то мне не нравится - можно зделоть юзерскрипт четенько в разумных пределах.
Но с ебаным фронтом свзяываться не хочу. Можно будет делать илитные парсерсы-автоматизации на фоне обсирающихся от любой клаудфлары хуёв или ололо-селениумов?
3 2686865
>>686830

>Можно будет делать илитные парсерсы-автоматизации на фоне обсирающихся от любой клаудфлары хуёв или ололо-селениумов?


На фрилансе каком-нибудь можно, где от тебя заказчик не требует кода но там миллиард индусов в конкурентах, а на фултайм шансы околонулевые.
4 2686880
>>686865
Меня не интересуют шансы, всё уже наработано, интересуют возможности.
5 2686957
>>686880
пиздуй тогда куда. Ты вообще то чего тут делаешь, если "всё уже наработано" разработано
6 2687108
>>686957
Хуйнёй страдаю, конечно же.
7 2687110
Есть какой-нибудь норм ресурс, в котором описаны бест практики для архитектурных паттернов на петухоне?
8 2687215
>>687110
https://refactoring.guru/ru/

Сайт ведёт сраное наци-какло, поэтому ходи туда через VPN, а лучше — скачай к себе.
9 2687270
>>687215
Это не совсем то. Я помню парочку репозиториев находил, про архитектурные паттерны на петухоне, но уже потерял.
10 2687277
>>687270
Архитектурные паттерны на пистоне ничем не отличаются от паттернов на других языках
11 2687309
>>687270
Ну там есть же примеры на всех основных языках, включая питон.
12 2687356
>>687309
Там примеры качественные есть только под жаву и сисярп. Дальше мыколе не хватило чего-то.
13 2687384
>>687356
Покажи, где.
Посоветуйте программу на андроид для обучения Python, 14 2687401
Сап. Посоветуйте программу на андроид для обучения Python, наподобие тех, что раньше были у SoloLearn: обучение пошаговое, бесплатность. На сегодня они к сожалению скурвились, запихнув ненормальные количество рекламы и заблочив фичи.

Можно полностью на английском.
15 2687431
>>687401
Это идиотская затея вообще делать что-то такое на телефоне.
Ты щкольник без компуктера штоли? Купи себе за три копейки какую-то мертвечину.
16 2687440
>>687384
Любой паттерн, включающий в себя наследования, реализованный на расте.
17 2687458
>>687440
Я ожидал от тебя конкретной ссылки, а не посыла самому искать.
Ладно, иди на гит, вводи там patterns и обрящешь, что надо.
18 2687670
>>686473 (OP)
ПОМОГИТЕ
>>2687667 →

Какой качать!!!
Глаза разбежались"
19 2687675
>>687670
3.8.хх, Windows Installer 64 біта.
20 2687677
>>687670
Последний. Если у тебя шиндовс 7, то там какая-то версия вроде 3.8 в бинарниках доступна последняя.
21 2687680
>>687677
Не варта пампаваць апошні, бо бібліятэкі пад яго пакуль не абнавіліся. 3.8-3.9 найлепшы выбар зараз.
22 2687687
>>687680
Ну ладно, там МОРЖОВЫЙ ОПЕРАТОР уже есть.
23 2687711
>>687670
3.11.3 Installer под битность своей операционки. 64, видимо.
24 2687768
>>687431
как я тебе в колонии компьютер достану?
25 2688254
>>686473 (OP)
Интересно, когда последний раз обновляли шапку треда и кто это делал? 80% инфы хуйня или безбожно устарело
26 2688276
Не подскажите. Вот есть в Пайтоне словарь (dict). Мне нужно неоднократно считать из него единое значение по единому индексу (сначала чтобы сравнить, затем чтобы изменить значение). Можно ли ввести какую-то ссылку на адрес памяти этого индекса со значением, чтобы не тратить ресурсы компа на множественное обращение к словарю с одним и тем же индексом? Типо низкоуровнево, как на плюсах.
27 2688306
>>688276
Сделать свою обертку над типом только, передача по ссылке только для изменяемых значений
28 2688444
>>688276
Хер забей, делай как делаешь. Это высокоуровневый язык. Ты бы еще спросил как байтики дрочить.
29 2688449
>>688276
Ты в курсе, что обращение по ключу с О(1) делается?
30 2688603
Хз, в каком треде это спрашивать.
Хочу написать распознавалку капч, но не пойму, как найти на картинке координаты начала ряда цифр.
Может быть, контуры->np_ones, как на третьей картинке, чтобы найти пять примерно одинаковых пятен и идти от них?
Есть ли способ попроще? Какую теорию почитать?
31 2688604
Хз, в каком треде это спрашивать.
Хочу написать распознавалку капч, но не пойму, как найти на картинке координаты начала ряда цифр.
Может быть, контуры->np_ones, как на третьей картинке, чтобы найти пять примерно одинаковых пятен и идти от них?
Есть ли способ попроще? Какую теорию почитать?
32 2688609
>>688604
У меня не раз было, что я ебал такие простые капчи, потом клиенты начинали абузить это и меняли на рекапчу, а там уже только обезьянки платные, лол.
33 2688612
>>688609
И как ты их ебал?
34 2688613
>>688603
Зависит от капчи. Но вообще в нашем нейронном цеху, мы сначала локализуем самые крайние сигнатуры. Делаем обрезку, какаем паддингом, если надо, ну и потом в несколько слоев идентифицируем вижуал токены разной сложности.
В твоем случае проще просто локализовать все цифорки.
35 2688615
>>688613
Какие библиотеки? Что читать?
36 2688616
>>688612
гугли captcha segmentation
37 2688628
Я сейчас учусь подключаться к БД (выбрал postgresql) и немного запутался.
Как я понял, я могу создать соединение с базой при помощи engine из либы sqlalchemy (причем разными способами):

engine = create_engine("postgresql://scott:tiger@localhost/mydatabase")

engine = create_engine("postgresql+psycopg2://scott:tiger@localhost/mydatabase")

engine = create_engine("postgresql+pg8000://scott:tiger@localhost/mydatabase")

Либо я могу создать соединение:
conn = psycopg2.connect(database="postgres", user='postgres', password='password', host='127.0.0.1', port= '5432')

А в чем разница и какой метод следует использовать? Я так понимаю, зависит от целей? Но про это нигде не написано.
38 2688631
>>688615
Торч, тензор флоу.
Хызы, почитай про работу с имиджами.
39 2688644
>>688628

>psycopg2


Гэта. Астатнія, патрэбны калі гэты не працуе.
40 2688648
>>688628
sqlalchemy тебе нужна, если ты хочешь работать через алхимию, её систему моделей и т.п. А психа нужна, если ты хочешь сам SQL запросы руками формировать.>>688628
41 2688657
>>688648

>работать через алхимию, её систему моделей и т.п


А можешь чуть подробнее объяснить, что там за преимущества в алхимии? Из того, что я знаю, можно писать sql-запросы не самостоятельно, а использовать ORM - писать питоновый код, который формирует sql-запрос. Это оно и есть?
42 2688671
>>688657
З пункту гледжання простага праграміста SQL Alchemy - перашкода. Запыты пісаць складаней, зручней пісаць напрамкі. ORM дапамаге захоўваць аб'екты ў БД, каб усе палі адпавядалі.

З пункту гледжання ўладальніка прадукта SQL Alchemy надае перавагу, бо абмяжоўвае свабоду праграміста і дадае парадку у камандзе. Дазваляе мяняць праграмістаў і рухавік базы. Трывалы праект патрабуе кантролю версій БД. Такія прылады часта абапіраюцца на Аліхімію.

Калі ты сапраўды хочаш навучыцца працы з БД, пачынай без SQL Alchemy.
43 2688673
>>688648
Что ты несешь нахуй? Зачем пытаться советовать, если ты сам нихуя не понимаешь?
>>688628
Открой документацию и почитай, у алхимии оч крутая дока
https://docs.sqlalchemy.org/en/20/core/engines.html
Если оч коротко, то движок занимается всей низкоуровневой магией по передаче твоего запроса в виде скуль строки в базу данных и получения результата из бд. Алхимия сверху накидывает верхнеуровневый способ взимодействия с движком, удобную систему сессий и так далее. А еще предлагает ОРМ функционалего использовать не обязательно
>>688657
Если сильно обобщать, то да, алхимия в том числе предоставляет и такие возможности
44 2688678
>>688648
На самой справе psycopg - гэта драйвэр рухавіка базы дадзеных Postgres. Без яго Пітон наогул не зможа працаваць з ёй. SQL Alchemy ё Пітонавай бібліятэкай, таму таксама ўжывае psycopg.
337.png4 Кб, 255x81
45 2688741
Ёбари питухари сначала использовали движанго с их подобием. Теперь похоже пересели на хуёк sqlалхеми. Т.к. сильно поменьше диаметром. Ну ебaть.
46 2688743
>>688678
чё за язiл у тобиеi ? Можно по-русски написать, используй гугл переводчик. Программист который не умеет в перевод онлайн. Где вы такие набираетесь-то??
47 2688747
>>688741
Ты пьяный? Проспись иди
48 2688758
>>688747
нет, вы заебали своими онлайн-парашами и вопросами. Что, уже в офлайне никого не стало?
49 2688779
>>688743
Ну так он использует гугл переводчик. Но для перевода на змагарский.
50 2688801
>>688779
заебал уже, не понятно же чего он балакаiтъ
51 2688831
Анончики, памогите пожалуйста. Почему у меня в IDE всё работает и файл создается если его нет в директории. А если прямо в питоне или на сервере запускаю то он пишет нет файла в директори. Почему он не создаёт его если его нет?
with open(filename, "a", encoding="UTF-8") as f:
52 2688839
>>688801
Это старый гомосексуалист, охотящийся за молоденькими грязными от гавна жопками питунистов. Опасайся его, если доражишь ачьком.
53 2688840
>>688831
Потому что ищет в директории запуска? Возьми и распечатай из скрипта текущую директорию — всё поймёшь.

import os
directory = os.getcwd()
print(directory)
54 2688856
>>688840
Разобрался. С путем нормально было. В pycharm почему то при любом режиме открытия файла он создавался, если его не существует, а тут оказывается нужно определенный выбрать
0i6bni8hwRs.jpg100 Кб, 720x960
55 2689467
Обычно я привык, что функция() работает как чёрный ящик.
Она принимает данные, обрабатывает их и на выход даёт тоже данные, либо объект.

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

Стоит ли их использовать или это выглядит непрозрачно для других людей?
56 2689643
>>689467
Замыкание это область видимости, позволяющая сохранять данные внутри функции. А возврат функции из функции это вообще самая обычная практика, ничего неочевидного в ней нету
57 2689688
>>689643
Я не питонист, но вообще пишут что замыкание это способ привязать контекст (замкнуть окружение, пространство имен) к функции, для последующей удобной передачи туда-сюда.

То есть это не только область видимости, но сама функция, к которой биндится контекст.
58 2689698
>>689688

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


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

> для последующей удобной передачи туда-сюда


Это вообще хуйня

> То есть это не только область видимости, но сама функция, к которой биндится контекст.


Да супер похуй, в данном вопросе нужно понимать что такое область видимости замыкания и научиться декораторы делать нормальные. Все
p.jpg18 Кб, 458x131
59 2689729
Примерно год назад Visual Studio начал по-мудацки не отображать имя функции, когда скрываешь её (теперь виден только "def"). После долгого перерыва зашёл в python, и вспомнил насколько это ужасно неудобно. Зачем они это сделали, и как это исправить?
60 2689738
>>689729
Используй иде, которые сделаны под питон. Нахуя жрать кактус?
somefigs007.webp36 Кб, 1008x956
61 2690817
Я обосрался с кодом. Не работает чёт... Прошу помощи у местных анонов, потому что ChatGPT только всё портит.

Код:


import numpy as np
import matplotlib.pyplot as plt

# Константы
G = 6.67430e-11 # Гравитационная постоянная
Msun = 1.98847e30 # Масса Солнца

# Создание массива случайных позиций звезд
N = 10000000 # Количество звезд
Rmax = 30e3 # Максимальное расстояние от центра галактики в парсеках
R = Rmaxnp.sqrt(np.random.rand(N))
theta = 2
np.pinp.random.rand(N)
x = R
np.cos(theta)
y = Rnp.sin(theta)

# Создание массива случайных скоростей звезд
vmax = 1000 # Максимальная скорость в км/с
v = vmax
np.sqrt(np.random.rand(N))

# Моделирование движения галактики
tmax = 50 # Время моделирования в миллион лет
dt = 0.01 # Шаг по времени в миллион лет
t = np.arange(0, tmax, dt)
xgal = np.zeros_like(t)
ygal = np.zeros_like(t)
vgal = np.zeros_like(t)

for i in range(len(t)):
# Расстояние от каждой звезды до центра галактики
r = np.sqrt(x2 + y2)

# Суммирование гравитационных сил от всех звезд
ax = -Gnp.sum(Msunx/r3)
ay = -Gnp.sum(Msuny/r
3)

# Добавление гравитационной силы от центральной массы
ax -= G4Msunx[0]/r[0]3
ay -= G
4Msuny[0]/r[0]3

# Интегрирование ускорения для получения скорости и позиции
vx = vnp.cos(theta) + axdt
vy = vnp.sin(theta) + aydt
x += vxdt
y += vy
dt

# Перенос центра координат в центр галактики
x -= x[0]
y -= y[0]

# Вычисление положения центра масс галактики
xcm = np.sum(Msunx)/np.sum(Msun)
ycm = np.sum(Msun
y)/np.sum(Msun)

# Вычисление скорости и положения центра масс галактики
vgal = np.sqrt(np.sum((v - np.sqrt(ax2 + ay2))2)/N)

# Вычисление радиуса и скорости вращения для каждой звезды
r = np.sqrt(x
2 + y2)
vrot = np.sqrt(G*np.sum(Msun)/r)

# Вычисление средней скорости вращения для каждого радиуса
rbin = np.linspace(0, Rmax, 100)
vrot_mean = np.zeros_like(rbin)
for i in range(len(rbin)-1):
idx = np.where((r >= rbin) & (r < rbin[i+1]))[0]
vrot_mean = np.mean(vrot[idx])

# Построение графика кривой вращения
plt.plot(rbin[:-1], vrot_mean)
plt.xlabel('Radius (pc)')
plt.ylabel('Rotation Velocity (km/s)')
plt.show()
somefigs007.webp36 Кб, 1008x956
61 2690817
Я обосрался с кодом. Не работает чёт... Прошу помощи у местных анонов, потому что ChatGPT только всё портит.

Код:


import numpy as np
import matplotlib.pyplot as plt

# Константы
G = 6.67430e-11 # Гравитационная постоянная
Msun = 1.98847e30 # Масса Солнца

# Создание массива случайных позиций звезд
N = 10000000 # Количество звезд
Rmax = 30e3 # Максимальное расстояние от центра галактики в парсеках
R = Rmaxnp.sqrt(np.random.rand(N))
theta = 2
np.pinp.random.rand(N)
x = R
np.cos(theta)
y = Rnp.sin(theta)

# Создание массива случайных скоростей звезд
vmax = 1000 # Максимальная скорость в км/с
v = vmax
np.sqrt(np.random.rand(N))

# Моделирование движения галактики
tmax = 50 # Время моделирования в миллион лет
dt = 0.01 # Шаг по времени в миллион лет
t = np.arange(0, tmax, dt)
xgal = np.zeros_like(t)
ygal = np.zeros_like(t)
vgal = np.zeros_like(t)

for i in range(len(t)):
# Расстояние от каждой звезды до центра галактики
r = np.sqrt(x2 + y2)

# Суммирование гравитационных сил от всех звезд
ax = -Gnp.sum(Msunx/r3)
ay = -Gnp.sum(Msuny/r
3)

# Добавление гравитационной силы от центральной массы
ax -= G4Msunx[0]/r[0]3
ay -= G
4Msuny[0]/r[0]3

# Интегрирование ускорения для получения скорости и позиции
vx = vnp.cos(theta) + axdt
vy = vnp.sin(theta) + aydt
x += vxdt
y += vy
dt

# Перенос центра координат в центр галактики
x -= x[0]
y -= y[0]

# Вычисление положения центра масс галактики
xcm = np.sum(Msunx)/np.sum(Msun)
ycm = np.sum(Msun
y)/np.sum(Msun)

# Вычисление скорости и положения центра масс галактики
vgal = np.sqrt(np.sum((v - np.sqrt(ax2 + ay2))2)/N)

# Вычисление радиуса и скорости вращения для каждой звезды
r = np.sqrt(x
2 + y2)
vrot = np.sqrt(G*np.sum(Msun)/r)

# Вычисление средней скорости вращения для каждого радиуса
rbin = np.linspace(0, Rmax, 100)
vrot_mean = np.zeros_like(rbin)
for i in range(len(rbin)-1):
idx = np.where((r >= rbin) & (r < rbin[i+1]))[0]
vrot_mean = np.mean(vrot[idx])

# Построение графика кривой вращения
plt.plot(rbin[:-1], vrot_mean)
plt.xlabel('Radius (pc)')
plt.ylabel('Rotation Velocity (km/s)')
plt.show()
62 2690846
>>686473 (OP)
Анон, нужен хелп с меня как вегда
У себя в коде я юзаю предикт с помощью yolo. Оно в консоль мне пишет текст по прогрессу. Мне надо как-то этот текст красный спарсить и сохранить в переменную/файл. Я находил инфу как парсить если ты например запустил отдельным процессом через subprocess эту хуйню типа как через cli только в коде. У меня же оно просто как метод вызывается, и надо обязательно чтобы было как метод. При этом это не принт а отдельный процесс всетаки, иначе можно было бы поймать через buffer = StringIO()
sys.stdout = buffer
print_output = buffer.getvalue()
63 2690948
>>690817
Залей в отдельный файл с разметкой. Мне лень это разбирать в таком виде.
64 2691387
s = open("s","w")
i=0
while i == 3:
i =+ 1
s.write("n")
s = open("s","rt")
print(s.read())
s.close()

почему не выводит "nnn"?
65 2691410
>>691387
Буферизация. Надо явно сделать close, чтобы скинуть буфер.
Читай доку по open.
66 2691414
>>691410
хотя у тебя и сам код кривой.
while i < 3:
i += 1
68 2691612
Че о Mojo думаете? Взлетит? https://www.modular.com/mojo
69 2691623
>>691612
Хуйня какая-то, которая если и взлетит, то на манер кофескрипта. Найдутся извраты, но их будет недостаточно для поддержания популярности и всё естественно отомрёт.
Алсо, название неудачное для поиска.
70 2691651
>>690846
блять, она возвращает эти значения
не скажу как в восьмерке, но в yolo 5 я вытаскивал значение и прям на видео рисовал кол-во найденных объектов
71 2691652
>>691612
не взлетит
удобность кода > скорости
72 2691659
>>691623
Так это не кофескрипт, а по сути суперсет Пистона, как Тайпскрипт для ЖСа. Только намного более производительный.

>>691652
Ну хз. Судя по тому, как закон Мура потихоньку подыхает, о производительности написанного всё же начинают задумываться. Mojo тому подтверждение. Тем более, что это тот же Пистон, удобность кода приблизительно такая же.
73 2691661
>>691659
Я имел в виду историю взлёта и итог кофескрипта, а не суть.
74 2691667
>>691612
Скорее mypyc какой нибудь взлетит чем это. Ну и позиционирование странное "язык для AI", словно какой то маркетинговый булщит
75 2691696
>>691659

>как Тайпскґыпт для ЖСа. Только намнава более проызводэцяльны


Як php Swoole, што не мае посьпеху.
76 2691697
>>691580

>dropmefiles


Пукнутый что ли?? С него половина провов не качает. И нахуя зип?
Бля, вот пастебины . Есть аж с подсветкой синтаксиса. Как раз для передачи кода зделоно, бля.

https://sharetext.me/
https://dpaste.org/
http://linkode.org/
https://justpaste.it/
https://www.toptal.com/developers/hastebin/
https://nekobin.com/
https://pastebin.com/
IMG20230508150647.jpg8 Кб, 366x159
77 2691726
А чем вообще лучше такой стиль программирования
def sum():
----a=3
----b=3
----return a+b
print(sum())

class Class:
----def __init__(self, h):
--------self.h=h
dec=Class('hellofell111000o')
print(dec.h.encode('utf-16'))
Из одних только функций

Чем такой?
a=5
b=5
print(a+b)

h='hellofell111000o'
print(h.encode('utf-16'))
Из одних только переменных.

Нужно ли постоянно все в функции оборачивать или можно тупо и переменными обойтись? Я могу и так и так, но вроде слышал, что преимущественно функциями лучше.
78 2691758
>>691726
Функции и классы можно использовать повторно, портянку кода в файле нет. Если простенький скрипт для себя пишешь можешь как угодно писать.
79 2691777
>>691726

> Из одних только переменных.


ну попробуй так писать, особенно если переменных больше 100
80 2691811
>>691758
Ясно. Спасиб.
>>691777
Ну, хз. Вот два файла, первый я написал полностью на переменных - 148 строк, второй обернул в функции, вышло - 177.
Хотя я ещё нюфаг в этом деле, может я просто делаю что-то не то.
https://dropall.stream/rm/rm4097;username=Jickuck
Screenshot14.png973 Кб, 1599x1199
81 2691817
>>686473 (OP)
Может кто сказать что за IDE на пике?
82 2691824
>>691817
PyCharm. Там же даже написано.
83 2691871
>>691726
Если надобности нету, то не нужно. Не слушай профнепригодных додиков, они даже не понимают о чём идёт речь
>>691758

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


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

> Если простенький скрипт для себя пишешь можешь как угодно писать.


Не неси хуйни
>>691777
А если функций больше 100, что происходит в любом коде? Читай выше додик
84 2691874
>>691871

>В вопросе про повторное использование речи не шло


Там и про импорт ничего не было
85 2691889
>>686473 (OP)
Памахите пожалуйста. Чё он хочет от меня?
86 2691899
>>691889
У тебя Pycharm создает, насколько помню, отдельное виртуальное окружение для проекта, а ты устанавливаешь пакет к своему глобальному интерпретатору. Посмотри в самом pycharm'e на вкладке packages, если ли там нужный пакет и если нет, то во вкладке terminal с командой "pip install ..." установишь его
87 2691908
>>691697
Где ты зип видишь? У меня там чисто файл .py.
Мог бы просто скопировать всё это и вставить в VS Code. Там всё строчка в строчку. В чём проблема?
89 2691916
>>691889
Каб працаваць у кансолі трэба актывізаваць там віртуальнае асяроддзе. Штораз калі адкрываеш новую кансоль, выконвай загад:
venv\Scripts\activate
дзе venv - шлях да віртуальнага асяроддзя гэтага праекту.
image35 Кб, 670x294
90 2691922
>>691910

>Rmax = 30e3 # Максимальное расстояние от центра галактики в парсеках


>R = Rmaxnp.sqrt(np.random.rand(N))



Что такое Rmaxnp.sqrt ? Ты знаки умножения забыл или скобочки?
91 2691939
>>691922
Извиняюсь. Вот исправленное: https://pastebin.com/uPe4hJTK
92 2691972
>>691871

>они даже не понимают о чём идёт речь


Честно, я сам не до конца понимаю

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


Т.е. в функцию оборачивают только для того, чтобы можно было импортировать только саму функцию, вместо импорта файла целиком, я правильно понимаю?
93 2691978
>>691651
чел я вкурсе что возвращает, это не то что мне нужно. Я хотел парсить этот выдвод с консоли и перекидывать их в другое место налету, но это уже не надо
94 2691998
>>691939
59 строка vrot = np.sqrt(G np.sum(Msun) / r)
vrot у тебя число float-типа

66 строка vrot_mean = np.mean(vrot[idx])
vrot у тебя список

И несколько раз в 59 строке происходит деление на ноль?
RuntimeWarning: divide by zero encountered in true_divide
vrot = np.sqrt(G
np.sum(Msun) / r)
95 2692031
>>691998
Ладно, забей... Мой код — говно.
96 2692064
>>692031
Поставь plt.plot(rbin, vrot_mean) — plt.plot() не может начертить точки, если длины списков X координат и Y координат не совпадают. Ну и координаты у тебя сплошь NaN получились в вычислениях. Рисуется пустой график.
97 2692068
>>691874
Окей, если хочешь душнить, то в питоне и переменных нету
>>691972

> Честно, я сам не до конца понимаю


Ну так ты задаешь вопрос, а не отвечаешь на него лол

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


Ты не можешь импортировать файл не целиком. А импортировав однажды и исполнив в процессе, не можешь заставить выполнить его ещё раз. Короче, забей и пиши как получится. Программирование про практику, а не про теорию. Если ты не столкнулся с какой-то проблемой, то и инструмент ее решения будет непонятен. Так что как только программа разрастется у тебя и захочешь распилить на модули, чтобы хоть как-то ее понимать, то сразу все поймёшь
98 2692071
>>691889
Венв активируй лол
99 2692122
>>692068

>в питоне и переменных нету


Каво? В питоне есть переменные, просто их объявлять не нужно.

>Ты не можешь импортировать файл не целиком. А импортировав однажды и исполнив в процессе, не можешь заставить выполнить его ещё раз


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

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


Я тебя понял.
100 2692570
Как в numpy получить номера элементов с конкретным значением?
101 2692579
>>692570
np.where
102 2692620
>>692122

> Каво?


Таво, в питоне есть имена, которые для удобства называют переменными. https://docs.python.org/3/tutorial/classes.html#a-word-about-names-and-objects

> В питоне есть переменные, просто их объявлять не нужно


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

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


Да, ты абсолютно прав
103 2692734
Допустим, у меня есть много фунций в файлике, они разные, но некоторые можно сгруппировать по логике.
Как это сделать корректно? Вынести их по разным файлам? Сделать классы с названием описывающим общую логику типа SomethingResolver и все обернуть в @classmethod/@staticmethod?
104 2692744
>>692734

> Допустим, у меня есть много фунций в файлике


Много это сколько? Используют ли друг друга?

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


> Как это сделать корректно?Вынести их по разным файлам?


Да

> Сделать классы с названием описывающим общую логику типа SomethingResolver и все обернуть в @classmethod/@staticmethod?


Нет
Но в вакууме это хуйня все
105 2692750
>>692744

>Много это сколько? Используют ли друг друга?


Штук 20, Некоторые да, некоторые нет, в целом относятся к одной вещи, но их можно сгруппировать еще сильнее
106 2692849
>>692750
Если 20 штук и ещё используют друг друга, то забей хуй. Если очень хочется и свербит сделать пиздую архитектуру, то почитай про депенденси инджекшн и перепиши код так, чтобы у тебя функции были спрятаны под интерфейс
107 2692864
>>692750
Ну и да, кстати, классметод и статикметод не надо использовать как штуку для хранения функций в классах. Они не для этого предназначены, используй обычные методы, это намного лучше
108 2694012
>>687277
Отличаются.
14461005161550.jpg11 Кб, 237x229
109 2694183
Подскажите, если кому не трудно, как для mqtt клиента Paho передать хэндлер процесса в стороннюю функцию или глобальную переменную?

client = mqtt_client.Client('mqtt_client_for_ota')
client.username_pw_set(m_user, m_pwd)
client.on_connect = on_connect
client.on_message = on_message

def on_connect(client, userdata, flags, rc):

Задрала ошибка:
client.publish(TOPIC, DATA)
^^^^^^^^^^^^^^^^^^^^
NameError: name 'client' is not defined
110 2694236
>>694183
Скинь весь код, ты какую то хуйню делаешь. on_connect дёргает либа, ты входные данные не изменишь.
111 2694288
>>694236
Мне надо расшарить объект клиента mqtt Paho между другими функциями (т.е. сделать его доступным из любого места кода), чтобы отправлять сообщения когда мне надо, а не только в обработчиках, типа on_message, on_connect, on_publish.
112 2694303
>>694288
Синглтон пили, епта
113 2694367
>>694288
Ну так сделай класс, в инит передавай клиента извне, а в классе создай методы и в них вызывай свои функции, в чём проблема?
114 2694414
>>694367
Напиши в телегу @stdenits или дай свою, плез.
115 2694420
>>694012
Чем?
245454654132154.jpg114 Кб, 959x650
116 2694497
>>694367
Я попробую разобраться, но скорее всего жидко обосрусь, т.к. с питоном знаком крайне поверхностно, а сделать надо.

Спасибо и на этом...
117 2694529
Почему говорят, что с питоном хорошо работает именно постгря? В чем вариант с выбором мускуля, марии, кликхауса и кучих других субд (при условии, что для них есть драйвер и либка в питоне) хуже постгри?
118 2694543
>>694529
Есть либа, которая через бинарный протокол взаимодействует
119 2694547
>>694543
Почитал первую попавшуюся статью на хабре. В целом понял, что это, но не понял, в чем заключается преимущество. Выглядит так, что это какой-то супер надежный способ передачи данных, но звучит как оверкилл для питона. Там, где используются такие надежные и безопасные протоколы, уже будет не питон, а какая-нибудь джава. Разве нет?
120 2694556
>>694529
И ты говори что хочешь.
Айтишники такие доверчивые.
121 2694573
>>694529
MySQL працуе зь Пітонам ідэальна. Але большасьць карысных бібліятэк пісаліся для Postgres. Таму, калі ты ня ведаеш наперад якія бібліятэкі будзеш ужываць, Postgres ё найбяспьечным выбарам.
122 2694578
>>694543
Что за либа?
123 2694585
>>694578
asyncpg
124 2694588
на хх какие-то сумасшедшие 11к вакух на пихоне, больше чем жс упоминается. для чего пихон у нас используют?
если ввести например python django вакух даж меньше чем php laravel...
я не понимаю, че тогда там такое нужно.
125 2694610
>>694588
Включи поиск по названию, а не по описанию
126 2694636
>>694543
А что, есть не бинарные? Всегда думал, что там по сокету хуярит по какому-то своему бинарному протоколу.
И как оно выглядит?
127 2694650
>>694588
Обычные дата-макаки (шкварные петухи ниже полуджунов-полупокеров) и тестеры для дата-макак (рангом ещё пониже). В ДС/МЛ не просто так загнали огромную массу народа. Размечать данные и подбирать коэффициенты — это тупейшая рутинная работа, сравнимая со стоянием у станка, упаковкой или поломойкой. Кому-то надо её делать. В огромнейших масштабах — кто хоть раз пытался собрать датасет под свою нейроночку, тот поймёт. Вот так много народа и заталкивают пропагандой всякой фантастической реальности, рассказами про передок науки, про прорывы и пролапсы, светлое будущее и прочее говно для подростков.
128 2694683
>>694636

>А что, есть не бинарные?


DB-API
129 2694716
Вопрос, есть VS 2019, есть два файла python 1,2. У них общий venv, как при нажатии F5 запускать файл в проекте который в данные момент активен?
130 2694763
>>694716
>>694716
вроде разобрался, нужно было назначить в виде запускаемого проекта
131 2694786
Парни, нубский вопрос от нуба.
Возможно, платина нубских вопросов.

Слева код работает как я ожидаю, справа - нет. Различие отметил на скринах, в одной строчке кода.
Слева у меня прибавляется к переменной по 1 каждое прохождение цикла и цикл заканчивается, справа - все время 1 и цикл бесконечный.
Я не поленился, залез в гугл и прочитал статью о различии между a = a + b и a += b.
И оно есть, но там написано, что это актуально для mutable типов, типа списков, что в одном случае создается новый объект с новым поинтером, в другом случае перезаписывается старый объект по изначальному поинтеру.
Но блять, у меня-то не mutable тип, у меня int тип тут данных у переменной.
Так что разницы нет между a = a + b и a += b.

То есть почему-то каждый цикл у меня справа когда, то похоже тупо присваивается переменной значение 1. А какого хуя, она же вне цикла объявлена, scope'ов тут никаких не должно быть, функций тут нет.
То есть словно нет разницы между a = 1 и a += 1 тогда в данном случае. Какого хуя?!

Я понимаю, что не понимаю что-то крайне очевидное, но что
132 2694798
>>694786
Должно работать. Может где-то в другом месте херится. Трассируй в дебаггере.
133 2694807
>>694798
АААА БЛЯЯЯЯТЬ АААА ССССУУУКАА ПИТОН ЧТО Ж ТЫ ДЕЛАЕШЬ

Я короче вместо += изначально оказывается =+ имел там.
И оказывается =+ это тоже легальный синтаксис и питон не выдает ошибку.
Пиздец...
134 2694812
>>694807
Это = и унарный плюс.
Screenshot (9).png83 Кб, 629x897
135 2695261
И зачем нужны кожаные мешки?
136 2695276
>>695261
Пиздец, патентуй скорее код, а то украдут и озолтятся.
137 2695406
>>695261
нахуй не нужны

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

а еще она знает то, чего нет в гугле. просто адаптируя параллельный опыт с похожих проблем. вот с этого я совсем охуел
138 2695437
>>695406
>>695261

Сука блять как же вы заебали, да съебите уже нахуй из кодинга долбаебы.
Если вас реально можно было заменить бойлерплейтом, то нахуй вы здесь не нужны.
139 2695539
>>695437
ахахахахаха
140 2695600
Могу ли я считать себя фуллстак-разрабом, если ебашу сайты на SSR с небольшим добавлением жс? Или все-таки фуллстак - это про полное разделение фронта и дева?
141 2695739
Мне надо отслеживать появление файлов с заданным расширением в двух папках.

Что не так со скриптом? Он запускается без ошибок, но хэндлер не отрабатывает.

https://pastebin.com/ivNMnCsk
pwd: 2ch

py <название срипта>.py <путь к папке1> <путь к папке2>
даун.PNG90 Кб, 1215x956
142 2695756
>>695739
так ты просто запускаешь цикл, в котором бесконечно ждешь 1 секунду
бля, я чуть от смеха со стула не упал
143 2695778
>>695756
Это чтобы обсервер в тред засунуть, хохотун.
144 2695818
>>695778
и как? получается?
145 2695844
>>695818
Обосрался, значит, работает обсервер.
146 2695870
>>695756
Там может быть отдельный тред внутри обсервера
мимо
image.png55 Кб, 677x997
147 2695937
хотел спросить вопрос в треде, а чат гпт ответила
поэтому всем просто приятного дня, крепкого здоровья и хорошего настроения
148 2696105
>>695778
В таких случаях пишут while True: pass, не надо костылить какие-то таймы
149 2696445
>>696105
Так будет выжирать всё ядро на 100%, так что у тебя тоже обсервер.
150 2696538
>>696445
Ого, действительно. Проверил и все так и работает. Первый раз на дваче что-то новое узнал. Ну в любом случае, что через pass, что через слип это хуйни. Потоки лучше хранить явно и явно же их ожидатьс тасками вообще пиздец, если из явно не хранить, то их питон может удалить банально
image.png405 Кб, 500x375
151 2696669
Почаны, есть env переменные в директории проекта: login, password.
При дебаге проекта всё хорошо, но вот при тестировании меня окружение посылает к чертям с ошибкой AttributeError, говоря о том, что атрибуты None.
Конкретнее:
- в директории tests имеется test.py
- тестирую через pytest tests/test.py
Если я перед pytest явно экспортирую в баш переменные
export login=user \ export password=123, то всё хорошо, но мне хотелось бы, чтобы при pytest он принимал .env файл с уже объявленными переменными. Куда смотреть, помогите, пожалуйста.
ну и капча абу пидор неудивительно что постинг нулевой
152 2696705
>>696669
Плагін дазваляе вызначыць шлях да файлу env
https://github.com/MobileDynasty/pytest-env
153 2696853
>>686473 (OP)
Аноны, какой самый простой и быстрый способ округлять числа с плавающей запятой арифметически. Т.е. чтобы .5 > всегда округлялось до следующего числа. Нужен самый быстрый и метод и желательно из встроенных функций.

Охуеваю конечно питон это же скриптовый язык, а округление в нем не человекопонятное а ебанутое, для каких то задач. Обычное арифметическое округдение куда-то в жопу засунули. А должно быть наоборот - это же логически следует из самой философии питухона, по умолчанию должно быть обычное арифметическое округление, а коуму надо пусть лезет в дебри и делает другое.
154 2696861
>>696853
math.ceil
155 2696864
>>696861

>ceil


В школе арифметическое округление не проходил ещё?
156 2696867
>>696864
Проходили ебание твоей мамаши кверху жопой.
157 2696868
>>696867
Ебать ты клоун. Публично обосрался, а когда тебя ткнули носом в твой обосрамс - закатил глаза и начал визжать пр мамку.
4565151545642121.jpeg24 Кб, 300x271
158 2696869
>>695756

>ни одной попытки в помощь


>доебались до заглушки


Да, я туда зашёл. Родной питоно-тред.
e1f3f9373065191f952b362ee24ccb0f.jpg35 Кб, 411x410
159 2696870
24145557874747.jpg17 Кб, 225x225
160 2696871
161 2696877
>>696868
Во-первых, это не я, во вторых ceil это как раз арифметическое, хули тебе надо-то?
162 2696879
>>696877

>чтобы .5 > всегда округлялось до следующего числа


ceil 1.1 округляет до 2, а -1.1 округляет до 1

И вот просто интересно, нахуя ты это пишешь. Ты не знаешь как ceil работает или не знаешь что такое арифметическое\школьное\человекопонятное округление?
Это округление с половины к следующему целому в сторону от нуля.
163 2696881
>>696879
В английском это округление называется ещё half up в питоне оно доступно через decimal, но это невероятно медленный метод в десятки раз медленнее обычного раунда например.
164 2696990
>>696869
Всё должно работать.
165 2696992
>>687215
А хули этот долбоеб домен .ru использует тогда? Переехал бы на .ua
166 2697112

>Арифметическое округление - это когда в сторону большего


А разве в питухоне на так функцией round?
Но не важно. Это ретардное округление. Нормальное округление - округление до четного, вен и даубт.
167 2697141
>>697112

>округление до четного


Это нишевое округление, нужное для всяких долгих вычислений. Если ты такие делаешь, то полностью должен понимать что у тебя и зачем. А питухон это в первую очередь скриптовый язык для макак, для простых гречневых людей, для школьников, для интерфейсов, для вот этого всего. По всей своей концепции там округление должно быть человеческое. Когда ты в интернет магазине сумму округляешь, или время - ты это всё делаешь именно half up, как в школе учили, а не до четного. Так и должно быть по-умолчанию.

В любом случае какие в питоне есть варианты для этого? Пока использую decimal, но он тормозной.
168 2697166
>>697141
Языки программирования придуманы чтобы складывать числа сложно, поэтому не вижу проблемы.

>Пока использую decimal, но он тормозной.


Никаких вменяемых. Можно через формат с последующим конвертом во флоат, но это будет еще медленнее.
Можешь написать свое округление на ситоне.
Последний вариант, кстати, вероятно то, что тебе зайдет. Когда нужно было вычислять разные функции быстро, но не обязательно сверхточно, основные операции сделал сайтоновские и проблема решилась.
169 2697172
>>697112

у тебя ща короткое замыкание будет, но питон и округляет до ближайшего четного
image.png49 Кб, 683x808
170 2697174
нейросетка говорит хуйня ваш децимал. а нейросетка всегда права
171 2697176
>>697172
Формально да. Но тут флоаты в штаны какают. Так что противоречия не чувствую.
image.png3 Кб, 209x55
172 2697177
>>697174
алгоритм класс. имплементировай скорей!
173 2697182
>>697177
импортировал тебе за щеку
174 2697202
>>697174
Питон даже округлить число не может по человечески. И даже могучая нейросеть какое-то говно советует, которое на 1.5 уже обсирается с порога.
Дожили.
175 2697211
>>697174
Спроси у нейросети программу которая бы перепечатывала текст из файла.
image.png61 Кб, 679x964
176 2697215
image35 Кб, 1224x477
177 2697244
Диды специально так питон программируют чтобы всё медленно работало?
178 2697247
>>697215
Не копировать, а перепечатывать.
image.png7 Кб, 270x120
179 2697256
>>697247
Ты даже задачу поставить не можешь, децл. Не буду увеличивать карбон футпринт твоими хуево поставленными тупыми реквестами.
180 2697257
>>697215
Исскуственный интелект СУКАААА. Да идите вы нахуй все, долбоёбы вот вы кто.
181 2697259
>>697256
Поспрашивай ещё как по-человечески округлять. И передай ему ещё что с этим примером >>697174 он обосрался, тупой тостер, такому боеголовками управлять не доверят.
182 2697261
Ганс, а мы что долбоёбы?
image.png38 Кб, 679x706
183 2697265
>>697259
к: палата
184 2697268
>>697265
Всё хуйня это просто к большему, а надо half up
185 2697269
>>697268
да вроде работает
186 2697273
>>697269
1.1 округли
image.png1 Кб, 147x38
187 2697276
>>697273

>1.1 округли



с тебя 20 долларов
188 2697280
>>697276
Ты не очень смешной клоун, так что сегодня без 20.
189 2697283
>>697280
1.1 не должно округляться до 1?
190 2697289
>>697256
Нужна программа эмуляции печатания из файла.
191 2697290
>>697283
должно быть 10
image.png52 Кб, 687x831
192 2697292
>>697289

>Нужна программа эмуляции печатания из файла.


сразу с русскими коментами, как положено
193 2697295
>>697289
Нужна программа эмуляции печатания символов из текстового файла.
фикс
194 2697301
>>697290
9 разворовали
195 2697302
>>697292
Короче, проще написать самому то что нужно, вместо того чтобы ебаться с правильно поставленным запросом. Только если напишешь сам это будет 100%, а если будешь выёбываться и объяснять что нужно, то ещё не факт что получишь результат.
И зачем всё это нужно?
Вы реально копируете данные из одного файла в другой и получаете свои наносеки?
196 2697304
>>697302
но ведь напечатать пол экрана кода очевидно не проще, чем написать десяток слов. а правильно ставить задачу это хороший скилл, и его нужно качать. как раньше был полезен скилл гугления
197 2697342
>>697304
Код не надо печатать, можно копипастить и изменять.
А вот правильно ставить задачу может занять пол-экрана.
Ну ты понял мою претензию: зачем мне печатать тупые запросы к ИИ, если я могу сразу напечатать код?
Как выяснить что быстрее и оптимальнее?
198 2697344
Ну и не нужно забывать что написанное самим будет 100%.
А ИИ может так и не понять что нужно даже после пол-экрана простыни.
199 2697352
>>697304
Скилл действительно хороший. Это просто суперскилл, я им так и не овладел.
Краткость - сестра таланта. Лаконичиность. Тоже надо понимать что это относится только к людям. Люди должны понять лаконичность.
200 2697450
Какой-то поеботой страдаете, бля. нанозадачи на полэкрана.
Пусть нейронка напишет админку. Тогда поговорим.
201 2698438
>>686473 (OP)
Стоит ли учить питон ради заработка денег и создания собственной игры? Если я начну его учить, то что меня ждёт?
202 2698446
>>698438
Игры на нём максимально тормозные. Для игорь учи экосистему (Андроид, Эпл). Один сейчас не вытянешь, разве что родишь ультраидею. зайди на какой-нибудь гамез.яндекс.ру — посмотри, что говноигры клепаются тысячами одним только яндексом. А в мире этих игрушек на два-три часа игры выходит миллионы. А ты над такой будешь ебаться год—два в одиночку. Чтобы пройти за два часа.
изображение.png25 Кб, 683x271
203 2698467
>>697244
потралить нас решил? у нас все работает
204 2698479
>>697244
а, похоже ты пытался изобразить numpy.around.
Даже проверять не буду. И так ясно что это работает быстро
205 2698564
>>698446

>Игры на нём максимально тормозные


От чего тормоза? Я хочу сделать градострой с элементами экономики и общественного контроля. Cities: Skylines, один из ближайших примеров, теряет производительность от большого количества жителей, потому-что каждый из них материален и регулярно взаимодействует с частями твоего города, строит маршрут, меняет свою статистику.

>Для игорь учи экосистему (Андроид, Эпл)


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

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


Именно поэтому я не собираюсь зарабатывать на геймдеве, но собираюсь зарабатывать кодингом, а полученные навыки применить для создания своей любимой игры.
206 2698668
>>698438

>Если я начну его учить, то что меня ждёт?



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

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


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

>>698438
Неправильно написал. Зарабатывать деньги буду обычным кодингом, не геймдевом. Геймдев для души, под свои хотелки.
208 2698718
Почему многие считают, что Python является плохим языком программирования, учитывая его низкую производительность, непрактичность при разработке крупных проектов и медленную скорость исполнения?
209 2698792
>>692031
ДРУГ умоляю, если доделал до конца - скинь пожалуйста
буду сидеть разбирать, понравилась задумка, сам только только функции освоил
210 2698821
>>698696
ну есть так есть. тебе виднее. удачи!
211 2698822
84332445.jpg11 Кб, 258x245
212 2698902
>>690817

>Прошу помощи у местных анонов, потому что ChatGPT только всё портит.

photo2023-05-1511-37-47.jpg29 Кб, 604x597
213 2698913
питонач, как и чем оплачиваешь подписку pycharm?
show.png4 Кб, 270x120
214 2698915
>>698913
торрентом
215 2698925
>>698915
а там чот старые версии какие то, а мне надо последнюю самую и что бы само обновлялось
216 2698948
>>698913
А зачем
217 2698955
>>698564

>От чего тормоза?


От того, что это не компилируемый язык, а интерпретируемый скрипт. По сути. Быстрые модули в нём написаны на C/C++.

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


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

На Питоне, бывает, пишут прототипы, а потом переписывают на быстром языке.
218 2698957
>>698925
Я сижу на 2022.1.2 и мне норм, не обновляюсь, всего хватает.
219 2699145
>>698955

>а интерпретируемый скрипт


А джава с шарпами это что, по твоему?
220 2699197
Да, гои, я сделал ТОП (Не шутка) игру, но тут я понял, что пользователь у которого не установлен Пайтон просто не сможет в неё поиграть. Это ГГ.
221 2699272
>>699197
так это виндузятник же ванючий, пусть страдает. релизь под линух
222 2699279
>>699197
Кому тут не похуй на декстоп?
223 2699294
>>699197

>Да, гои, я сделал ТОП (Не шутка) игру, но тут я понял, что пользователь у которого не установлено JRE просто не сможет в неё поиграть. Это ГГ.



>Да, гои, я сделал ТОП (Не шутка) игру, но тут я понял, что пользователь у которого не установлен NET Framework просто не сможет в неё поиграть. Это ГГ.



>Да, гои, я сделал ТОП (Не шутка) игру, но тут я понял, что пользователь у которого не установлен Microsoft Visual C++ 2015 Redistributable просто не сможет в неё поиграть. Это ГГ.

224 2699457
>>699272
>>699279
>>699294
И что мне делать-то, мудаки?
225 2699460
>>699457
Ты уже сборщики пробовал?
https://pyinstaller.org/en/stable/
226 2699471
>>699460
К сожалению это гойда. Просто запускает cmd на секунду и выключается, а жаль.
227 2699490
>>699471
А ты пытался дебажить?
228 2699636
>>699471
ну што поделать. поищи себя в другом
229 2700118
Сделал такую хрень в боте, таймер на выключение компа
subprocess.Popen(f"shutdown /s /t {int(match.group(1))*60}")
сброс таймера
os.system("shutdown /a")

Простой команды узнать сколько осталось минут до выключения я так понял нет? Как считаете лучше реализовать, при запуске шатдауна сохранять время в переменную и вычитать его из актуального времени при запросе, как-то так?
230 2700145
Укроанон, с завтрашнего дня начинаю вкатываться, какие подводные?
231 2700154
>>700145
Сама концепция "вката" порочна. Чтобы хотя бы иметь возможность стать погромистом - нужно изначально любить ковыряться во всем этом говне.
Хорошая аналогия с профессией писателя. Ты можешь например вкатиться в писатели и написать рассказ про попаданцев, но если ты всю жизнь не увлекался писательством, с детства не сочинял хуйню, не записывал её в стол т.е. не любишь это дело, а пишешь просто чтобы заработать - то надолго тебя не хватит и качество твоих фанфиков будет ниже нуля. А через год ты вообще взвоешь.

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

синьор тимлид 300 наносек
232 2700159
>>700154
Отчасти чаю, высираю такое же, но как раз с детства дрочил бейсики с паскалями, потом компьютерный класс с уклоном в айти - один день учились в универе, потом вуз.

В ойти то вкатываюсь, то выкатываюсь, сначала нравится дрочиться с решением задачки, а потом на месяцы похуизм. Потом гото1. Ебанутый настрой.
233 2700162
Братья и сестры, какое давление создает объем воды в 900 л., помещенный на высоту 3 метров от земли в трубке диаметром 25 мм., находящейся на уровне 1 метр от земли? Подскажите формулу расчета, пожалуйста.
234 2700220
>>700154

>Чтобы хотя бы иметь возможность стать погромистом


Нет, достаточно выдрочить паттерны, как в любом ремесле. Да, очень хорошим погромистом не стать, но в какой спецухе еще можно быть абсолютной посредственностью и лутать 150к через пару лет веслания.
235 2700221
>>700118

>int(match.group(1))*60


Ёбнутый, что ли? Нельзя просто «60» написать?

>>700118

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


Именно так.
236 2700238
>>700221
Очевидно, что это минуты из регулярки умножаются на секунды.
238 2700475
239 2700509
Я в питоне плохо разбираюсь, помогите оценить, пожалуйста
240 2700516
>>700509
Ну это однострочечники, обычно только начинающие учить Питон выделываются. тут код небольшой, всё понятно, но если будешь это в прод пихать, тебя могут силой (анально) принудить писать просто и понятно.
241 2700524
>>700516
Это не просто однострочечники - это максимально дегенеративные.
Скопирую свой высер из МВП треда:

>А почему она это просто текстом не написала? Ну или на худой конец словарик не заюзала..


>Все кристально понятно.


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


>С этой нереальной лямбды (инфо) проигрываю в голосярий.


>Я не знаю, этот пример можно долго разбирать. В своей дегенеративности он хорош.

image.png171 Кб, 653x687
242 2700581
>>700509
Там беды с башкой
243 2700586
>>700581
Моя Нефритовая Башня уже готова заходить в её место работы.
image.png29 Кб, 717x573
244 2700646
Как в tk treeview нарисовать соединительные линии в дереве?
245 2700653
>>700646
С чего ты взял, что это возможно? У тебя на пикче нативный шиндовый контрол, по-моему.
У тк свой.
246 2700673
>>700509

да всё понятно вроде

хороший программист
247 2700692
>>700653
Я знаю, что по дефолту одной командой включить нельзя. Я хочу сделать как в винде.
248 2700708
>>700692
Это бинарная либа, если оно там не предусмотрено, то никак не сделаешь.
249 2700777
>>700509
На первом пике неправы оба постера.
Аниме - не права в том что иронизирует, перед ним на самом деле нет ничего непонятного.
Поехавшая селедка - не права в том, что насрала бесполезной хуетой. Т.е. она просто написала строку которая выводит "кудах я виликая праграмист_ка" и для этого нагородила выражений без смысла. Т.е. по её мнению вот эта одна строчка это какой-то высокий уровень кодинга, которым она выебывается публично. Вот это обстоятельство характеризует её с крайне негативной стороны - её уровень низок и она говно как личность, с таким человеком ты дел иметь не захочешь никогда.
250 2700785
>>700708
Меня устроит даже самый костыльный вариант, с рисованием картинки и смещением, например.
251 2701022
>>700785

def karasik(self, pook):
....def some_fun(arg):
........pass

Аноны, для функций внутри метода есть какие-нибудь ПЕП8 правила или просто правила хорошего написания таких функций, кроме конечно того, что такие функции вообше лучше не делать.
252 2701024
>>701022
Случайно линканул твой пост, анон.
253 2701098
>>701022
Хорошее правило писать их как можно меньше. Так как дебажить сложно, зачастую не теряется ни капли контекста если их вынести за пределы метода и сделать приватными методами в классе и так дальше. Особенно это касается тех случаев, когда функция никак не зависит от подаваемых аргументов или стейта.
Если все-таки ситуация такая, что надо определять, то делай разбивку так, чтобы она возвращала довольно простой объект. У меня на проекте стоял линтер, который контролировал, чтобы выходная аннотация не было слишком сложной. В идеале это должен быть объект с низкой максимальной глубиной доступа.
Если ты пытаешься просто разбить метод на смысловые блоки, то подумай о выносе логики за пределы функции, либо делай функции не очень длинными. Строк 10.
254 2701179
Поссал в тред несовершеннолетних.
255 2701242
>>701179
Кристина Алиева, спок.
256 2701282
>>701242
Открывай рот. Псссссс пссссссссссссс.
257 2701526
>>701022
А что ты будешь делать с этой функцией дальше, зачем она тебе? Прямо внутри метода не знаю, внутри функций привычная вещь, в декораторах например по-определению есть.

На самом деле надо смотреть на архитектуру того, что ты делаешь. Может это не нужно вот совсем, там другие паттерны для этого используются.
258 2701532
>>697244
Надо ещё не забывать, что по правилам 2.5 округляется к 3, а 3.5 к четырём. В общем в случае, когда ровно половина, округление идёт к чётному.

И это не извращение, а довольно разумная вещь.

реализовывать же такое самому как-то тупо, когда есть уже встроенная функция round(). Просто вот даже пробовать неохота, да ещё чтобы оптимально.
image.png7 Кб, 270x120
259 2701534
>>701532
посмотрел, всё это выше даже написали, извиняюсь перед анонами как перед Кадыровым
260 2701549
>>701532
Ты в штаны насрал, советчик. Раунд округляет к четному, а анону надо к большему от нуля, о чем и была речь. Школьное человекопонятное округление, которое используется в быту, а значит и нужно для любых приложений и интерфейсов в питоне же доступно только в невероятно тормозной реализации через дасимал. Так что написать свою функцию округления должен каждый питухонец, а если ты этого ещё не делал значит ты нуб.
ясмог.png511 Кб, 458x612
261 2701568
>>700145

> Укроанон, с завтрашнего дня начинаю вкатываться, какие подводные?


Моложца!
262 2701664
Когда мы используем ProcessPoolExecutor, то отправляемые функции не кешируются? А то у меня есть подозрение, что гораздо эффективнее юзать несколько процессов с while True внутри, которые будет слушать очередь и выполнять заранее предопределенную логику.
263 2701781
>>701664
Сам спросил, сам ответил
Оно по дефолту форкается и все методы доступны сразу
264 2701818
>>700509
Мне понятно, но это хуйня. Можно вообще на одних байтах писать, но потом сам же будешь во всем этом говне ковыряться если возникнет ошибка, а другой вызвавшийся помочь программист даже читать не захочет.
265 2701834
>>686473 (OP)
Саппитонач, numpy.loadtxt отказывается читать больше 750 строк. Maxrows не выставлял, в документации написано что по умолчанию читает всё
image63 Кб, 500x332
266 2701851
>>701834
numpy.loadtxt по умолчанию должен читать все строки из файла, поэтому ограничение в 750 строк выглядит неожиданным. Однако, возможно, есть другие факторы, которые могут повлиять на это поведение.

Проверьте следующие вещи:

Убедитесь, что файл, который вы пытаетесь прочитать, содержит больше 750 строк. Откройте файл в текстовом редакторе или проверьте его размер.

Убедитесь, что формат файла соответствует ожидаемому формату numpy.loadtxt. Эта функция предназначена для чтения текстовых файлов, в которых значения разделены пробелами, табуляцией или другим разделителем. Если файл использует другой формат или разделитель, вам может потребоваться использовать другую функцию или настроить параметры numpy.loadtxt соответствующим образом.

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

Если проблема не решается, попробуйте предоставить больше информации о вашем коде и содержимом файла, чтобы я мог помочь вам более точно.
267 2701962
>>701549

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


бля, я нуб. реально за 10+ лет не приходилось писать конструкцию вида int(x + 0.5)
image.png77 Кб, 225x225
268 2702353
В чём проблема, ребяты, не могу взять в толк.
код: https://onlinegdb.com/pNd0P_Jet
Вкратце: создаём подключение, создаём кластер и коллекцию в монго.
1 тест: Пытаемся заносить значение в коллекцию - тест выполняется вполне себе хорошо.
2 тест: Проверяем, есть ли коллекция 'test_collection' во временной бд - AssertionError, т.к. на момент выполнения теста в бд нет ни одной коллекции.
зы request.addfinalizer(finally_drop) на строке 26 подразумевает, что функция удаления коллекции должна исполняться исключительно после завершения тестов, но у меня подозрение, что функция отрабатывает после первого теста, но это неточно. Помогите разобраться, Аллахом молю.
269 2702390
Ребят кто может подсказать. Кароче я начал делать приложение с GUI на PyQT5. Сделал, кнопочки тыкаются скрипт выполняется. Меня спросили а какая у тебя архитектура приложения? А я вообще не понимаю, а реально какая она? У меня суть проги в том что загружаешь туда картинку и можно ей название дать и потом по названию найти. Там типа есть класс пикчи, который я крафтил в FileReader, передавал двум другим абобусам, а они это выводили на экран. Там json в оперативке. Потом можно скачать архив с картинками и там будет Json с ссылками на эти картинки чтобы потом опять можно было их загрузить в прогу.
И вот какая у меня архитектура? БД ведь по сути нет, Json не БД же? Помогите новичку разобраться.
270 2702586
>>702390
Верагодна чакалі тое што ты кажаш, але больш абстрактнымі тэрмінамі, кшталту MVC/MVP/MVVM. Сутнасць у тым каб падзяліць прыладу на лёгічныя часткі: калі змяняеш від, то не чапаеш дадзеныя.

У цябе json - мадель, а від там, дзе from PyQT5 import ...
271 2702622
>>700646
Бамп
272 2702787
>>702586
Ну кажется суть уловил, но до конца так и не понял. Всё таки что за архитектура тогда получается? MVC/MVP/MVVM. Я читал об архитектуре и везде говорят, что она есть только у средних и крупных проектов, я ожидал что мой проект средний, а получается он маленький из-за отсутствия БД (если мы не считаем Json БД). Вот я и не могу понять, а есть ли вообще архитектура в моём случае?
273 2702799
Какой сейчас самый актуальный метод для прохождения всяких жс челленджей от cdn, которые без капчи?
Помню, были какие-то патченные хромиумы, которые не палились.
274 2702969
>>702787
Калі ты загадзя ня ведаў пра гэтыя канцэпты й не імкнуўся рэалізаваць дакладную архітэктуру, твая прылада не адпавядае ніводнай архітэктуры. Наступным разам для QT абірай архітэктуру MVP.
275 2703021
>>2682429 →
Ну да, боты в телеге вечно работают и норм, а мой виснет через время или пайчарм вылетает
276 2703522
>>702969
Понятно, спасибо.
277 2703751
Как в matplotlib увеличить разрешение графика? Не окна, а именно увеличить расстояние между точками по обеим осям
278 2703782
>>703751
figure(dpi=9000)
Ну и не забудь сделать фигсайз таким, что сможет выдержать всю мощь твоего dpi.
figsize=(13.333, 7.5), dpi=360
Обычно самое то.
279 2704038
Питон в бэкенде еще живой или окончательно стал никому не нужен? Какие-нибудь более-менее крупные проекты пишутся на джанге, фастапи и прочей хуйне?
280 2704092
>>704038
Админки к телеграм-ботам. Он-то и был всегда языком для создания телеграм-ботов с рефералками.
281 2704159
>>704092
А где в 90-е применяли телеграм-боты, если не было телеграма?
282 2704162
>>704159
Волтс оф Парнас.
283 2704168
>>704159
В 90-е питона толком не было. У меня в вузеке кореш устроился на только-только вышедшем питоне писать какую-то хуиту бухгалтерскую, за что получил погоняло на курсе соответствующее. Это 97-99 года. Затем он переполз на Джаву, вроде, а потом мы потерялись.
284 2704178
>>704168
Был.
285 2704182
>>704178
Это был калоязык для чумных фкриков из микрокоммьюнити. Они появился только в 1994–1995 годах.

Вторая ветка (2.0) вышла в 2000 году в конце.
286 2704183
>>704182

>калоязык для чумных фкриков из микрокоммьюнити


Сейчас только размер коммьюнити поменялся, но если учитывать только IQ > 80, то, да, остался прежним, всё так и посейчас.
287 2704185
>>704182

>Это был калоязык для чумных фкриков из микрокоммьюнити


Типа раста?

>Вторая ветка (2.0) вышла в 2000 году в конце.


Ну ты же утверждал не то, что Питон стал языком для создания телеграм-ботов в последние годы, а то, что он им был ВСЕГДА, то есть и в 90-е годы, когда он был калоязыком. для чумных фкриков из микрокоммьюнити
288 2704186
>>704183
Приведи пример не калоязыка.
289 2704217
>>704038
Живой
Пишутся и очень активно

>>704168
Мне кажется до середины нулевых не было питона как такового, скорее использовали перл-пхп из скриптовых. Просто тренда такого не было, реально просто для чумных фриков. К концу нулевых он взлетел
2.png6 Кб, 581x109
290 2704223
Файлы то открываются, то не открываются.
Вчера всё работало нормально. Сегодня файлы перестали открываться. Выдаёт такие ошибки: либо invalid argument, либо unexpected character (.py).
Из нескольких вариантов решения проблемы, найденных в гугле, помог только один: переместить открываемый файл чисто в диск C:.

Но затем я провёл эксперимент (пикрелейтед) и охуел:
Сделал три копии этого файла (print.py):
• один поместил на директорию диска C:
• второй — в папку с буквенным названием (abc)
• третий — в папку с цифровым названием (1)

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

Что за херня? Они будут открываться, как хотят, по настроению? Есть ли в этом поведении интерпретатора какой-то принцип? В чём он состоит?

апча: Аллах
291 2704229
>>704186
Си, Го.
292 2704231
>>704223
А чё за двоеточия там в путях? Ты дурачок?
293 2704236
>>704223
>>704231
Это тот шизофреник со справкой, который от треда ТРЕБОВАЛ, чтобы модули с кучей точек в названии у него импортировались БЫСТРАБЛЯ, потому что ЕМУ так удобнее.
294 2704245
>>704038
Мы систему биллинга будем на нем пилить
295 2704246
>>704229

>Го


>Не калоязык

296 2704252
>>704231
Блять, ладно, буду знать, спасибо.
>>704236
Не, я ньюфаг
image.png284 Кб, 500x500
297 2704254
298 2704255
>>704229
Это от длинны названия зависит? Ну тогда го в два раза каловее си.
299 2704257
>>704255
Тебе со своими 7 см везде длина мерещится, бедняжка?
300 2704260
>>704257
Другой закономерности не наблюдается.
301 2704270
>>704260
Предлагаю судить о языке по его коммьюнити, а не по длине твоего членика. Даже не по синтаксису. А именно по людям, которые им пользуются как инструментом.

Что это за люди? Каков их уровень в среднем? Какие задачи они выполняют (а не инструмент, которым они эти задачи выполняют, и не какие задачи они МОГУТ выполнять этим инструментом)? Какие задачи выполняли, какие задачи перестали выполнять, куда движется тренд задач? В чём именно суть их задач? Не задач языка, а задач людей, использующих язык, повторюсь.
302 2704274
>>704270
Задачи на си люди решают скорее вопреки, а не благодаря. Переход давно назрел, но приличной замены не наблюдается. Плюс слишком много возни с перекатом наличной кодовой базы. Возможно, с развитием гопоты это решится.
303 2704275
>>704270
А какая разница? Если задачи востребованы и за них платят деньги - значит задачи пиздатые.
Вот джаваскриптизеры вообще формы красят - значит ли это, что они не программисты? Нет, не значит, потому что красить формы тоже важная задача.
304 2704280
>>704274
Дык, наличие библиотек заставляет пользовать ещё Фортран, Аду и Кобол, это известная тема.

Насчёт Си и перехода... В Питоне есть несколько вещей, которые Опоссум не делал ПРИНЦИПИАЛЬНО (типа тернарного оператора, case и так далее). И я вот этой хуйни с принципиальностью не понимаю. Хорошо, что его выкинули на почётную должность — есть шанс на развитие языка. Но не ранее, чем разберутся с управлением памятью и указателями.
305 2704287
>>704275

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


Да. Они кодеры. Не программисты.
Это как датасайентист-разметчик и математик нейросетей — две кардинально разные профессии, два разных образования, земля и небо, зарплата может отличаться в 1000 раз, но оба, типа, DS/ML.

>>704275

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


Не спорю.

А теперь вернёмся к Питону. Что за задачи сейчас на нём решаются и как выглядит их классификация?
306 2704293
>>704280
Ну так то case уже впилили.
А так, у меня сложилось впечатление, что он очень болезненно относился к расширению синтаксиса, наличные кейворды обвешивали дополнительным функционалом в зависимости от контекста. И это при том, что был принципиально несовестимый переход на 3, там можно было развернуться и дохуя поломать и добавить-исправить, а заметных изменений минимум. Хотя с ленивизацией наличных средств удачно получилось, батя грит малацца.
307 2704315
>>704287

>А теперь вернёмся к Питону. Что за задачи сейчас на нём решаются и как выглядит их классификация?


Делали Б2Б беттинговую платформу, сейчас перешел в компанию, которая делает биллинг, еще было предложение в место, где систему мониторинга и управления для складских роботов пилят.
мимо
308 2704323
>>704287
Это замена перла. Решает примерно те же задачи и можно пилить говновеб, если уж совсем припрёт.
Плюс, для него насрали либ учёных, чтобы не заморачиваться с изучениями языка. Сделал полтора хелловорлда и можно идти хуярить свои науки.
309 2704341
>>704287

>Да. Они кодеры. Не программисты.


Если это принципиально разные профессии, которые так же легко разграничить, как, например, профессию электрика и сантехника, то дай четкое определение для обеих профессий. В чем принципиальное отличие, какой круг задач решают, какой теоретический базис используют.
Иначе это просто словоблудие для оправдание гейткиперства.
310 2704625
>>700509
Лол, классика: "кто наряд не видит, тот глуп или не на своём месте".
311 2705136
>>704287

>А теперь вернёмся к Питону. Что за задачи сейчас на нём решаются и как выглядит их классификация?


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

Есть масса ниш, где питон в лидирующих позициях
312 2705219
>>705136

>Есть масса ниш, где питон в лидирующих позициях


Ну да. Блокноты статистиков и анальщиков, а также, скрипт для домашнего применения по всякой текущей рутине.
313 2705265
>>705219
В бэкенде не используется?
В девопсе не используется?
В тестировании не используется?
314 2705273
>>705265
В его манямирке нет конечно. Бэк на НОРМАЛЬНЫХ языках, девопс на шелле, а тестирование руками.
315 2705451
>>686473 (OP)
Люди добрые подскажите пожалуйста.
Мне нужно написать простенький код, который создаёт ГУИ, что бы можно было редактировать файлы экселя. Я хочу замутить привязку сочетаний клавиш к командам, что бы ими можно было пользоваться, даже если окно ГУИ не активно(не главное). Но для того, что бы иметь возможность использовать сочетания клавиш в таком режиме, мне нужно запустить код от имени администратора. И чёта я не могу понять как сделать мой mainloop(), который бы работал в функции, которая запускает код от имени администратора.
В данный момент моя проблема такая - у меня всплывает окно о том, хочу ли я что бы питон вносил изменения в систему, а потом код сразу завершается. Я не могу понять, ЧЯДНТ.
Памагите!
someone-wow-your-cat-is-really-ugly-cat-32023806.png296 Кб, 490x330
316 2705453
>>705451
блэт картинка отклеилась
317 2705487
Хочу написать сервак, который раз в день в указанное время дампает данные. Как это шедулить, какие средства есть?
318 2705490
>>705487
Крон
319 2705510
>>705490
Два разных процесса запускать?
320 2705529
>>705510
Можешь два процесса
https://pypi.org/project/python-crontab/

А еще можно тред сделать отдельный, который раз в сутки просыпается
321 2705570
>>705487
Не слушай этого деда >>705490

Сейчас такие вещи делают с помощью SystemD
первый пример из гугла: https://www.airplane.dev/blog/systemd-timer-how-to-schedule-tasks-with-systemd
322 2705643
>>705570
Но это в любом случае получается 2 разных процесса фактически. Как делать единую точку управления? Если я запустил сервер - я хочу и процесс дампа запустить. Если я остановил - я хочу и процесс остановить. Я хочу, чтобы они работали с одной бд, и настройки задавались в одном месте. Как такое делается?
IMG20230520215356.jpg64 Кб, 731x612
323 2705773
Я себе голову сломал. Короче, есть задание, написать функцию которая возвращает процентную ставку, депозит и проценты. Я выполнил это на изи, минут за 15, но решил усложнить себе жизнь и попытался сделать так, чтобы выводило "год, года, лет", но у меня не получается сделать правильно. Типо, вместо "за 10 лет" выводит "за 10 год". Я знаю почему оно так выводит, но не могу подобрать правильный алгоритм.
Может кто подскажет?
324 2705783
>>705773
Потому что ты проверяешь сначала 1 в любом месте. Там надо endswith или как там. Лучше просто сдеать years % 10 == 1
Алсо, можно искать прямо в рендже, т.е. years in range(5, 21).
И сделай нормальные отступы, что это за каша?
325 2705788
>>705783
Ну и рейндж надо первым проверять, там есть 11.
326 2705804
>>705773
Не занимайся этим. Форматирование оставь фронту. Правильнее всего подключить либу, которая правильно умеет склонять слова, а не самому костылять.
327 2705805
>>705783
Работает, но если написать 1 в середине, 612 например, то выдает гойда.
328 2705809
>>705804

>подключить либу


Можешь посоветовать?
329 2705811
>>705805
Ну, у него свои 5-21
делай years % 100 тада.
IMG20230521004405.jpg78 Кб, 787x655
330 2705945
Фух, все-таки разъебался.
>>705811
Не, вот правильный способ. Остаток от деления искомого числа на 10 всегда возвращает последнее число в последовательности этого числа.
Так шо, спасибо за наводочку.
331 2705950
>>705643
Библиотека выше буквально то, что тебе нужно, запускаешь из мейн треда указывая необходимые аргументы, можешь удалять таску когда угодно.
Или сам запускаешь отдельный процесс и ставишь time.sleep на сутки
332 2706000
Как сделать так, чтобы приложение запускалось на ПК другого человека? Приложение работает локально, использует venv с библиотеками не последних версий, python 3.10.9 и должно запускаться как минимум на винде 10/11 (у меня 10).
Я даже не знаю, как такое загуглить, и какие в принципе существуют способы.
334 2706053
>>706038
Добра тебе.
335 2706070
>>705945
Ну на 100 это последних два числа (внезапно), можно зделоть три ветки вместо четырех. Алсо, ввести переменную для одного принта вместо дохуя. Улучшать и улучшать, кароч, лет через десять допилишь до какой-то готовой либы.
И печально, что ты не прислушался про спейсинг, какая-то яндекс-хуита бы тебя уже зарезала по бухтению линтера, как мы выяснили некоторое время назад.
336 2706238
>>706070

>можно зделоть три ветки


Нет, нельзя, потому что в ноль будет за пределами ранджа.
А как задать переменную для одного принта, в таком случае, я даже не представляю.
337 2706252
>>706238
В принципе, можно выкинуть 5,10, остальное ты уже покрыл и оно пойдёт в else в любом случае.
С принтом делаешь "за {years} {end}." и в ифах только end присваиваешь.
338 2706378
Нужно ли читать банду четырех? Есть там что-то, чего можно простым опытом не наработать?
Читать все-равно буду, но пока сосредоточился в основном на практике и документации, параллельно почитываю Лутца.
340 2706389
>>706383
О, балдежь. Спасибо.
341 2706409
>>686473 (OP)
Привет всем. Блок-схемы вообще актуальны для матёрых программистов? Стоит их задрачивать?
342 2706424
>>706409
Хз, по-моему устаревшая хуйня для современных реалий. Студней учить сгодится.
343 2706705
сап двач.
такой вопрос.
скоро закончу учить питон, буду знать обычные вещи - django, django REST, fastAPI, MySQL, bootstrap/html/css.
Однако смотрю на вакансии, и ни одной вакансии на джуниора на питоне. Так вот что дальше делать то?
Насколько тупо будет сейчас начать учить PHP/Laravel, сколько времени я на это еще потрачу?
так то я бы хотел начать пилить для стима свою ВН на renpy
show.png5 Кб, 270x120
344 2706730
>>706705
Может сначала проверить, нужно ли это кому-то на стиме? Хотя не, сначала сделай, потом провершиь.
345 2706737
>>706730
может и будет провал, но мне хочется сделать что-то. Я так даже успокоюсь потому что внутри как будто что-то зудит (сделай, сделай)
346 2707449
>>706705

>ни одной вакансии на джуниора на питоне


Размести объявление на авито и работка сама найдет.

>Насколько тупо будет сейчас начать учить PHP/Laravel


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

>сколько времени я на это еще потрачу?


Несколько месяцев, приблизительно.
347 2707577
>>707449

Так я Python бэкендщик в основном, фронт я знаю только поверхностно, как с бутстрапа кривенько взять кнопки, навбары и прочее. Мне зачем нужно знать php? Тут либо пайтон, либо php. Хотя спасибо за совет с авито
348 2707611
>>686473 (OP)
Сделал генератор чисел Фибоначчи. Создал словарь с ними же, присвоил определения "четное\нечетное". Однако при выводе словаря выводятся не все числа, а лишь последнее.
Помогите.
капча: список

https://goonlinetools.com/snapshot/code/#vf6c19ds5zarvln3khyox
349 2707614
>>707611

>numbers = {n : 'zero'}


такім чынам ты ствараеш новы слоўнік, а не дадаеш да існага. Ужывай numbers [n] = 'zero' ва ўсіх адпаведных месцах.
350 2707615
>>707611
Радкі 15,16

>numbers = {}


>numbers = fibo


Ты што зрабіць намагаешся? спачатку пусты слоўнік, а потым замест яго ліст fibo. Лайно нейкае. Вось працуце
https://www.online-python.com/yTfhKOaNAr
got 5 - Google Search.png116 Кб, 789x239
351 2707636
КАКОЙ ЖЕ ВАМ ПИЗДЕЦ КОДОМАРТЫХИ
352 2707719
>>707636
Так уже три был пиздец, теперь прям пиздец-пиздец?
Ай, баюс-баюс.
353 2707728
>>686473 (OP)
Обязательно ли становиться линуксодрочером, чтобы душить питона?
354 2707734
>>707728
Крайне желательно, если ты занимаешься не чем-то, железно завязанным на мс. А ведь даже дотнет уже отвязался, это небольшой намёк.
355 2707737
>>707636
Но ведь нас уже убила чатжипыты-4, ты что-то путаешь
356 2707817
Блять как же тяжко с вашим питоном после нормальных языков, хуй пойми с интом я работаю или со стрингом блять
357 2707822
>>707817
Типизировай
358 2707915
>>707817
У тебя иде отбери и ты инвалид, а тут можно хуярить в виме через ссх. Диды так и работали, и принтили вместо дебага.
359 2708049
>>707614
>>707615
Дзякую табе, бацька, выразна растлумачыў усё, буду ведаць!
360 2708064
>>707817
Если это в кавычках, то стринг, если без, то либо переменная, либо интегер. Чего тут понимать-то?
361 2708084
>>707449

>>Насколько тупо будет сейчас начать учить PHP/Laravel


>Ты это в любом случае должен знать, особенно если фронтенд.


>Быть программистом и не знать как разметки делать?


Омич полуёбок, скажи ты наркоман? я просто тоже где то там живу, могли бы вместе уёбывать наркотики.
362 2708090
>>686473 (OP)
Kivy, я ебал твою маму рот! Нет, фреймворк то пиздатейший, на самом деле (если исключить то, что документация у него говно и чтобы понять что-то надо читать исходник, а еще стандартные виджеты это посос и их надо допиливать до нужного тебе состояния. И что было им сложного написать отдельный класс для числовых полей, чтоб и с прокруткой мыши, а на стрелочки значения менялись, и чтоб с проверками блядь и со всеми ништяками? Он же намного проще чем текстовый).

Использую для Desktop.

Вопрос. Возможно ли как-то снизить нагрузку на процессор от анимаций? Одна ебаная анимашка сжирает под 40% моего ядра (а Python живет в одном из ядер, не распаралеллить). Да и 20 тоже жрут столько же. Как эта хуйня работает вообще, он че, весь экран перерисовывает, а не маленькую область с виджетом? Это ж пиздец.
363 2708093
>>708084
Закрашиватель формочек, который даже не знает как сайт сделать, спок.
364 2708110
>>708090
Магчыма распаралеліць. Чытай пра плыні https://docs.python.org/3/library/multiprocessing.html
365 2708115
>>708110
Да про мультипроцессинг то понятно, но это не тот случай. Хули, мне в одном процессе рисовать, а в другом считать? Фреймворк так не работает.
366 2708129
>>708090
А нахуя? Нахуя использовать неоптимальные инструменты для задачи?
367 2708133
>>708129
Ну, почему неоптимальные? Меня устраивает все, кроме того что эта анимация дохуя жрет. Если допилить виджеты как мне надо, то моя программа (а она, блядь, большая) ест что процессора нихуя что памяти мегабайт 150, что сносно. Вот анимация только, сука такая.
368 2708139
>>708064

>либо переменная, либо интегер


Да вы тут совсем ёбнутые
369 2708145
>>707817
Вообще, было бы заебись, будь Python типизированный. А всякая хуйня работающая с разными типами была бы как templates в C++. Да, есть type hinting, но это не совсем то.

А может, мы забиваем гвоздь телескопом? Я вот пишу большую программу графическую на Python. Тут все эти приколы динамической типизации на хуй не нужны и только мешают. А в скриптиках маленьких заебись...
370 2708165
>>708139
Ты знаешь что такое безумие?
371 2708250
>>708145

> было бы заебись, будь Python типизированный


Там как раз для тебя Mojo изобретают. Вообще не понимаю чем тебе тайпхинтов мало.
372 2708306
Весь блок кода можно переместить табом, а как сделать обратно?
373 2708316
>>708306
Где
374 2708322
>>708306
Язык тут причем
375 2708337
>>708306
Шифт + таб
376 2708343
>>708337
Спасибо.
377 2708437
>>708145
типизация хороша только для простых типов, а вот когда тебе структуры надо делать, то вот нафиг, в традиционных компилируемых языках приходится изобретать адские системы наследований одних данных в другие. Ну его нафиг. Банальные задачи распаковки жсона в структуру превращаются в какие-то танцы с бубнами
378 2708516
>>708437
Ебля с типами гораздо лучше чем непонимание того, что приходит в в параметры метода, особенно если код писали давно или вообще не ты.
379 2708552
>>708516
А что непонятного-то? Есть же хинты
380 2708575
>>708437
Ничего не мешает сделать это же в языке с строгой типизацией. Я ничего о компилируемых языках не говорил.
381 2708580
Аноны, выручайте. Голову себе сломал, но нужен код, который выводил бы заданное кол-во различных символов умещая все по 10 за строчку и в 10 столбцов например «#»

Капча дьявол
382 2708599
>>708580
Пример покажи.
383 2708611
>>708599
Надо вывести 10#, 6 и 1+
##########
*+
384 2708613
>>708611
«*» отклеились
изображение.png12 Кб, 278x238
385 2708621
386 2708626
>>708621
Плюсы должны быть на одной строке со звездами, и при этом все должно переносится на следующую строку, если их больше 10
изображение.png26 Кб, 665x274
387 2708652
388 2708655
>>708652
От души, анон, тонны чая тебе
389 2708664
>>708655
Вообще если это не задания ради задания, то в питоне есть встроенная либа textwrap, которая делает всё это без костылей.
390 2708800
>>708575
Питон - язык со строгой типизации так-то.
391 2708893
>>708575
Но питон настолько же компилируемый насколько джава или шарп
392 2708921
>>708800

>Строгая типизация


>Можешь складывать 1 + 1.0 + True не кидает ошибку и нормально считается

393 2709114
>>708893
У обих есть jit искаропки + готовые файлы уже в байткоде, бидон же каждый запуск коньпеляет.
394 2709289
>>709114

>У обих есть jit искаропки


Что не уменьшает его возможности кокомпеляции

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


Только если файл изменился
395 2709804
>>709114

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


Пиздёжь
396 2709842
>>708921
Возможность неявного преобразования типов != слабая типизация. Ты же не хочешь сказать, что в Си++ слабая типизация, потому что там можно складывать инт и дабл?
А в Джаве творятся вообще страшные вещи - там можно сложить строку и число - например "Hello" + 123 будет равно Hello123. И ничего, живет как-то до сих пор.
397 2709908
>>709842
В плюсах литерали слабая типизация
398 2710026
>>709842
Ты, по-моему, путаешь статику и динамику.
Типизация сильная только в том случае если нет тайпкастинга. Он есть - типизация слабая.
Когда ты складываешь дабл с булем или интом - это литературно лакмусовая бумажка слабой типизации.

Оставим за скобками как таковую адекватность деления типизации на строгую и слабую и отсутствие адекватного определения для оси силы типизации.
15554080583870.jpg2,6 Мб, 1536x2048
399 2710549
Аноны, помогите с решением локальной задачи. Сам я не погромист, когда-то в школе немного занимался.
Надо вытащить с хтмл кучу данных, выбрал питон и бюьтифулсуп.

Есть блок с тегами <div> и <span>, надо вытащить из них текст.
https://pastebin.com/9BSGFDnk

Проблемы с тем, чтобы вытащить текст из каждого тега по отдельности - не возникло, но мне надо систематизировать информацию. Плюс я не пойму, как мне циклом в цикле пройтись.
Логика такая: нахожу первый тег <div> с классом "col-lg-5", печатаю текст, который он содержит - "Огурцы".
Далее, в этом же теге <div> ищу тег <span> с классом "d-none d-xl-inline", печатаю из него текст, потом ищу в ТОМ ЖЕ САМОМ теге <div> другой <span> и печатаю текст из него.
Затем уже ищу другой тег <div> и повторяю процедуру.
Нужно на выходе получить вот такой текст:
Огурцы
15.80
19.15
Помидоры
17.10
33.51

Буду очень сильно благодарен, если не просто логику написания кода подскажете, а еще и кусками кода угостите
400 2710564
>>710549

> Далее, в этом же теге <div> ищу тег <span>


Судя по твоему примеру, они сиблинги Где-то ты объебался.
Алсо, делай через селекторы, они универсальны в отличии от суповых велосипедов.
изображение.png42 Кб, 523x439
401 2710597
Как сделать рекурсивную функцию генератор?
Есть объект, в котором есть данные и ссылка на предыдущий объект. И вот пока в объекте существует ссылка на предыдущий объект, нужно чтобы функция возвращала данные текущего объекта и залазила в предыдущий объект.
Что сделать, чтобы функция get_lst работала правильно? Никак не доходит что я делаю не так.

class A:
def __init__(self, link=None, string=''):
self.data = 'test' + string # данные
self.link = link # ссылка на предыдущий объект

q = A()
w = A(q, '2')
e = A(w, '3')

def get_lst(obj):
if not obj.link:
yield obj.data
else:
yield from get_lst(obj.link)

lst = [x for x in get_lst(e)]
402 2710605
>>710597

В вашем коде рекурсивная функция get_lst объявлена правильно, но вы забыли добавить отступы (indentation) для определения класса и функции. Кроме того, для работы генератора вам нужно использовать ключевое слово yield вместо yield from. Вот исправленный код:

class A:
def __init__(self, link=None, string=''):
self.data = 'test' + string # данные
self.link = link # ссылка на предыдущий объект

def get_lst(obj):
if not obj.link:
yield obj.data
else:
yield obj.data
yield from get_lst(obj.link)

q = A()
w = A(q, '2')
e = A(w, '3')

lst = [x for x in get_lst(e)]
print(lst) # ['test3', 'test2', 'test']


В этом примере функция get_lst рекурсивно вызывает саму себя, пока в объекте link существует ссылка на предыдущий объект. Когда ссылка отсутствует, она возвращает данные текущего объекта. Затем список lst создается с использованием генератора get_lst, который содержит все данные из объектов цепочки. Результат выводится на экран и должен быть ['test3', 'test2', 'test'].
403 2710637
>>710597
Тут не нужна рекурсия, просто вайлом хуяришь.
404 2710665
>>710605
Спасибо, теперь понятно как оно работает
>>710637
Да я знаю, просто хотел другим способом попробовать решил.
405 2710676
>>710564
Если ты не заметил, то

>Сам я не погромист, когда-то в школе немного занимался.



Я, кроме того, что я где-то объебался - ничего не понял. Было бы здорово, если бы ты разжевал
image.png1,3 Мб, 720x1280
406 2710764
Парни, как найти первую работу джуном без опыта работы (Python Backend)? Вакансий 0, такое ощущение, что рынок загибается... Полная бенадёга
407 2710768
>>710764
Рынок джунов мертв с начала СВО, это во всех языках сейчас
408 2710771
>>710768
И чё и всё? Никаких вариантов вкатиться даже если очень хочется? Фриланс-то хоть жив?
409 2710816
Сап. В тред призываются специалисты по МЛ. Есть простая игра-лабиринт. Нужно научить нейросеть проходить все поле, не врезаясь в стены и препятствие. Класс игры уже имеется (хуевый, но для начала пойдет), а с нейросетью беда. Что-то нагуглил, но как заставить это работать - хз. Код: https://pastebin.com/4LJH0t0S . Помогите, аноны, с меня нихуя
410 2710824
>>710764
>>710771
Само понятие джунов расхуярили и размыли двухнедельные курсы подготовки полоумных макак, после которых на рынок стала ломиться буквально толпа идиотов, думающих, что им сейчас по 300кк будут платить за красивые глазки. По сути, эти полупокеры полуджуны просто довели рынок до состояния что нужны либо рабы за еду (в микроколичествах), либо сразу милорды.
411 2710835
>>710816
Reinforcment learning гуглил?
412 2710843
>>710835
Да, и нихуя не разобрался я еще картофель и это моя первая задачка, связанная с нейросетями
413 2710862
>>710771
Онлифанс какой-то наверное и жив. Хотя может и нет.
Надо съебывать в третиие страны дрочить анус. До чего довели страну.
414 2710878
>>710026
Джава - язык со строгой или слабой типизацией?
415 2710890
>>710549
Бамп вопросу
416 2710939
Впервые зашел в официальную документацию редиса и охуел от количества команд. Посоны, вы используете что-то кроме set, get и expire?
417 2710956
>>710549
Твая лёгіка не адпавядае дадзеным у html, бо на тваю думку Агуркі й цана утрымліваюцца ў адным div-блёку, але яны ў усобных.
418 2710959
>>710549
Огурцы
15.80 Старая
19.15 Новая
Помидоры
17.10 Старая
33.51 Новая

https://www.online-python.com/SGVgfRE5bP
419 2711027
Ребят, нужно выучить основы питона за день максимум. Что посоветуете без воды и прочей хуйни?
Мне нужно написать тг бота который будет тянуть инфу по апи с софтины. Т.е. много мне не нужно:
Работа с числами и строками
Циклы
Массивы
HTTP-запросы
Работа с json
Работа с файлами

Если есть какой-то мини курс без говняка который охватывает темы выше, а также знакомит с синтаксисом и особенностями языка - поделитесь плиз.
420 2711053
>>711027
Иди в го просись, у на тут сириус бизнес.
421 2711075
>>710878
Чел, скажи пожалуйста, ты тупой?
Я тебе в предыдущем посте написал, что деление на строгую и слабую - это крайне условное деление, по которому нет согласия. Позицию на оси строгой и слабой типизации ты как-либо точно определить никогда не сможешь.
Возвращаясь к вопросу по Джаве.
В Джаве типизация не строгая, потому что есть тайпкастинг.
Разрешаю перекрыть статьей в вики, которая говорит, что у джэвокала строгая типизация.
Любой язык где есть тайпкастинг, в особенности неявный - язык нестрогой типизации.
Строгая типизация - это маняфантазия. Языков со строгой типизацией не существует.
422 2711103
>>711053
Мне змея нужна.
423 2711113
>>711027
https://learnxinyminutes.com/docs/python/
Плюс квикстарт нужного веб фреймворка
424 2711172
>>711113
Охуенно, то что нужно. Спасибо!
425 2711314
В чем плюсы asyncio перед тредами, если они во время I/O операция так же отпускают контекст? В среднемелких проектах кто-то сильно парится о том, что система пару тысяч сокетов лишних сокетов с дескрипторами сожрет?
426 2711511
>>710824
Двачую профессора
427 2711854
>>711314
В тредах это побочный эффект, а в асинке это фишка.
15946768609870.jpg231 Кб, 960x1280
428 2712024
>>710959
Спасибо, анончик!
429 2712056
нужно оптимизировать алгоритм гаусса LU разложения без перестановки строк, чтобы учитывалось как можно меньше нулевых элементов. Нельзя использовать никакие библиотеки кроме numpy.
структура матрицы прилагается к сообщению
вместо звездочек число = 4
кроме диагонали главной, на ней: np.random.rand()*20+4
,.png182 Кб, 791x646
430 2712058
431 2712091
Ребятки, помогите пожалуйста, я с поста выше
432 2712093
>>711314
Наверно корутины в эвентлуп кинуть по расходам гораздо меньше, чем треды плодить, не? Если в твоего телеграм-бота будет долбиться 1000 человек, чтоб к фоточке хуй приделать, на каждый запрос будешь тред отдельный плодить и ждать переключения контекста каждые 5 мс?
433 2712179
>>712093
Когда тред засыпает во время ожидания данных в сокете, то переключения на него не происходит. Единственная разница, что в случае asyncio они работают в неблокирующем режиме.
434 2712235
>>712179
Если их не джойнить в основном потоке, то они не блокируют его:
1) если это io-задачи или сисколы (epoll/io_uring/etc), то gil опускается, блокировки нет, но переключения будут, когда данные появятся в сокете/буфере;
2) если это вызовы скомпилированного c/c++/go/rust-кода, то gil также опускается и также не блокирует основной и остальные потоки, кроме моментов исполнения байт-кода по запуску всего этого и сериализации данных в py-объекты при получении ответа;
Если же это приделывание хуя через opencv какой-нибудь, где 50% кода внутри на питоне, то gil не даст им работать "параллельно", будут переключения между ними и будет конкуренция, вплоть до локов.

Если делать всё это через asyncio, то:
1) для io-задач и сисколов вместо 1+n потоков у нас 1 поток с n корутинами, блокировки нет, эвентлуп сам решает, когда ему читать данные из футур;
2) для вызова скомпилированного кода или cpu-задач это надо запускать в отдельном тред/процесс-пуле через run_in_executor, и тут уже в зависимости от ресурсов основной поток с эвентлупом может залочиться, но переключения также будут, если делать через тред-пул, поэтому неблокирующий режим у нас только в 1 случае.

Разве не так?
435 2712462
Пытаюсь парсить XML.
Вот код:
https://www.online-python.com/pD9XA4NxOn

Почему-то основной цикл даже не выполняется... Что я делаю не так?
436 2712583
>>712462
наверное root.iter('ItemGroup') создает пустой итератор. попробуй другие методы

https://docs.python.org/3/library/xml.etree.elementtree.html#xml.etree.ElementTree.Element.iter
image.png16 Кб, 941x165
437 2712603
>>712583

>наверное root.iter('ItemGroup') создает пустой итератор


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

Через findall заработало, собственно, пикрил. Но почему же root.iter() не работает? Он ведь должен!
438 2712838
>>712603
выясни если интересно
через полгода всё равно забудешь
439 2713394
Ну давайте кому там что порешать
440 2713414
>>713394
Да, что-то количество ньюфагов с копеешными задачками поутихло, негде показать себя. Может на улице выступай с математичискими фокусами?
eyeofmagic.png1,8 Мб, 1024x1024
441 2713710
>>686473 (OP)
Господа программисты, нужна ваша подсказка. Мне нужно использовать модуль system-hotkeyhttps://pypi.org/project/system_hotkey/, но он не поддерживает python 3.10+
Есть библиотека system-hotkey310 1.0.5 https://pypi.org/project/system-hotkey310/, но я не могу понять, как её импортировать для использования.
import system_hotkey310 не работает
442 2713743
Я думал, Питон — даунский язык для даунов. А тут волею судеб пришлось писать скрипты на Lua (не под игори) — хуясе йододефицитное мракобесие... Измазался в нём как запарафиненный разносчик параш в гонорейной больничке.

Это для тех полупокеров, кто генетически не способен осилить божественный Tcl?
image.png6 Кб, 466x65
443 2713748
444 2713787
>>713743
ты еще autohotkey не видел
445 2713799
>>713748
но это же по идее должно вызывать обычный system-hotkey, а не
system_hotkey310
хотя я так подумал, может это вообще не нужно? на самом деле основная ошибка, кторую я пытаюсь исправить - это
AttributeError: module 'collections' has no attribute 'Iterable'
446 2713806
>>713799
Идешь в исходники, в импорте вместо collections пришешь collections.abc
447 2713858
448 2713940
>>713806
я разобрался, спасибо

если заменить в system-hotkey.py
import collections.abc
всё равно продолжает давать ошибку
AttributeError: module 'collections' has no attribute 'Iterable'

но если оставить import collections
и добавить collections.Iterable = collections.abc.Iterable
то модуль system_hotkey работает

как я понял, это потому что модуль collections.Iterable устарел и нужно использовать collections.abc.Iterable

Единственное, что я не понимаю, как работает эта связка из
system-hotkey и system-hotkey310 1.0.5
Потому что в system-hotkey310 1.0.5 вообще нет .py файлов
Там файлы, расширение которых я даже не могу посмотреть.
449 2713985
Подскажите как написать чтобы если юзер не авторизован, автором поста становился пользоватль "аноним"? У меня ошибка, которую я не могу осилить.
450 2713990
>>713985
Анонимус это объект-заглушка, он реализует интерфейс юзера, но не является его подклассом.
451 2713999
>>713985
Во-первых у тебя related_name в group некорректно прописано.
Во-вторых ты в if User.is_authoricated проверяешь не объект, а класс.
452 2714005
>>713985
В-третьих, у Джанго есть встроенное решение для анонимного пользователя.
Capture2023-03-2822-35-321920x1080.mp41,1 Мб, mp4,
1920x1080
453 2714006
>>713990
>>713999
Спасибо, заработало
454 2714009
>>714005
Никак не могу разобраться как этим пользоваться.

if request.user.is_authenticated:
post.author = request.user
else:
#post.author = User.objects.get(username="anonymous")
post.author =
455 2714013
>>714005

>Post.author" must be a "User" instance.



Вот это всегда у мня
456 2714014
>>714009
post.author = AnonymousUser()
Просто создаешь экземпляр класса
457 2714015
>>714013
Хотя чатгпт говорит, что лучше проще написать None, возможно так и есть.
image.png54 Кб, 917x657
458 2714017
В контексте view, использование AnonymousUser() не является корректным способом установки анонимного пользователя в качестве автора поста.

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

Таким образом, если пользователь аутентифицирован, мы устанавливаем request.user в качестве автора поста. Если пользователь не аутентифицирован, мы устанавливаем None в качестве автора поста. Это соответствует требованиям модели, где поле author ожидает экземпляр модели User или None.
459 2714023
>>714017
constraint failed: posts_post.author_id

Вот такое получаю с None и AnonymousUser
460 2714470
Юзаю фастапи и не могу нарадоваться как он хорош. Насколько он вообще кому-либо востребован кроме как для петов?
461 2714606
>>714470
Также как и другие фреймворки на питоне - вообще не востребован.
выява.png663 Кб, 1280x765
462 2715422
>>714606

> хрю-хрю-хрю-хрю

463 2715598
>>715422
Шарп это хуевый клон Джавы от майкрософта.
464 2715920
>>706409
Нет. Подавляющее большинство попыток визуализировать код обвенчались крахом, если это не какая то узкоспециализированная хуйня вроде визуализации AST кода, но там то она сама по себе напрашивается.
Из очевидных примеров, всякие UML визуализации ООП иерархий это говно говна, дети в яме с говном плюются говном, дебилка и дебил-генерал, аниме-манга.
Тут вроде не ООП, но пример иллюстративный.
https://www.youtube.com/watch?v=208K8EnSlB0
465 2716077
>>715920

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

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

блоу_джон просто старый гумозей и любит покекать над лолами
466 2716235
В pydantic у меня есть 2 поля. Как сделать так, что если опциональное поле 2 имеет значение, то поле 1 полностью исключается из модели?
467 2716615
>>689729

>и как это исправить?


Скачиваешь PyCharm/VSCode/SublimeText/Fleet и работаешь там
468 2716864
>>714606
Очень востребован. Тупо лучший фреймворк для api шлепства. Еще и асинхронный из коробки.
469 2716866
>>710959

>>https://www.online-python.com/SGVgfRE5bP


Что это блять за ужас нахуй.............
470 2716873
>>698955
Вот это диван. Просто жесть.
471 2716877
>>716864
>>716866
>>716873
У нас Милорд, судари. Все по фреймворкам.
473 2716925
>>707636
Ну не убивайти!!1
474 2717074
lst1 = []
lst2 = ['foo','bar']
lst1 = lst2 # >1<
print ("",f"1 :{lst1}",f"2 :{lst2}",sep="\n")
lst2.append('some') # >2<
print ("",f"1 :{lst1}",f"2 :{lst2}",sep="\n")
lst2 = [] # >3<
print ("",f"1 :{lst1}",f"2 :{lst2}",sep="\n")

Аноны смотрите.
1) Я присваиваю первый лист к другому, окда.
2) Потом изменяю один лист, второй тоже меняется потому что это ссылочка, всё ожидаемо
3) Очищаю зачальный лист, а второй лист не меняется. Давно такое поведение сделали. я отчетливо помню что во втором Питухоне если всё вышеперечисленное повторить, то очистятся оба листа.

Вообще это пиздец, мало того что это неявное и очень важное поведение, так оно ещё и из версии в версию меняется. Сегодня у нас ссылочка. завтра не ссылочка, послезавтра гладиолус.
475 2717098
>>717074
Сделай .clear(), тогда очистится. Это ссылка на новый второй список, нет никакого изменения.
476 2717100
>>717098
Алсо, можно полный слайс заменить на пустой список, тогда мутируется.
477 2717108
>>717074
Ты не очищаешь начальный лист, а присваиваешь переменной lst2 ссылку на другой объект [].
lst1 продолжает ссылаться на ['foo', 'bar'].
изображение.png98 Кб, 933x886
478 2717263
пишу на пыньтоне. на кутэ. как сделать, чтобы окно никогда не захватывало фокус? задача: написать некий оверлей, который поверх окна приложения (игры) будет постоянно находиться. и если курсор в игре попадет на этот оверлей, то все нажатия мыши должны продолжать регистрироваться в игре, не переключаясь на фокус окна оверлея. думаю понятно объяснил...

пробовал через widget.setAttribute(Qt.NoFocus) - не работает
пробовал через widget.setWindowFlags(QtCore.Qt.WindowDoesNotAcceptFocus) - не работает

при чем оно как-то странно работает. когда курсор захватывает оверлей, он меняет свою иконку с игровой на системную, при этом объекты в игре при таком наведении все равно выделяются. но если нажать лкм, то взаимодействие с объектом не произойдет, вместо этого фокус переключится на оверлей и фпс в игре просядет (что подтверждает смену фокуса)
479 2717507
Короче как вкотиться в этот ваш питухон, я в программировании не новичок, знаю Go, JS. Хочу писать всякие парсеры, ну и бекенд для веба.
480 2717511
А нахуя в 3.11 сломали обратную совместимость в collections? Ну что за ебалайтунг.
481 2717524
>>717507
Берешь и вкатываешься.
IMG20230531195047.jpg11 Кб, 373x203
482 2717526
Вот скажите мне, синьёры. Вас вообще часто по работе заставляют заниматься всякой математической дрочью, типа рисованием спирали из цифр, всякими решениями комплексных уравнений, теорем Виета, Пуанкаре и т.д.
Матан нужон или хуйня? Можно и без него маркизом стать?
Новая капча, какая ирония.
483 2717561
>>717526
Зависит от конкретной работы, где-то нужно где-то нет. В большинстве мест не нужно. Сеньорство это больше про обширность знаний что бы проект с от проектирования бд и архитектуры до деплоя и сбора метрик довести.
484 2717650
>>717526
Чтобы заниматься, нужно знать, что оно существует, а там уж освежишь память.
Тот же бинарный поиск простенький, но вряд ли ты его сходу придумаешь при решении такой задачи.
485 2717878
>>717526
У меня такая необходимость возникает.
Но я ученый не датассаентист
486 2717949
>>717074

>во втором Питухоне если всё вышеперечисленное повторить, то очистятся оба листа.


Никогда так не было. Возможно, ты путаешь с lst2[:] = []
487 2717961
>>717561
>>717650
То есть, сеньор это в основном тот, кто не может даже банальный дешифратор без подгляделок придумать и написать, но зато знает что нужно делать, чтобы программа делала то, что нужно делать? Я правильно понял? Если так, то я получается тоже уже сеньор.
>>717878
А какой профиль? Я вот тоже, например, получил 5 в четверти по биологии в девятом классе.
488 2718008
какое питон дерьмище ебаное это просто пизда. сколько багов сука в миллиардах пакетов... постоянный блядь какой то wheel сбилдить не может блядь для рандомного пакета. синтаксис дерьма дерьма ебаного. что нибудь да отвалиться. pip слетел надо переустанавливать питона блядь. как это говно вообще взлетело сука нахуй? дегенеративная параша
489 2718010
>>717961

>Я правильно понял?


Если сможешь с нуля написать проект выбирая те или иные архитектурные решения и выбор технологий при этом имея достаточно глубокие знания в каждой из затронутых областей, то да, можешь лычку прикрепить.
490 2718011
>>718008
Шинда?
491 2718013
>>718011
шинда. а что на прыщах всего этого нет?
492 2718015
>>718013
Проблем гораздо меньше, как компромисный вариант можно в WSL юзать интрепретатор подключаясь к нему из IDE на шинде.
493 2718019
>>718015
хорошо а с синтаксисом что делать?
494 2718020
>>718019
Воспринимать как сишку без скобок, вообще не вижу проблем с этим, хотя и на говяхе писал и на жабе.
495 2718023
>>718020
нихуя себе ты сравнил. я всю жизнь пишу на cи лайк языках, это говно даже близко не си. оно даже хуже паскаля нахуй
496 2718028
паскаль лучше только потому что там хотя бы begin end есть, тут все как говно размазанное на экране выглядит. код больше 60 строк читать не возможно
497 2718045
Как использовать чертов aioresponses чтобы наконец-то не делать реальные запросы к ресурсу?

Клиент https://pastebin.com/rbvckRyq, использую ClientSession как и рекомендуется без наследования.

Сам тест https://pastebin.com/FwkM053y. Если без mock, то все проходит. С aioresponses получаю

/tests/test_issues.py::test_get_issue_parameters Failed:
[undefined]aiohttp.client_exceptions.ClientConnectionError:
Connection refused: GET /v2/issues/QUEUEONE-1?page=1&perPage=50
get_client = <aio_yatracker.base.BaseClient object at 0x7fc38f5e7ad0>
get_primary_issue_id = 'QUEUEONE-1'
.
Что-то с URL? Потому что он собирается из ClientSession(base_url="https://api.tracker.yandex.net) и endpoint'a в методе, например .get(url="/v2/issues)
498 2718046
>>718023
ну так иди пиши на голанг, там и ценники выше и вакансий больше. А если надо задрачивать машоб и нейронки, то се ля ви
499 2718050
тут чел вкидывает инфу между словом, что аренда видюх для серверов под нейронки окупает видюху за несколько месяцев, есть инфа?

https://www.youtube.com/watch?v=g6G6nbbygX8&t=847s
500 2718067
>>718050
А у тебя есть как монетизировать эти нейронки?
501 2718114
>>717961

>А какой профиль?


Ну как раз-таки биология и химия.
Сейчас еще на сайд-проекте днокла по конструированию какого-то контура отвода тепла иногда что-то делаю. Но там довольно простые расчеты.
502 2718125
>>718008
Мусіш разумець, што wheel - гэта бінарны пакет. Калі не супадае аперацыйная сістэма верагодна несумяшчальнасць.
503 2718127
>>718028
Паспрабуй ruby - гэта як Пітон, але мае end.
504 2718416
import pygame
from time import sleep

pygame.init()
pygame_icon = pygame.image.load('images/3952554 (2).bmp')
pygame.display.set_icon(pygame_icon)

screen = pygame.display.set_mode((1700,850))
pygame.display.set_caption("game")
player = pygame.Surface((100,100))
player.fill('Red')
player_cords_x = 200
player_cords_y = 200

running = True
while running:
sleep(0.05)
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
pygame.quit()
elif pygame.event == pygame.KEYDOWN:
if pygame.event == pygame.K_w:
player_cords_x =+ 10
elif pygame.event == pygame.K_s:
player_cords_x =- 10
elif pygame.event == pygame.K_d:
player_cords_y =+ 10
elif pygame.event == pygame.K_2:
player_cords_y -= 10
screen.blit(player, (player_cords_y,player_cords_x))

не работает управление
504 2718416
import pygame
from time import sleep

pygame.init()
pygame_icon = pygame.image.load('images/3952554 (2).bmp')
pygame.display.set_icon(pygame_icon)

screen = pygame.display.set_mode((1700,850))
pygame.display.set_caption("game")
player = pygame.Surface((100,100))
player.fill('Red')
player_cords_x = 200
player_cords_y = 200

running = True
while running:
sleep(0.05)
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
pygame.quit()
elif pygame.event == pygame.KEYDOWN:
if pygame.event == pygame.K_w:
player_cords_x =+ 10
elif pygame.event == pygame.K_s:
player_cords_x =- 10
elif pygame.event == pygame.K_d:
player_cords_y =+ 10
elif pygame.event == pygame.K_2:
player_cords_y -= 10
screen.blit(player, (player_cords_y,player_cords_x))

не работает управление
16506855894880.png2 Мб, 1200x1500
505 2718490
>>718416
Из кода, который вы предоставили, я вижу несколько проблем:

Вам необходимо добавить отступы (табуляцию) для вложенных блоков кода, таких как циклы while и условные операторы if. В Python отступы играют важную роль в определении области действия блока кода.

В строке pygame.event == pygame.KEYDOWN и в последующих строках сравнение не выполняется правильно. Вместо pygame.event вы должны использовать event.type.

При проверке нажатия клавиш вместо pygame.event == pygame.K_w вы должны использовать event.key == pygame.K_w и так далее для остальных клавиш.

Операторы +=, -= используются неверно в строках изменения координат player_cords_x и player_cords_y. Правильные операторы для увеличения и уменьшения значения переменной на определенную величину это += и -=.
15563284609450.jpg131 Кб, 1005x742
506 2719127
помогите затайпхинтить функцию, которая принимает тупль классов и возвращает тупль инстансов этих классов
вот нерабочий пример: https://www.online-python.com/1OEmUS3pq0

сейчас я делаю так

> а, б, в = функция(...)



потом насираю пустыми аннотациями

> а: Пук


> б: Среньк



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

> а.[пук_айди объем_пука химический_состав автор_мелодии ...]



в 3.11 ввели для этих целей TypeVarTuple, а понятно объяснить не объяснили. пайчарм только что обновил на 2023.1.2 (билд от May 17, 2023)
507 2719162
Аноны, вот я добавляю элемент в сет set.add("some")

Это действие под капотом сначала проверяет наличие элемента или просто выполняет и всё?
508 2719240
>>719162
Метод set.add(element) использует хеширование для проверки наличия элемента во множестве. Внутри множества в Python используется хэш-таблица (hash table), которая позволяет эффективно проверять наличие элемента и добавлять новые элементы.

Вкратце, хэш-таблица является структурой данных, которая ассоциирует каждый элемент с его хэш-значением. При вызове метода add, Python вычисляет хэш-значение для элемента element и использует его для определения, в каком слоте хэш-таблицы должен находиться элемент. Затем происходит проверка, есть ли уже элемент с таким же хэш-значением в этом слоте. Если элемент уже присутствует, то он считается дублирующимся и не добавляется повторно.
509 2719295
>>717263
Я не знаю, как там в ваших модных кьюти, но в ткинтере при инициализации фрейма есть параметр takefocus=False (или 0). Учитывая, что фреймворки не сильно отличаются, почитай документацию.
510 2719296
>>717511
Пример приведи, всмысле сломали? Сейчас запустил проект на 3.6, в котором много коллекций и всё деплоится вполне.
Стикер320x320
511 2719373
Аноны.
Сложнейший вопрос, уровня синьора тимлида или даже выше. И я
совершенно серьезно.

Создаем ярлык файла. Он же .lnk в англоязычной среде это называется не язлык, а shortcut.

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

Сил нет, помогите.
512 2719557
Если я в всл делаю мкдир затем перехожу туда и там пишу к примеру пип инстал <нейм> то куда устанавливается пакет? А если добавить в начало судо?
513 2719570
>>719557
В дсрм и псд, очевидно.
514 2719644
>>719557
без sudo
~/.local/lib/python3./site-packages

с sudo
/usr/lib/python3.
/site-packages

а вообще используй venv
515 2719730
Что там по менеджменту зависимостей в Петухе, нынче?
Для отдельных проектов юзаю поетри и пипенв. Чаще первый. Если задача сильно мелкая, то и venv пойдет.
Но часто возникает нужда пользоваться средой не для какого-то проекта, а для одного типа задач. Тут два варианта - конда и докер. Докер часто оказывается оверкиллом для прикладных задач, ну и в целом в один момент возникает слишком дохрена раздельных проектов, чтобы докером можно было комфортно пользоваться с бухты барахты.
Конда - другая история. Довольно удобное переключение между средми и довольно быстрый запил енвов с нуля с последующей довольно гибкой конфигурацией. Но разрабы конды - сраные дегенераты, которые годами игнорируют проблемы с дебильным разрешением версий. Плюс челики работают крайне халтурно. Мамба кое-как решает проблему, но поскольку является надстройкой над кондой, иногда упирается в те же проблемы.

В общем, анончик, посоветуй чем сейчас принято менеджить проекты и отдельные среды.
516 2720426
Добрый день, кто-нибудь реализовывал ветку комментариев в Django? Мне было бы достаточно всего одной ветки, чтобы внутри родительского комментария можно было делать реплай на другие реплаи, без сдвига.
Но не могу додуматься как это можно сделать.
У меня есть два цикла, в первом цикле я вывожу все родительские комментарии, и для каждого родительского комментария вывожу реплаи на него. Но как рядом с реплаями на комментарии вывести реплаи на реплаи?
{% for comment in post.post_comments.all %}
{{comment}}
{% for reply in comment.replies.all %}
{{reply}}
{% endfor %}
{% endfor %}
вот так схематично выглядит код.
Если есть у кого реализации веток комментариев, может покажете свои, был бы очень рад
517 2720573
class MyClass:
def __init__(self, chtoto):
self.chtoto = chtoto

Подскажите как в классе объявить переменную и присвоить ей значение chtoto?
518 2720588
>>720573

class MyClass:
____chtoto = 'nucuTb'

print(f'1 {MyClass.chtoto}')

MyClass.chtoto = 'KaKoTb'
print(f'2 {MyClass.chtoto}')
519 2720607
>>720588
Так я внутри класса хотел KaKoTb, а ты создал объект и присвоил ему значение.
521 2720695
>>720607
тебе нужно сходить noKaKoTb, собраться с мыслями, понять, что ты хочешь
522 2721042
будет ли ocr работать быстрее, если создать кастомную модель на ограниченном количестве данных? скажем, мне надо распознать текст только в 1 месте, в нем постоянно один и тот же шрифт, один и тот же цвет, один и тот же задний фон.
suzumiyaharuhisuzumiyaharuhinoyuuutsuand1moredrawnbyversesample-0ac40f852183fdde8b05d9a2a826bffa.jpg111 Кб, 850x639
523 2721087
>>686473 (OP)
Всем привет. На работа попросили сделать бота, а я никогда не занимался не то что ботами, а даже простейшим программированием.
Нашел на ютубе уроки по созданию ботов и все вроде норм но тут потребовали чтобы кнопки были прямо в чате.
Поменял ReplyKeyboardMarkup на InlineKeyboardButton и уже обрадовался но эта хуйня не работает.
Можете подсказать как просто кнопки поменять из меню в чат и все?
TypeError: InlineKeyboardMarkup.__init__() got an unexpected keyword argument 'resize_keyboard'
524 2721123
>>720426
Я нашёл решение, если кому интересно, то в цикле где отображаются реплаи я сделал рекурсивный include html файла, куда скопировал код для реплаев, и замкнул рекурсию
525 2721137
Подскажите почему второе меню не открывается

@bot.message_handler(commands=["start"])
def start(message):
markup = types.InlineKeyboardMarkup(row_width=1)
item1 = types.InlineKeyboardButton('Информация 1',callback_data="0")
item2 = types.InlineKeyboardButton('Информация 2',callback_data = "1")
item3 = types.InlineKeyboardButton('Информация 3',callback_data = "2")
item4 = types.InlineKeyboardButton('Информация 4',callback_data = "3")
back = types.InlineKeyboardButton('НАЗАД',callback_data = "4")
markup.add(item1, item2,item3,item4, back)
bot.send_message(message.chat.id,'Меню:',reply_markup = markup)
@bot.callback_query_handler(func=lambda call: True)
def callback(call):
if call.message:
if call.data == '0':
markup = types.InlineKeyboardMarkup(row_width=1)
item1 = types.InlineKeyboardButton('Информация 1', callback_data="0")
item2 = types.InlineKeyboardButton('Информация 2', callback_data="1")
item3 = types.InlineKeyboardButton('Информация 3', callback_data="2")
item4 = types.InlineKeyboardButton('Информация 4', callback_data="3")
back = types.InlineKeyboardButton('НАЗАД', callback_data="4")
markup.add(item1, item2, item3, item4, back)
if call.data == 1:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
if call.data == 2:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
if call.data == 3:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
if call.data == 4:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
bot.polling(none_stop=True)
525 2721137
Подскажите почему второе меню не открывается

@bot.message_handler(commands=["start"])
def start(message):
markup = types.InlineKeyboardMarkup(row_width=1)
item1 = types.InlineKeyboardButton('Информация 1',callback_data="0")
item2 = types.InlineKeyboardButton('Информация 2',callback_data = "1")
item3 = types.InlineKeyboardButton('Информация 3',callback_data = "2")
item4 = types.InlineKeyboardButton('Информация 4',callback_data = "3")
back = types.InlineKeyboardButton('НАЗАД',callback_data = "4")
markup.add(item1, item2,item3,item4, back)
bot.send_message(message.chat.id,'Меню:',reply_markup = markup)
@bot.callback_query_handler(func=lambda call: True)
def callback(call):
if call.message:
if call.data == '0':
markup = types.InlineKeyboardMarkup(row_width=1)
item1 = types.InlineKeyboardButton('Информация 1', callback_data="0")
item2 = types.InlineKeyboardButton('Информация 2', callback_data="1")
item3 = types.InlineKeyboardButton('Информация 3', callback_data="2")
item4 = types.InlineKeyboardButton('Информация 4', callback_data="3")
back = types.InlineKeyboardButton('НАЗАД', callback_data="4")
markup.add(item1, item2, item3, item4, back)
if call.data == 1:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
if call.data == 2:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
if call.data == 3:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
if call.data == 4:
bot.send_message(call.message.chat.id, 'Вот файл с базой данных')
bot.polling(none_stop=True)
526 2721163
nick="Anonym"
if not 'hui' and not 'pizda' in nick:
print("true")

Почему условие не выполняется?
527 2721244
>>721163
Потому что and выполняется последним
528 2721245
>>721163
Потому что not 'hui' = False. Учись правильно формулировать логические выражения.
529 2721254
>>721244
И что это значит?
Как правильно?
530 2721268
>>721254
not huy in kick and nit pizda in nick
531 2721272
>>721268
Спасибо братик
image.png12 Кб, 425x358
532 2721549
пришёл к вам с с#
накидал гуй
как выводить числа? через псевдонимы?
534 2731098
>>688779
Далбаеб, это белорусский
Тред утонул или удален.
Это копия, сохраненная 22 июля 2023 года.

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

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