
兄弟们看下最后一题的代码,可以解释解释
str = input("输入包含英文的字符串: ")
str = str.lower() # 将输入的字符串中字母全变小写
strdict = {}
for c in str: # 遍历字符串str
if c >= 'a' and c <= 'z': # 只要字母在a和z之间
strdict[c] = strdict.get(c, 0) + 1 # 就将小写字母作为strdict的键,值为字母的个数
strlist = list(strdict.items()) # 将字典的键值对转成列表,每个元素就是(k,v)格式
strlist.sort(key=lambda x: x[1], reverse=True) # 将列表中的内容按字母个数倒排序
for i in range(len(strlist)):
print("{0:<10}{1:>10}".format(strlist[i][0], strlist[i][1])) # 输出倒排序的字母及个数
'''--result
输入包含英文的字符串: sdfjsk
s 2
d 1
f 1
j 1
k 1
'''