Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > Python
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 15.04.2012, 21:23   #1
stasito
 
Регистрация: 09.12.2011
Сообщений: 8
Репутация: 10
По умолчанию Python __str__ problems

Код:
 class Leg(self):
def __init__(self):
                self.armlets = []
        def addArmlet(self,a):
                                if isinstance(a,Armlet):
                                               self.armlets.append(a)
        def removeArmlet(self,a):
                                if isinstance(a,Armlet):
                                               self.armlets.remove(a)
        def displayArmlets(self):
                                for a in self.armlets : print (a)
        def __str__(self):
                        return "Leg has " +str( Armlet.armCount)+ " armlets:"+str(self.armlets)
        
 
                                
class Armlet:
        armCount = 0
        def __init__(self,defaultarmlet =  "HAKOL LETOVA"):
                self.defaultarmlet = defaultarmlet
                Armlet.armCount += 1             
                if ( len (defaultarmlet) < 9 ):
                                               self.defaultarmlet = "HAKOL LETOVA"
                else:
                                                self.defaultarmlet = defaultarmlet                                               
        def __str__(self):
                        return str(self.defaultarmlet)+"."
В классе Leg как сделать чтоб при нажатии print(Ob) (при этом Ob это объект класса Leg) выводился весь массив
Вот что выходит у меня:

c1=Armlet("ASDERFGT")
>>> E=Leg()
>>> E.addArmlet(c1)
>>> print(E)
Leg has 1 armlets:[<__main__.Armlet object at 0x10268bc50>]

Последний раз редактировалось stasito; 15.04.2012 в 21:27. Причина: pravka
stasito вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
problems starting windows. nub' Windows 5 13.01.2011 15:38
Массивы - some problems... Ned_01 Общие вопросы C/C++ 15 31.10.2009 00:42


23:07.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru