ord()
返回unicode代码,我需要ascii。
>>> s = "Йог" #cyrillic
>>> for char in s:
... print(ord(char))
...
1049 #unicode
1086 #unicode
1075 #unicode
我需要ASCII。怎么弄? (下同)
答案 0 :(得分:5)
你不能; ASCII中没有西里尔字符。您显示的图表是许多"extended ASCII"字符集中的一个;具体来说,它似乎是Windows-1251(a.k.a. CP1251)。为了在此编码中获取字符的代码点,您需要首先将字符串编码为CP1251,然后获取结果字节的值:
# Assuming Python 3
s = "Йог".encode('cp1251')
for b in s:
print(b)
答案 1 :(得分:0)
glagolitsa = "А,Б,В,Г,Д,Е,Ё,Ж,З,И,Й,К,Л,М,Н,О,П,Р,С,Т,У,Ф,Х,Ц,Ч,Ш,Щ,Ъ,Ы,Ь,Э,Ю,Я"
Glagolitsa = glagolitsa.split(',')
Glagolitsa
for i in range(len(Glagolitsa)):
char = Glagolitsa[i]
print(ord(char))
glagolitsa = glagolitsa.lower().split(',')
for i in range(len(glagolitsa)):
char = glagolitsa[i]
print(ord(char))
for i in range(1040, 1104):
print(chr(i))