我用Python创建了一个字典,但是我遇到了扩展Ascii代码的问题。在Python中使用扩展的Ascii代码
是外币的dictionnary的循环是:(ASCII数128至164:E,A等)
#extented ascii codes
i = 128
while i <= 165 :
dictionnary[chr(i)] = 'extended ascii'
i = i + 1
但是当我尝试使用dictionnary:
>>> dictionnary['è']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: '\xc3\xa8'
我有# - - 编码:utf-8 - - 在python脚本的头文件中。 我试过编码,解码等,但结果总是不好。
要了解发生了什么,我已经试过:
>>> ord('é')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: ord() expected a character, but string of length 2 found
和
>>> ord(u'é')
233
我'以ord(u'é')相混淆,因为 'E' 是延长数130 ascii表,而不是233.
据我所知,扩展ascii代码包含“两个字符”,但我不明白如何解决与dictionnary的问题?
在此先感谢! :-)
有“扩展ASCII”没有这样的事。有很多编码(Windows中的cpXXXX,latinXX,iso-8859-XX和现实世界中的其他编码),其中247可以表示不同的东西。 – glglgl
扩展Ascii是128范围内的字符。 Ascii = 0-127,扩展Ascii = 128-255。这可以追溯到60年代和70年代。现在它不是重要的,除了它的残留效果,比如你不能打印超过128的字符,但你可以少于128.日期返回到哑终端。 –