字符个数统计(华为机试,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()函数