Python 错误地打印包含标点符号的阿拉伯文本,尽管它似乎已正确存储

Python prints Arabic text that includes punctuation incorrectly although it seems to be correctly stored

打印包含 Python 中标点符号的阿拉伯文本时出现奇怪的行为。

示例:

word_1 = "...واحد"
word_2 = "اثنان"
word_list = [word_1, word_2]
print(word_list)

前面代码的输出是['...واحد', 'اثنان'],但正确的输出应该是['واحد...', 'اثنان']。这个问题似乎只在我打印输出时才存在。但是,当我检索第一个索引时,我看到了正确的形式。所以 word_list[0] 的输出是 ...واحد 这是正确的。

问题是我想在最后向用户打印一些东西,所以我想正确地打印输出。因此,我希望输出为 ['واحد...', 'اثنان'].

如有任何帮助,我将不胜感激。提前谢谢你。

只是因为python是从左到右打印 如果您复制输出并在从右到左的环境中粘贴,您将看到这是正确的(例如粘贴到记事本中并按 Right-CTRL+Right-Shift 将记事本更改为从右到左,您将看到您的输出是没有问题) 这是从左到右打印阿拉伯语输出的 IDE 问题

编辑: 您正在写入 excel,应该使用此代码将段落方向更改为 RTL

workbook.add_format({'reading_order': 2})

您可以将 reading_order 设置为 2 以将段落方向从 LTR 更改为 RTL