Как использовать метод .copy() подкласса объекта списка в Python 2.x? [дубликат] ⇐ Python
-
Гость
Как использовать метод .copy() подкласса объекта списка в Python 2.x? [дубликат]
Я пытаюсь использовать метод .copy() в подклассе списка, но Python 2 сообщает, что метод copy() не существует.
класс MyList(список): проходить мой список = МойСписок() мой список.добавление(1) mylist.append("два") print(str(мойсписок[0]) + " " + мойсписок[1]) мойсписок2 = мойсписок.копия() mylist2.append("С") print(str(mylist2[0]) + " " + mylist2[1] + " " + mylist2[2]) Результат Python 2.6:
> python foo.py 1 два Traceback (последний вызов последний): Файл «foo.py», строка 48, в мойсписок2 = мойсписок.копия() AttributeError: объект «MyList» не имеет атрибута «копия». Результат Python 3.11:
1 два 1 два С (Пожалуйста, не говорите мне просто перейти на Python 3; у нас есть свои причины.)
Примечание. Хотя это и похоже, это не дубликат этот вопрос, потому что этот вопрос задается и на него дается ответ в контексте Django, а это прямой Python. Кроме того, предлагаемый ответ на этот вопрос не такой полный, как принятый здесь ответ.
Я пытаюсь использовать метод .copy() в подклассе списка, но Python 2 сообщает, что метод copy() не существует.
класс MyList(список): проходить мой список = МойСписок() мой список.добавление(1) mylist.append("два") print(str(мойсписок[0]) + " " + мойсписок[1]) мойсписок2 = мойсписок.копия() mylist2.append("С") print(str(mylist2[0]) + " " + mylist2[1] + " " + mylist2[2]) Результат Python 2.6:
> python foo.py 1 два Traceback (последний вызов последний): Файл «foo.py», строка 48, в мойсписок2 = мойсписок.копия() AttributeError: объект «MyList» не имеет атрибута «копия». Результат Python 3.11:
1 два 1 два С (Пожалуйста, не говорите мне просто перейти на Python 3; у нас есть свои причины.)
Примечание. Хотя это и похоже, это не дубликат этот вопрос, потому что этот вопрос задается и на него дается ответ в контексте Django, а это прямой Python. Кроме того, предлагаемый ответ на этот вопрос не такой полный, как принятый здесь ответ.
Мобильная версия