题目来源:【2021春 计算机导论 第二次上机】
题目难度:基础
题目类型:Python入门
通过率:157/157 (100.00%)
正确率:157/221 (71.04%)
更多题目
一、题目描述
判断输入中有多少个不同的字母
1、限制
- 时间限制:1000ms
- 内存限制:65536kb
2、输入输出格式
1. 输入
一行,为待判断的句子/单词
待判断的句子/单词
2. 输出
输出一行,表示输入中不同的字母个数,不区分大小写
不同的字母个数
3、样例
1. 样例1
输入
Hello world! Haha.
输出
8
解释
- 输入中一共有helowrda,共8个不同的字母
二、题解
1、分析
使用 set 存储
1. 知识点
set
详细看【Python3 集合 | 菜鸟教程】
创建set
# b = {'z', 'm', 'c', 'a', 'l'}
b = set('alacazam')
# b = {}
b = set()
# c = {'banana', 'orange', 'apple', 'pear'}
c = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
# d = {'Taobao', 'Tencent', 'Google'}
d = set(("Google", "Tencent", "Taobao"))
添加元素
s = {1, 2}
# s = {1, 2}
s.add(1)
# s = {1, 2, 3}
s.add(3)
- 若元素已存在,则 add() 不进行任何操作。
移除元素
- remove()
- discard()
s = {1, 2}
# s = {2}
s.remove(1)
- 若元素不存在,则报错
s = {1, 2}
# s = {1, 2}
s.discard(3)
- 即使元素不存在,也不会报错
集合运算
- 差 -
- 并 |
- 交 &
- 对称差 ^
字符串内建函数
- isalpha()
- lower()
isalpha()
描述
- 检测字符串是否只由字母或文字组成。
- 若字符串至少有一个字符并且所有字符都是字母或文字,返回 True,否则返回 False。
语法
str1 = 'asda'
str1.isalpha()
lower()
描述
- 转换字符串中所有大写字符为小写。
语法
str1 = 'aAaAa'
str1.lower()
2. 易错点
- 注意字母不区分大小写
2、代码实现
str1 = input()
s = set()
for i in str1:
if i.isalpha():
s.add(i.lower())
print(len(s))
更多题目
版权声明:本文为weixin_45755666原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。