python中遍歷字母


今天做leetcode的168題,感覺需要遍歷一下英文字母與數字對應,然后忽然發現 我只會for i in ['A','B',.....]  ,這也太恥辱了~身為初級工程師,我覺得肯定有方法直接可以遍歷出字母,於是從網上查找了一些方法,親測有用~嗚哈哈

  一、list(map(chrrange(ord('a'), ord('z'+ 1)))

    ①map()

    這里的map 是會根據提供的函數對指定序列做映射。

    map(function,iterable,...)

    第一個參數 function 以參數序列中的每一個元素調用 function 函數,返回包含每次 function 函數返回值的新列表。

    比如:def increase(X):

        return X+1

       print(list(map(increase,[1,2,3,4])))

    返回結果為:[2,3,4,5]

    ②ord()

    ord() 函數是 chr() 函數(對於8位的ASCII字符串)或 unichr() 函數(對於Unicode對象)的配對函數,它以一個字符(長度為1的字符串)作為參數,返回對應的 ASCII 數值,或者 Unicode 數值,如果所給的 Unicode 字符超出了你的 Python 定義范圍,則會引發一個 TypeError 的異常。

    返回值是對應的十進制整數。

    比如:print(ord('A'))

    輸入結果為:65

    ③chr()

    chr() 用一個范圍在 range(256)內的(就是0~255)整數作參數,返回一個對應的字符。

    返回值是當前整數對應的ascii字符。

    比如:print(chr(97))

    輸出結果為: a

   所以整體來說,是先將字母通過ord轉化為十進制整數,然后利用map函數 調用chr方法 一一轉化為字母

  二、[chr(x) for in range(ord('A'), ord('Z'+ 1)]

    方法與 一 類似,這個方法是利用推導式,直接將轉化后的十進制整數利用chr()函數生成字母。這里大寫的字母也OK

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM