我正在研究文本,并从输入文本的左点和从键盘输入的右点。然而,在Python中,它们并没有被同等对待。
'․' == '.'
Out[870]: False
可能的原因是什么,我如何使用键盘重新创建左点?
左边的点是而不是一个句号:它是一个以一个点为首的Unicode字符。
在Python中,您可以使用"u2024"
:
print('u2024')
这个输出:
․
也可以用于比较。
print('․' == 'u2024')
它将输出
True
在这种情况下,我建议使用str.maketrans
:
trans_table = str.maketrans({'․': '.'})
print(trans_table)
# prints `False`
print('․' == '.')
# now prints `True`
print('․'.translate(trans_table) == '.')
# or:
# '․'.replace('․', '.') == '.'
基本上,从机器的角度来看,我们所感知到的字符的视觉表现没有任何意义。
Python比较这两个值的unicode值,它们明显不同。
左边的点是"u2024",而右边的点是" u20e& quot;