mkone112, почитай внимательно примеры по ссылке. Оно позволяет зарегистрировать разные варианты одной функции в зависимости от типа её первого аргумента. Затем вызываешь "корневую" функцию, и она уже вызовет правильный вариант в зависимости от фактически переданного типа. Довольно ограниченно, но уже полезно.
Если это тебе категорически не подходит (например, нужно позарез чтобы были разные вторые или еще какие аргументы), то тут только один совет. Цепочку ifов обычно можно отрефакторить в список/словарь функций.
InnsmouthFisherman, да что угодно, хоть бы отладочный print(). Элементарную отладку проведи! Я навскидку могу назвать три точки отказа: onClicked() не вызывается когда надо; она вызывается, но условие в if не выполняется; условие в if выполняется, но вызов setText() не даёт эффекта. Тебе нужно понять, с какой из этих трёх проблем ты имеешь дело. А уж как, отладочными принтами, или пошаговой отладкой в твоей среде разработки, или ещё как, дело десятое.
Тааааак. Значит, description - это было не присваивание переменной, а именованный параметр?
Ну ты вообще хоть что-то в питоне понимаешь, или только копипастишь готовый код по кусочкам?
В общем, учи основы языка. Сначала находишь все нужные значения, в т.ч. score_row, а потом уже конструируешь свой Embed.
даник, ну так учись, что тут еще скажешь. И вообще, тебе точно нужно peewee? Для того функционала, который я тут вижу, достаточного голого sqlite3. Реализуй нужное на нём?
Всё-таки чтобы пользоваться ORM-библиотеками типа peewee, нужно иметь представление о том, что они делают под капотом.
novihcok, какая версия питона используется? Если убунта старая, там может быть вообще питон 2.7 по умолчанию - а в нём imput() ведёт себя не так.
И да, в системе может быть установлено более одного интерпретатора питона разных версий.
mkone112, ну гипотетически ты можешь проанализировать вызывающий байткод, посчитать количество STORE_FAST после UNPACK_EX, и вернуть нужное количество значений. Но мороки будет немеряно, так как слишком много вариантов вызова твоей функции существует.
mkone112, значит, распаковка - не решение. Нужно подойти к решению проблемы с другой стороны.
Если тебе нужен метод, который возвращает разное число значений в зависимости от способа вызова - значит, это должно быть несколько методов. Скажем, приватная реализация, которая возвращает всё, и несколько публичных оберток, которые вызывают реализацию и возвращают только нужное.
Ну или не париться, возвращать namedtuple(), и пусть вызывающий код делает с ним что хочет.
Durilka96, так не копипасти код вслепую, а разберись как он работает. Я же только обущю идею описал.
Класс MyTableRow играет роль frame, и наследуется от класса Frame - значит, вместо frame скорее всего должно быть self.