我有以下字符串:“ WPCOPEO”,我需要找到第一个重复的字母及其重复的时间。我希望在编码方面有所帮助。
string = "WPCOPEO"
def is_repeated(letter):
for letter in String:
if letter == letter
print (letter)
答案 0 :(得分:1)
想起来很简单
检查元素是否存在于集合中,否则插入集合
>>> s=set()
>>> for i in string:
... if i in s:
... c=i
... break
... else:
... s.add(i)
...
>>> c
'P'
>>> string.count(c)
2
答案 1 :(得分:0)
word = "WPCOPEO"
print (next([letter, word.count(letter)] for pos, letter in enumerate(word) if letter in word[pos+1:]))
for pos, letter in enumerate(word):
if letter in word[pos+1:]:
print (letter, word.count(letter))
break
答案 2 :(得分:0)
您可以通过首先存储每个字母的初始出现频率及其频率来找到外观。
first
接下来,您可以将其转换为(外观,字母频率)列表。
{'O': [3, 2], 'E': [4, 1], 'P': [1, 2], 'W': [0, 1], 'C': [2, 1]}
然后,您可以按频率和外观排序并获取第一项。
[[0, 'W', 1], [1, 'P', 2], [2, 'C', 1], [3, 'O', 2], [4, 'E', 1]]
[[1, 'P', 2], [3, 'O', 2], [0, 'W', 1], [2, 'C', 1], [4, 'E', 1]]
输出:
字母P出现2次。
答案 3 :(得分:0)
def is_repeated(string):
for i in range(1,len(string)):
check=string[0]
if check == string[i]:
print("This character is frequent:",string[i])
string = "WPCOPEO"
is_repeated(string)