0

我已经将一个 DataFrame Column 转换为一个集合,并且我正在尝试使用 * 将值格式化为一个字符串,以便像列表一样解压缩它。但是,它只返回第一个值。

我正在使用 python-docx 根据数据自动创建报告。

此代码选择 DataFrame 的一列,删除空白值并将其转换为一个集合。这个想法是消除重复。下一步使用 format 函数将集合输入到字符串或报告中:

set_unique_statgroup = set(self.internal_df.StatGroup.dropna())

self.document.add_paragraph("{} categories have been found, and they are: {}".format(len(set_unique_statgroup), *set_unique_statgroup)

代码返回以下语句:

“已找到12个类别,分别是:温度”

我希望它会显示集合中的所有项目:

“已找到 12 个类别,它们是:温度、情绪、时间 (...)”

4

1 回答 1

0

我找到了一种解决方法,可能不是最pythonic:

使用循环和 add_run 函数为集合中的每个项目添加到段落中:

for item in set_unique_statgroup:
    p.add_run("{}".format(item))

p.add_run(".")

如果有人有更紧凑/pythonic的方式,请随时发布。

于 2019-06-21T10:05:51.763 回答