Каковы варианты использования для наследства класса STR?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Каковы варианты использования для наследства класса STR?

Сообщение Anonymous »

Я в настоящее время изучаю ООП в Python и наткнулся на книгу под названием «Mastering oop от Стивена Ф. Лотта». В этой книге есть класс, который наследует от str , и после исключения наследства класс, похоже, работает так же. Таким образом, мне было интересно, каковы хорошие варианты использования, чтобы унаследовать от str :

Код: Выделить всё

from enum import Enum

class Suit(str,Enum):
Club = "♣"
Diamond = "♦"
Heart = "♥"
Spade = "♠"

cards = [AceCard('A', Suit.Spade), Card('2',Suit.Spade), FaceCard('J',Suit.Spade),]

print([c.suit for c in cards])

[, , ]
Я также узнал, что если кто -то хочет унаследовать от типа str и изменить после. Следует реализовать __new __ статический метод, как в:

Код: Выделить всё

class Suit(str):
def __new__(cls,*args,**kwargs):
return str.__new__(cls,*args,**kwargs)
Однако я не уверен, как можно будет хорошо использовать это наследование.

Подробнее здесь: https://stackoverflow.com/questions/725 ... -str-class
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»