Работа с csv формирование таблиц Python

Час добрый! Подскажите пожалуйста как можно сформировать следующую таблицу при помощи Python?

Вижу примерно так (сама таблица):

            user_dump = {
                "Channel": title,
                "About": description,
                "Links": {
                    "link#1",
                    "link#2",
                },

                "video_links": {
                    "link#1",
                    "link#2",
                },

                "data": {
                    "data#1"
                    "data#2"
                },
                "video_description": {
                    "description#1"
                    "description#2"
                }
            }

Дальше ее просто наполнять на каждом новом проходе по каналам. Единственный вопрос, как записать список ссылок, чтобы в таблице они были каждая в новой строке, а не все в одной?


Ответы (1 шт):

Автор решения: MaxU

По-моему, проще всего здесь будет воспользоваться модулем Pandas.

Сначала надо будет подготовить данные в виде списка списков, чтобы получилась таблица:

data = [
  ["channel_name_1", "channel_description_1", "video1_link", "video1_date", "video1_desc"],
  ["channel_name_1", "channel_description_1", "video2_link", "video2_date", "video2_desc"],
  ["channel_name_1", "channel_description_1", "video3_link", "video3_date", "video3_desc"],
  ["channel_name_2", "channel_description_2", "video1_link", "video1_date", "video1_desc"],
  ["channel_name_2", "channel_description_2", "video2_link", "video2_date", "video2_desc"],
]

после этого можно создать Pandas DataFrame:

import pandas as pd

df = pd.DataFrame(data, columns=["channel","chnl_desc","video_link","video_date","video_desc"])

результат:

In [141]: df
Out[141]:
          channel              chnl_desc   video_link   video_date   video_desc
0  channel_name_1  channel_description_1  video1_link  video1_date  video1_desc
1  channel_name_1  channel_description_1  video2_link  video2_date  video2_desc
2  channel_name_1  channel_description_1  video3_link  video3_date  video3_desc
3  channel_name_2  channel_description_2  video1_link  video1_date  video1_desc
4  channel_name_2  channel_description_2  video2_link  video2_date  video2_desc

далее этот DataFrame можно сохранить в Excel файл:

df.set_index(["channel","chnl_desc"]).to_excel("result.xlsx")
→ Ссылка