我正在使用tkinter开发一个跨平台的python GUI应用程序。
我创建了一个带有希伯来语文本的标签,以':‘结尾,但在Windows中,':’被放在字符串的开头:שלום:而不是:שלום。
我甚至尝试按如下方式构造字符串:
hebrewString = 'ש'
hebrewString += 'ל'
hebrewString += 'ו'
hebrewString += 'ם'
hebrewString += ':' 调试,分步在集成开发环境(PyCharm)中显示构造正确的字符串- :שלום。
我知道tkinter没有在Linux上实现BiDi:see this,所以在Linux上我使用的是bidi.algorithm.get_display(hebrewString),而且显示正确。
发布于 2017-11-14 00:31:04
+=操作符将简单地将您指定的字符串附加到您声明的变量之后。
这意味着说:
hebrewString = 'שלום'
hebrewString += ':'等同于说:
hebrewString = 'שלום' + ':'这将返回שלום:。
相反,您可以执行类似以下操作:
hebrewString = 'שלום'
hebrewString = ':' + hebrewString
print(hebrewString)如果您只需运行以下命令:
hebrewString = 'ם'
hebrewString += ':'
print(hebrewString)您将看到Python只是将冒号附加到字符串的末尾,而不是希伯来语中应该的开头。
https://stackoverflow.com/questions/47264288
复制相似问题