1234567890

img


兄弟们看下最后一题的代码,可以解释解释

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
'''