Решено - TypeError: sequence item 0: expected string

Автор: Igor Kirsanov

При объединении списка через join может возникнуть ошибка вида

TypeError: sequence item 0: expected str instance, Tag found

или

TypeError: sequence item 0: expected string, int found

Причина - string.join соединяет только строки, не числа и не теги, необходимо привести значения к строке.

Решение: используем генератор (generator) приводя каждый элемент списка к строке

values = ','.join(str(v) for v in value_list)

 

пример из практики со значениями из BeautifulSoup4

doc = ''.join(str(v) for v in soup.find("div", "content-boxed").find_all("p"))