Найти - Пользователи
Полная версия: Поясните пример из книги Лутца
Начало » Python для новичков » Поясните пример из книги Лутца
1
ankane
В книге приведен пример :

def gatherAttrs(self):
		attrs = []
		for key in sorted(self.__dict__):
			attrs.append('%s=%s)'%(key,getattr(self,key)))
		return ','.join(attrs)

почему в этом примере работает join для списка к строке получается присоединить список ?
vkopey
Не для списка, а для строки:
',' - строка
attrs - список
ankane
В чем разница тогда в примере из книги, который работает, и вот этим примером, который не работает?

>>> 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
vkopey
123 - целое (int), а можно сцеплять только строки (str)
mironich
join ожидет, список только из строк, у вам аж три типа в списке, int, str, bool.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB