电报无法正确显示空格

问题描述 投票:0回答:1

我用 Python 创建了一个文本,它在终端中以其真实形状正确显示。但是,当我使用 Telegram API 将其发送到我的频道时,空白大小未正确显示。这是终端中文本的图片,另一张是 Telegram 中的。

我使用这个Python代码来生成结果:

for name, price in prices:
      text += f"{name:<20} {price}\n"
print(text)

preview in terminal preview in telegram

我尝试使用U+00A0字符,但没有解决问题。

python telegram telegram-bot
1个回答
0
投票

终端通常使用等宽字体,其中每个字符占用相同的空间,而 Telegram 使用可变宽度字体,其中调整字符大小以提高可读性。例如,您可以看到

Mill
在示例中如何与
Gol
占据相同的空间,即使它少了一个字符。

您可以在电报机器人中使用代码块的 markdown 语法(用 ``` 括起来)来达到相同的效果。

© www.soinside.com 2019 - 2024. All rights reserved.