您好,登錄后才能下訂單哦!
這篇文章主要介紹“python怎么解決有序字符數問題”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“python怎么解決有序字符數問題”文章能幫助大家解決問題。
有序字符數
1.1 菜雞解法
from collections import OrderedDict
def ordered_count(input):
counts = OrderedDict()
for char in input:
counts[char] = counts.get(char, 0) + 1
return list(counts.items())
1.2 高手解法1
from collections import OrderedDict, Counter
class OrderedCounter(Counter, OrderedDict):
pass
def ordered_count(seq):
m=OrderedCounter(seq)
return list(OrderedCounter(seq).items())
1.3 高手解法2
from collections import Counter
def ordered_count(input):
return list(Counter(input).items())
1.4 點評
這道題因為要考慮有序,就是按照字符串里面的字符順序,同時要統計字符出現的次數。高手解法1非常巧妙,里面兩個類的繼承,同時繼承了collection 模塊里面的OrderedDict和Counter兩個子類。很秒!
縮寫雙字名稱答案
2.1 高手解法1
def abbrevName(name): return '.'.join(w[0] for w in name.split()).upper()
2.2 高手解法2
abbrevName = lambda name: ".".join(e[0].upper() for e in name.split())
2.3 點評
幾種高手的解法都是利用列表推導列表進行快速處理,然后用字符串自帶upper()函數進行全大寫。建議要熟悉常用的內置函數,比如:
''.lower()''.upper()''.count()''.startswith()''.capitalize()
關于“python怎么解決有序字符數問題”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。