Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> class 
:(
    Опции темы
YahоО
Дата 30.6.2023, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 198
Регистрация: 11.6.2015

Репутация: нет
Всего: 1



"Создание нового класса создает новый тип объекта, позволяя создавать новые экземпляры этого типа. К каждому экземпляру класса могут быть прикреплены атрибуты для поддержания его состояния."
Ожидаемое понимание этой цитаты - каждый новый экземпляр класса имеет незамутненное чистое самостоятельное определение атрибутов, значение атрибутов не унаследованы ни от чего бы то ни было, если это не делать специально и целенаправленно.
В действительности все наеборот))  :

Код

class am:
    def __init__(self,p=[]): 
        self.p = p
    def d(self, a):
        self.p.append(a)
        print(self.p)        

am1=am();  am1.d(1)
am2=am();  am2.d(2)

print()    
am3=am([]);am3.d(3)

При создании второго экземпляра у него автоматически появляются качества предыдущего экземпляра. 
А если уж очень хочется получить точно "чистый" экземпляр, то приходится указывать отдельно например так am3=am([]). Может это у меня только такой неправильный python? или так и должно быть?


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0964 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.