Присвойте дополнительный класс переменной в python (показана эквивалентность в R) - PullRequest
0 голосов
/ 29 апреля 2018

В R вы можете сделать что-то вроде этого:

x <- 3
cl <- class(x)
class(x) <- c("abc",cl)

Таким образом, переменная 'x' будет целым числом и будет принадлежать пользовательскому классу 'abc'.

Я хочу сделать то же самое в Python . Моя переменная 'x' должна рассматриваться как целое число и должна также иметь атрибуты пользовательского класса с именем "abc".

1 Ответ

0 голосов
/ 29 апреля 2018

Да, Python поддерживает множественное наследование:

class indigestion():
    def burp(self):
        return " ".join("burp" for _ in range(int(self)))


class int_with_indigestion(int, indigestion):
    pass

class float_with_indigestion(float, indigestion):
    pass

n = int_with_indigestion(13)

print(n ** 2)
print(n.burp())

f = float_with_indigestion(5.3)

print(f ** 2)
print(f.burp())

* ИСПОЛЬЗОВАНИЕ 1005 *

> python3 test.py
169
burp burp burp burp burp burp burp burp burp burp burp burp burp
28.09
burp burp burp burp burp
>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...