【问题标题】:Python: format string as table in non-monospace fontPython:将字符串格式化为非等宽字体的表格
【发布时间】:2017-07-27 22:26:58
【问题描述】:

我正在开发与 Slack Slash commands 的 Slack Webhooks 集成。我的脚本流程如下:

  1. 从 Slack 获取斜杠命令请求。
  2. 处理数据(以 dict 或 Pandas DataFrame 的形式)
  3. 使用 Slack webhook 回发到频道。

我的响应是一组键:值记录或两列数据框。我想很好地将它们打印到 Slack 中,但是我遇到了格式问题。

  1. 使用 Slack 反引号制作等宽字体的代码块是行不通的,因为我可能有非常大的记录,而 Slack 会在 8000 个字符后修剪字符串。

  2. 打印没有等宽的行,作为纯文本,会导致每行宽度不同的难看列。

我尝试了各种格式化技巧,但无法找到一种使用 Slack API 将响应格式化为两个非常长的列的好方法。我想我正在寻找一个好的库,它可以根据所使用的字体为我格式化字符串。

任何帮助将不胜感激。

【问题讨论】:

    标签: python format slack slack-api monospace


    【解决方案1】:

    Slack 消息并非真正设计用于处理大量结构化数据集。在我个人看来,最好的选择是提供指向网页的链接以显示该数据。

    但是,如果您想在 Slack 中显示数据,我建议您将其上传为纯文本文件。这些可以比 8.000 字符大得多,并且可以使用等宽字体显示,这样您就可以正确格式化它们。

    查看files.upload 并将filetype 设置为text 以在频道中上传和共享文件。

    【讨论】:

    • 这是我尝试各种格式化方式后得出的结论。以为我可能会遗漏一些东西,但似乎 files.upload() 是要走的路。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-15
    • 1970-01-01
    • 2022-06-17
    • 1970-01-01
    • 2021-06-17
    • 2016-11-01
    • 2019-11-28
    相关资源
    最近更新 更多