我刚刚从某人(https://paste.villavu.com/show/2991/)中找到了一组我从未见过的奇怪字符(字符用空格隔开)。该人说,来自该字符集的一个字符可用于在Twitch,Discord等中将一个人的姓名字段留空,因此它们将像没有名字一样显示。
我试图通过使用Python的ord()
来弄清楚这些字符的真正含义。但是我得到了TypeError: ord() expected a character, but string of length X found
,尽管我只为ord()
参数输入了1个字符,而且一切似乎都有效。
我要从该字符集中提取一个字符,并尝试将其放入ord()
>>> ord(' ')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: ord() expected a character, but string of length 3 found
然后我继续假设奇怪的char是一组char。
>>> ' '[0]
'\ufeff'
>>> ' '[1]
' '
>>> ' '[2]
'\ufeff'
根据我发现的\ufeff
是字节顺序标记(来自here)。但这对我来说还是没有意义的,尤其是关于那些字符如何打包在一起的问题,因此看起来就像我计算机中的一个字符一样。
以及为什么某些平台将其视为有效值(例如名称)。
有人可以向我解释一下吗?