如何求ascii字符的unicode内码--高手请进,急!!!

如何求ascii字符的unicode内码--高手请进,急!!!

ascii字符都有对应的unicode内码,比如
>>> print u'\u0061'
a
>>> print u'\u0062'
b

怎么能够将ascii转换成unicode内码呢?
unicode('a')

与u'\u0061'一样。
>>> unicode('a')
u'a'
>>>
你说的这个办法是不行的,我已经找到了办法
if ord(i)<=127:
      tmp=str(hex(ord(i))).replace("0x","00")
u'\u0061'只是一种表示,比如:

[Copy to clipboard] [ - ]
CODE:
>>> u'\u0061' == u'a'
True

说明两者是相同的。
问题是我就是需要获得这种表示,如何知道‘a’对应的就是0061,‘?’ 对应多少,你怎么求出
可以先用ord()求出ascii对应的10进制数字,然后转换成16进制,就是unicode的内码
u'a'也是它的内码啊。这是两种不同的内码表示,一种是使用字符,一种是使用数字。而你的方法得出来根本不是一个unicode呀,它是一个字符串。那你的问题应该是想得到一个字符串的表示,而不是真正的unicode。

为什么一定要数字形式的内码呢?可以这样:

[Copy to clipboard] [ - ]
CODE:
>>> print "u'\\u%04x'" % ord(a)
u'\u0061'

我有特殊的需要,必须取得ascii字符的unicode的数字表示的内码,并把它转换成可打印的4个数字

楼主有点可爱
gbkSrc = "中国";
ucsSrc = unicode(gbkSrc,"gbk");
        print ucsSrc;
        for i in range(len(ucsSrc)):
                print ucsSrc +"=>" + str(hex(ord(ucsSrc)));

==============Result==================
中=>0x4e2d
国=>0x56fd
==============Result==================

是否满足了?


2年之后,我看到了这个帖子;我1年前才开始Python之旅...

生命过的真快.