Форум сайта python.su
0
В книге приведен пример :
def gatherAttrs(self): attrs = [] for key in sorted(self.__dict__): attrs.append('%s=%s)'%(key,getattr(self,key))) return ','.join(attrs)
Отредактировано ankane (Янв. 21, 2013 22:48:12)
Офлайн
3
Не для списка, а для строки:
',' - строка
attrs - список
Офлайн
0
В чем разница тогда в примере из книги, который работает, и вот этим примером, который не работает?
>>> a='231231' >>> b=[123,'zxc',True] >>> b [123, 'zxc', True] >>> a.join(b) Traceback (most recent call last): File "<pyshell#19>", line 1, in <module> a.join(b) TypeError: sequence item 0: expected str instance, int found
Офлайн
3
123 - целое (int), а можно сцеплять только строки (str)
Отредактировано vkopey (Янв. 21, 2013 22:55:43)
Офлайн
2
join ожидет, список только из строк, у вам аж три типа в списке, int, str, bool.
Отредактировано mironich (Янв. 21, 2013 22:54:53)
Офлайн