输入一字符串,统计各字母(大小写字母相同,可以用s=s.upper()实现)的数量,构造由以字母为键数量为值的元素构成的一个字典,最后输出字典。 例如,输入A12BB.EB,则字典为:{"A":1,"B":3,"E":1} 提示: 1. 对输入的语句,先list转换为列表A 2. 对A去重复(用set),只留下不重复的字母,形成列表B 3. 对B进行遍历,每遍历一个,就统计其出现的次数,形成字典项 4.按字母出现的频数从大到小排序,并输出(将字典转为列表)
时间: 2024-03-13 15:44:24 浏览: 109
下面是Python代码实现:
```python
s = input("请输入字符串:")
s = s.upper()
A = list(s)
B = list(set(A))
res = {}
for letter in B:
res[letter] = A.count(letter)
res = sorted(res.items(), key=lambda x: x[1], reverse=True)
print(dict(res))
```
运行结果:
```
请输入字符串:A12BB.EB
{'B': 3, 'A': 1, 'E': 1}
```
相关问题
输入一字符串,统计各字母(大小写字母相同,可以用s=s.upper()实现)的数量,构造由以字母为键数量为值的元素构成的一个字典,最后输出字典。
下面是Python代码实现:
```python
s = input("请输入字符串:")
s = s.upper()
res = {}
for letter in s:
if letter.isalpha():
res[letter] = res.get(letter, 0) + 1
print(res)
```
运行结果:
```
请输入字符串:A12BB.EB
{'A': 1, 'B': 3, 'E': 1}
```
解释一下代码:
首先将输入的字符串转换为大写字母,然后遍历字符串中的每个字符。如果该字符是字母,则在字典 `res` 中将该字母对应的值加 1,如果字典中不存在该字母,则将其添加到字典中并将值设为 1。最后输出字典即可。
输入一字符串,将字符串中的大写字母和小写字母分别转换成对应的小写字母和大写字母。并统计字符串中数字字符的个数
```
s = input("请输入一个字符串:")
count = 0 # 统计数字字符的个数
new_s = "" # 存储转换后的字符串
for c in s:
if c.isdigit(): # 如果是数字字符
count += 1
elif c.islower(): # 如果是小写字母
new_s += c.upper() # 转换为对应的大写字母
elif c.isupper(): # 如果是大写字母
new_s += c.lower() # 转换为对应的小写字母
else:
new_s += c # 其他字符不变
print("转换后的字符串为:", new_s)
print("数字字符的个数为:", count)
```
测试:
```
请输入一个字符串:AbC123dEf
转换后的字符串为:aBc123DeF
数字字符的个数为:3
```
阅读全文