字符个数统计(华为机试,Python)
题目描述
编写一个函数,计算字符串中含有的不同字符的个数。字符在ASCII范围内。不再范围内的不做统计。
输入/输出描述
代码展示
"""
编写一个函数,计算字符串中含有的不同字符的个数。字符在ASCII范围内。不再范围内的不做统计。
输入描述:输入N个字符,字符在ASCII范围内。
输出描述:输出不同字符的个数。
输入示例:adb
输出示例:3
"""
string = input()
count = 0
string_set = set(string)
for ch in string_set:
if abs(ord(ch)) < 127:
count = count + 1
print(count)
代码走读
"""
编写一个函数,计算字符串中含有的不同字符的个数。字符在ASCII范围内。不再范围内的不做统计。
输入描述:输入N个字符,字符在ASCII范围内。
输出描述:输出不同字符的个数。
输入示例:adb
输出示例:3
"""
string = input()
# count表示不同字符的个数。在这里初始化为0
count = 0
# 将输入的字符串转换成集合(滤去重复元素)
string_set = set(string)
# 遍历整个集合,如果元素在ASCII范围内,则count自增1
for ch in string_set:
if abs(ord(ch)) < 127:
count = count + 1
# 打印输出结果
print(count)
测试用例
1. 输入的字符串包含相同字符;
2. 输入的字符串包含不相同的字符;
3. 输入的字符串包含ASCII范围外的字符
传送门
1. input()函数
2. set()函数
3. ord()函数
4. abs()函数
5. print()函数
