首页 > 其他 > 详细

输出一定范围unicode对应符号

时间:2019-05-11 20:27:01      阅读:156      评论:0      收藏:0      [点我收藏+]

 

#本程序没有考虑对0x的处理,请勿输入,直接输入16进制位即可
begin = input("起始点:")
end = input("结束点:")

b_int0 = 0
e_int0 = 0

b_len = len(begin)

e_len = len(end)

dit0 = [a,b,c,d,e,f]
dit1 = [A,B,C,D,E,F]
dit = dit0[:] + dit1[:]
if begin>end or begin == end:                           #筛选条件,待补充,有漏洞,如‘FF’与‘1FF’
    print("error!!")
else:
     for i in range(b_len):                                 #按照0x56 = 5*16+6的思路进行逐位运算
         if begin[i] in dit:
             for j in range(0,6,1):
                 if begin[i] == dit0[j]:                    #此处分两词典只是单纯适应原程序
                     b = 10 + j
                 if begin[i] == dit1[j]:                   #16进制有A~F,应分开筛选
                     b = 10 + j                                             
         elif int (begin[i]) <= 9:                          
                 b = int (begin[i])
         b_len = b_len-1                                    #此处是为了降低运算位,从效果上看并不影响前面的range(b_len)
         b = b*16**(b_len)
         b_int0 += b
     for i in range(e_len):
         if end[i] in dit:
             for j in range(0,6,1):
                 if end[i] == dit0[j]:
                     e = 10 + j
                 if end[i] == dit1[j]:
                     e = 10 + j
         elif int (end[i]) <= 9: 
                 e = int (end[i])
         e_len = e_len-1 
         e = e*16**(e_len)
         e_int0 += e
for i in range(b_int0,e_int0+1,1):
    print(chr(i))       

 

附:下列转载自:https://blog.csdn.net/gywtzh0889/article/details/71083459

技术分享图片

技术分享图片

 

输出一定范围unicode对应符号

原文:https://www.cnblogs.com/mmuxu/p/10849711.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!