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
打印包含 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