2016-10-17 3 views
1

У меня с трудом выводится формат в электронной таблице с помощью xlsxwriter. У меня есть четыре ключа.Как добавить список в xlsxwriter?

worksheet.write('A1', 'Provider Name', bold) 
worksheet.write('A2', 'Description', bold) 
worksheet.write('A3', 'Number of Store', bold) 
worksheet.write('A4', 'City', bold) 

Я хочу, чтобы иметь возможность писать несколько имен провайдеров, которые находятся в моем цикле for, в следующий столбец. Что-то вроде этого.

Я соскабливаю эти значения; и вот как я это делаю.

for td in mainWrapper: 
     provider_name = td.findAll('td')[0].find('h4').text.strip() 
     description = td.findAll('td')[0].find('p', attrs={'class':'desc'}).text.strip() 
     number_of_store = td.findAll('td')[2].text 
     city = td.findAll('td')[-1].text 

Как установить каждый из этих элементов в мой xlsxwriter. Я хочу, чтобы мой вывод выглядел примерно так. Поэтому я хочу иметь возможность добавлять несколько имен поставщиков, описание, number_of_store и city в каждом новом столбце.

Example output format

+0

Почему вы неоднократно называя FindAll для тех же элементов? –

ответ

0

Вы можете использовать write_row() (или write_column()) писать списки на одном дыхании:

# Some sample data. 
data = ('Foo', 'Bar', 'Baz') 

# Write the data to a sequence of cells. 
worksheet.write_row('A1', data) 

# The above example is equivalent to: 
worksheet.write('A1', data[0]) 
worksheet.write('B1', data[1]) 
worksheet.write('C1', data[2]) 
Смежные вопросы