python中內置函數ord()返回字符串的ASCII數值實例詳解

常用 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

到此這篇關於python 中內置函數ord()返回字符串的ASCII數值的文章就介紹到這瞭,更多相關python內置函數ord()ASCII數值內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: