python内置函数ord()ASCII数值
m0_46483236 人气:0常用 ASCII 码表对照表:
注意如下几点:
0-9:48-57A-Z:65-90a-z:97-122
ord()函数介绍:
ord() 函数是 chr() 函数(对于 8 位的 ASCII 字符串)的配对函数,它以一个字符串(Unicode 字符)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值。
>>> ord('0') 48 >>> ord('A') 65 >>> ord('a') 97
应用实例:
ord()函数的一个应用场景就是,利用哈希表解决字母异位词问题。
利用ord()函数求解每个字母的ASCII数值,再利用每个字母和字母a之间的差值,将26个小写英文字母映射到下标分别为0-25的数组上,数组中存放的是每个字母的数目。
例如:
class Solution(object): def findAnagrams(self, s, p): """ :type s: str :type p: str :rtype: List[int] """ result = [] record_s = [0]*26 record_p = [0]*26 if len(s) < len(p): return result for i in range(len(p)): record_s[ord(s[i])-ord('a')] += 1 record_p[ord(p[i])-ord('a')] += 1 if record_s == record_p: result.append(0) for i in range(len(s)-len(p)): record_s[ord(s[i])-ord('a')] -= 1 record_s[ord(s[i+len(p)])-ord('a')] += 1 if record_s == record_p: result.append(i+1) return result
加载全部内容