【Python入门练习】2E 判断字母个数

题目来源:【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版权协议,转载请附上原文出处链接和本声明。