【Python】獲取字符串中出現次數最多/少的字符


本節主要實現以下目標:

1、 實現Python獲取字符串中出現次數最多/少的字符

2、存在問題分析與處理

3、優化方案

 


1、實現Python獲取字符串中出現次數最多/少的字符:

 

2、存在問題分析與處理:

    代碼說明:

1、max() 方法返回給定參數的最大值,參數可以為序列。詳細參考菜鳥教程。

2、Python count() 方法用於統計字符串里某個字符出現的次數。可選參數為在字符串搜索的開始與結束位置。詳細參考菜鳥教程。

    代碼存在問題:

issue1、輸入字符串可能是全英文字符,當然也可能是非全英文字符。比如含中文字符、數字字符、特殊字符等等。這種情況下getmaxchar()將有可能不會返回預期值。需要進一步優化。

issue2、getminchar返回的值往往不是預期的值。如上面例子中,預期返回m,實際上返回的值卻是b。

    存在問題根因分析:

issue1、max方法中給定的參數序列為string.ascii_lowercase的執行結果:'abcdefghijklmnopqrstuvwxyz'。在使用count()方法計數時,只能對序列中存在的字符進行數目的統計。

3、優化方案

    優化方案1:先去重,再將去重后的序列作為max、min的參數。

 

case:中文字符串

 

case:全數字字符

 
  

Case:全特殊字符

 

Case:混合字符

 
 


免責聲明!

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



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