跳转至

英文字母频数统计

题目描述

连续输入由英文字母组成的三行文字(每行文字不少于10个字符,中间有空格和英文标点符号),以回车键结束一行文字的输入。然后统计这三行文字中各字母出现的次数(不区分大小写),并以如下样例所示的方式输出各字母出现的次数(没有出现的字母不显示)。

## 输入描述

三行英文文字,每行文字的输入以回车键结束。

输出描述

  1. 将输入的三行文字拼接在一起输出;
  2. 换行输出文字中出现的英文字母(不区分大小写)的大写,且按字母表顺序排序、相邻字母间距相同;
  3. 再换行在大写字母下方输出其在文字中出现的次数。

代码详解

展开查看
a = input("请输入第1行文字:")
b = input("请输入第2行文字:")
c = input("请输入第3行文字:")
abc = a+b+c
print(abc)
lst = list(abc.upper())
s = set(lst)
ls = list(s)
ls.sort()

ls1 = []
for item in ls:
    if ord(item)>=65 and ord(item)<=65+25:
        ls1.append(item)

for item in ls1:
    print(item, end=" ")

print()

for item in ls1:
    print(lst.count(item), end=" ")

运行结果

展开查看
请输入第1行文字I love you, my baby.
请输入第2行文字You are a good boy.
请输入第3行文字We are very happy with you.
I love you, my baby.You are a good boy.We are very happy with you.
A B D E G H I L M O P R T U V W Y 
5 3 1 5 1 2 2 1 1 7 2 3 1 3 2 2 8