'da bir liste, dict veya nesne koleksiyonu nasıl yazdırılır __str__(self)
'u uygulayan bir python sınıfını yazdım, ancak bu sınıfın örneklerini içeren bir listeyi yazdırdığımda, <__main__.DSequence instance at 0x4b8c10>
varsayılan çıktısını aldım. Bunun işe yaraması için uygulamaya koymam gereken başka bir sihirli işlev var mı yoksa özel bir yazdırma işlevi mi yazmalıyım?Python
İşte sınıfı var:
class DSequence:
def __init__(self, sid, seq):
"""Sequence object for a dummy dna string"""
self.sid = sid
self.seq = seq
def __iter__(self):
return self
def __str__(self):
return '[' + str(self.sid) + '] -> [' + str(self.seq) + ']'
def next(self):
if self.index == 0:
raise StopIteration
self.index = self.index - 1
return self.seq[self.index]
manuel Mümkünse, bu yeniden yaratmak için kullanılabilecek geçerli bir Python ifadesi gibi görünmelidir" diyor uyan değer mi Aynı değere sahip nesne (uygun bir ortam verilir). " Yani DSequence (1, 'GTTAC') gibi bir şey? –
Bu iyi bir fikir, evet. –
Tamam, ben de bu http://stackoverflow.com/questions/452300/python-object-reprself-should-be-an-expression için yardımınız için teşekkürler. –