从右到左和从左到右打印得很好
Right-to-Left and Left-to-Right printed nicely
我希望它生成单词旁边的数字,以便我可以要求用户使用相应的数字 select 该单词。
这是我的代码
alt_words = hlst
loopnum = 8
for i in range(loopnum):
if i < len(alt_words):
print('{0}. {1:<20}'.format((i+1), alt_words[i]), end =' ')
if i == 0:
print('', end=' ')
if i + 9 <= len(alt_words):
print('{0}. {1:<20}'.format((i+9), alt_words[i+8]), end =' ')
if i + 17 <= len(alt_words):
print('{0}. {1:<20}'.format((i+17), alt_words[i+16]), end=' ')
print('\n'+'-'*80)
它产生这个
每行的第一个数字打印在左边,单词打印在右边,而其余数字和单词打印 RTL。似乎一旦 python 开始在 LTR 行上打印,它就可以切换到 RTL,但不能从 RTL 返回到 LTR。请注意,每行的第二组数字的右边是如何打印句点的。
它工作得很好,英文单词也很好看:
我猜测解决方法可能是将数字放在单词后面,但我认为一定有更好的方法。
在每个希伯来语单词的开头放置一个从右到左的嵌入字符u'\u202B'
,以及一个流行方向格式字符,u'\u202C'
,在每个单词的末尾。
这会将希伯来语单词作为 LTR 文档中的 RTL 部分分开。
(请注意,虽然这会产生正确的输出,但您还依赖于您所在的终端应用程序 运行 此脚本是否已正确实施 Unicode Bidirectional Algorithm。)
参见Bi-directional (BiDi) layout implementation in pure python。
安装:
pip install python-bidi
用法示例:
from bidi.algorithm import get_display
print(get_display('LTR text with RTL text (טקסט לדוגמא) will be printed correctly'))
如果您使用的是 Django,还可以使用以下包:
http://pypi.python.org/pypi/django-bidi-utils
我希望它生成单词旁边的数字,以便我可以要求用户使用相应的数字 select 该单词。
这是我的代码
alt_words = hlst
loopnum = 8
for i in range(loopnum):
if i < len(alt_words):
print('{0}. {1:<20}'.format((i+1), alt_words[i]), end =' ')
if i == 0:
print('', end=' ')
if i + 9 <= len(alt_words):
print('{0}. {1:<20}'.format((i+9), alt_words[i+8]), end =' ')
if i + 17 <= len(alt_words):
print('{0}. {1:<20}'.format((i+17), alt_words[i+16]), end=' ')
print('\n'+'-'*80)
它产生这个
每行的第一个数字打印在左边,单词打印在右边,而其余数字和单词打印 RTL。似乎一旦 python 开始在 LTR 行上打印,它就可以切换到 RTL,但不能从 RTL 返回到 LTR。请注意,每行的第二组数字的右边是如何打印句点的。
它工作得很好,英文单词也很好看:
我猜测解决方法可能是将数字放在单词后面,但我认为一定有更好的方法。
在每个希伯来语单词的开头放置一个从右到左的嵌入字符u'\u202B'
,以及一个流行方向格式字符,u'\u202C'
,在每个单词的末尾。
这会将希伯来语单词作为 LTR 文档中的 RTL 部分分开。
(请注意,虽然这会产生正确的输出,但您还依赖于您所在的终端应用程序 运行 此脚本是否已正确实施 Unicode Bidirectional Algorithm。)
参见Bi-directional (BiDi) layout implementation in pure python。
安装:
pip install python-bidi
用法示例:
from bidi.algorithm import get_display
print(get_display('LTR text with RTL text (טקסט לדוגמא) will be printed correctly'))
如果您使用的是 Django,还可以使用以下包: http://pypi.python.org/pypi/django-bidi-utils