题目描述
实现删除字符串中出现次数最少的字符,若多个字符出现次数一样,则都删除。输出删除这些单词后的字符串,字符串中其它字符保持原来的顺序。
注意每个输入文件有多组输入,即多个字符串用回车隔开
输入描述:
字符串只包含小写英文字母, 不考虑非法输入,输入的字符串长度小于等于20个字节。
输出描述:
删除字符串中出现次数最少的字符后的字符串。
示例1
输入
abcdd
输出
dd
我的代码:
while True: try: s=list(input()) #将字符串变为一个列表 b={} #定义一个字典,目的是 key 记录字符串中出现的小写字母,而 value 则记录该字母出现的次数 for i in s: if i in b: b[i]+=1 #遍历字符串,字母每出现一次,对应的value+1 else: b[i]=1 min_num=min(b.values()) #找到出现次数最少字母的 value for i in b.keys(): if b[i]==min_num: s.remove(i) #从字符串s中将其移除 print(''.join(s)) #输出修剪后的字符串,此时用到了join()函数 except: break
python___join()函数
描述
Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
语法
join()方法语法:
str.join(sequence)
参数
- sequence -- 要连接的元素序列。
返回值
返回通过指定字符连接序列中元素后生成的新字符串。
实例
以下实例展示了join()的使用方法:
list=['a','b','c','d'] #必须是字符序列 str1='#' print(str1.join(list))
#输出为:a#b#c#d