Python查找任意字符串中只出现一次的字符(2016奇虎笔试题)
'''
程序功能:
编写函数,给定任意字符串,找出其中只出现一次的字符,
如果有多个这样的字符,就全部找出。'''
import sys
def searchOne(s):
# 创建空字典
d = dict()
# 遍历字符串,并分别记录每个字符的出现次数
for ch in s:
# 这里重点演示字典的get()方法
# 如果这个字符出现过,加1
# 如果这个字符第一次出现,0+1
d[ch] = d.get(ch, 0) + 1
# 列表推导式,查找所有只出现一次的字符
chs = [ch for ch, n in d.items() if n==1]
# 返回最终结果,所有只出现一次的字符
return chs
if __name__ == '__main__':
# 获取命令行参数
s = sys.argv[1]
print(searchOne(s))
本程序需要在命令行提示符环境中运行,假设代码保存为test3.py,运行方式和结果如下: