华为机试题:HJ10 字符个数统计(python)
文章目录
- 知识点详解
- 1、set() :创建集合。表示一个无序不重复元素的序列。
- 2、len():返回字符串、列表、字典、元组等长度。
描述:编写一个函数,计算字符串中含有的不同字符的个数。字符在 ASCII 码范围内( 0~127 ,包括 0 和 127 ),换行表示结束符,不算在字符里。不在范围内的不作统计。多个相同的字符只计算一次。例如,对于字符串 abaca 而言,有 a、b、c 三种不同的字符,因此输出 3 。
数据范围: 1 ≤ n ≤ 500
输入描述:输入一行没有空格的字符串。
输出描述:输出 输入字符串 中范围在(0~127,包括0和127)字符的种数。
示例1
输入:
abc
输出:3
示例2
输入:
aaa
输出:1
Python3
print(len(set(input())))
- input():获取控制台(任意形式)的输入。输出均为字符串类型。
- set() :创建集合。其表示一个无序不重复元素的序列。
- len():返回字符串、列表、字典、元组等长度。
- print() :打印输出。
知识点详解
1、set() :创建集合。表示一个无序不重复元素的序列。
【Python】集合set的使用详解
无序:无论序列中的元素在赋值给变量之前是什么顺序,赋值后各元素位置都将会随机显示。
不重复:对序列中的重复元素,赋值给变量后系统会自动去除重复元素,只保留一个。
- 备注:【列表、元组和字符串】都属于序列。
- 备注:
set(str)
对字符串去重;set(tuple)
对元组去重、set(list)
对列表去重。
集合的创建方法:
- (1)创建空集:
set()
- (2)创建集合:
set((A,B))
- (3)创建集合:
{}
# (1)创建空集:set()
person1 = set() # 空集合
print(len(person1)) # 【输出结果】0
print(person1) # 【输出结果】set()
# (2)创建集合:set((A,B))
person2 = set(("student", "teacher", "babe", 123, 321, 123))
print(len(person2)) # 【输出结果】5
print(person2) # 【输出结果】{321, 'teacher', 'babe', 123, 'student'}
# (3)创建集合:{}
person = {"student", "teacher", "babe", 123, 321, 123}
print(len(person)) # 【输出结果】5
print(person) # 【输出结果】{'student', 321, 'teacher', 123, 'babe'}
2、len():返回字符串、列表、字典、元组等长度。
函数说明:
len(object)
str_temp = "Hello, boy !"
print(len(str_temp)) # 【输出结果】12
#############################################
list_temp = ['h', 'e', 'l', 'l', 'o']
print(len(list_temp)) # 【输出结果】5
#############################################
dict_temp = {'num': 520, 'name': "do do"}
print(len(dict_temp)) # 【输出结果】2
#############################################
tuple_temp = ('G', 'o', 'o', 'd')
print(len(tuple_temp)) # 【输出结果】4