Size: a a a

2021 February 10

AM

Artem Malyshev in rannts
『Serg』
вот как раз надо нам такое...
Но я смотрю вроде пишут и всякие asyncpg  и uvloop, кишки на cython сделаны.
Да, там это стандартная практика.
источник

KK

Kirill (Cykooz) Kuzm... in rannts
『Serg』
вот как раз надо нам такое...
Но я смотрю вроде пишут и всякие asyncpg  и uvloop, кишки на cython сделаны.
У Cython, по сравнению с тем же Rust, есть небольшое преимущество - не надо ставить компилятор раста, достаточно gcc. Но это конечно же при установке питонячего пакета из исходников. При наличии колёс вообще ничего не надо.
источник

RB

Roman Bolkhovitin in rannts
при наличии колес вообще на разработку наплевать 😆
источник

『Serg』 in rannts
да но дебажить это всё такая боль
источник

『Serg』 in rannts
источник

KK

Kirill (Cykooz) Kuzm... in rannts
『Serg』
да но дебажить это всё такая боль
Поэтому мне кажется, что проще написать расширение на "нормальном" языке (C или Rust), отладить, а потом написать тонкую прослойку для интеграции с питоном.
источник

RB

Roman Bolkhovitin in rannts
Kirill (Cykooz) Kuzminykh
Поэтому мне кажется, что проще написать расширение на "нормальном" языке (C или Rust), отладить, а потом написать тонкую прослойку для интеграции с питоном.
Эм... если это c-extension, то он в питон просто через импорт импортируется. Или ты имеешь ввиду просто какую-то so-шку, которая потом из питона дергается?
источник

『Serg』 in rannts
Roman Bolkhovitin
Эм... если это c-extension, то он в питон просто через импорт импортируется. Или ты имеешь ввиду просто какую-то so-шку, которая потом из питона дергается?
ага, так и есть  либа которую ты просто импортишь
источник

DS

Denis Skiba in rannts
『Serg』
у тебя класс наверно от чего то наследоваться должен?
то что описано в методах, ни как не вяжется с тем что объявлено выше класса. Откуда должны взяться методы у self?
ОК, а тут что не так? Первый setValue (5) срабатывает, второй (15) - нет
источник

DS

Denis Skiba in rannts
Так, стоп. Кажется, сообразил
источник

『Serg』 in rannts
Denis Skiba
ОК, а тут что не так? Первый setValue (5) срабатывает, второй (15) - нет
ну тут без дебага не разберешься, втыйкай брейк-поинт и вперёд..
источник

RB

Roman Bolkhovitin in rannts
『Serg』
ну тут без дебага не разберешься, втыйкай брейк-поинт и вперёд..
- Почему функция не работает?
прошло два часа...
- А, так я же ее не вызываю
источник

DS

Denis Skiba in rannts
Roman Bolkhovitin
- Почему функция не работает?
прошло два часа...
- А, так я же ее не вызываю
Мне это удалось понять за 3 минуты)
источник

RB

Roman Bolkhovitin in rannts
Это обнадеживает
источник

『Serg』 in rannts
Да и перестань называть методы как будто ты только что из js сбежал
источник

RB

Roman Bolkhovitin in rannts
『Serg』
Да и перестань называть методы как будто ты только что из js сбежал
Сдается мне pyQT это просто древнее зло. В твистеде кэмел кейс, в ткинтере, да даже в юниттесте
источник

『Serg』 in rannts
источник

KK

Kirill (Cykooz) Kuzm... in rannts
Roman Bolkhovitin
Эм... если это c-extension, то он в питон просто через импорт импортируется. Или ты имеешь ввиду просто какую-то so-шку, которая потом из питона дергается?
Да, если специально оформленная so-шка, то можно импортировать в питон.
источник

DS

Denis Skiba in rannts
Пытаюсь я получить чисто из spinBox'а и что-то с ним сделать. QtDesigner уверяет, что этот виджет хранит данные в int. Так что

mf = str(self.ui.spinBox.value)

Но в mf вписывается <built-in method value of QSpinBox object at 0x7f3647098790> В чём дело-то?
источник

RB

Roman Bolkhovitin in rannts
Denis Skiba
Пытаюсь я получить чисто из spinBox'а и что-то с ним сделать. QtDesigner уверяет, что этот виджет хранит данные в int. Так что

mf = str(self.ui.spinBox.value)

Но в mf вписывается <built-in method value of QSpinBox object at 0x7f3647098790> В чём дело-то?
В том что value это метод? 🤷‍♂
источник