编写一个函数del(s),将输入的字符串s中重复出现的字符删除,只保留最后出现的字符,要求大小写无关(即'A'与'a'视为相同字符)。在main()函数中测试此函数:从键盘输入一个字符串,然后调用该函数进行删除重复字符串操作,将结果打印到屏幕上。
时间: 2024-05-15 12:17:22 浏览: 25
删除一个字符串中重复的字符
4星 · 用户满意度95%
好的,我明白了。以下是对您的问题的回答:
可以尝试以下代码:
```python
def del_repeat(s):
d = {}
new_s = ""
for i in range(len(s)-1,-1,-1):
if s[i].lower() not in d:
new_s = s[i] + new_s
d[s[i].lower()] = True
return new_s
if __name__ == '__main__':
s = input("请输入一个字符串:")
print("删除重复字符后的字符串为:", del_repeat(s))
```
在我们的 `del_repeat` 函数中,我们首先创建了一个空字典 `d`,用于存储已出现的字符。我们从字符串的最后一个字符开始遍历,如果当前字符的小写形式不在字典中,则将当前字符添加到新的字符串 `new_s` 的开头;否则,我们跳过当前字符并继续遍历。最后,我们返回新字符串 `new_s`。
在 `main()` 函数中,我们首先通过 `input()` 函数从键盘输入一个字符串,然后调用 `del_repeat()` 函数删除其中的重复字符,并将结果打印到屏幕上。注意,由于我们使用了 `new_s = s[i] + new_s` 来构建新字符串 `new_s`,因此我们可以确保新字符串中仅包含最后出现的字符。
希望这可以帮助您解决问题!
阅读全文