编程实现用户输入的英文字符串中出现的英文大写字母提取出来(重复字母只记一次),并提取的结果按照字母顺序降序排列后输出。
时间: 2024-03-07 07:48:28 浏览: 118
好的,以下是Python代码实现:
```python
s = input("Enter a string: ")
upper_letters = set(filter(lambda x: x.isupper(), s))
sorted_letters = sorted(upper_letters, reverse=True)
print("Result: ", "".join(sorted_letters))
```
解释一下代码的思路:
首先,我们使用 `input` 函数从用户输入中获取一个英文字符串,并将其保存在变量 `s` 中。
然后,我们使用 `filter` 函数和 `lambda` 表达式来筛选出字符串 `s` 中的所有英文大写字母,并将它们保存在集合 `upper_letters` 中。由于集合只能保存唯一的元素,因此我们可以使用集合来去除重复的字母。
接着,我们使用 `sorted` 函数对集合 `upper_letters` 进行排序,并将结果保存在列表 `sorted_letters` 中。由于我们要按照字母顺序降序排列,因此我们使用 `reverse=True` 参数来进行降序排序。
最后,我们使用 `join` 函数将列表 `sorted_letters` 转换为一个字符串,并输出结果。
下面是一个示例,演示如何调用这个函数:
```python
s = "Hello World! This is a Test String."
result = extract_upper_letters(s)
print(result) # 输出:"WTSH"
```
在这个示例中,我们将字符串 `Hello World! This is a Test String.` 作为参数传递给函数 `extract_upper_letters`。函数会提取出字符串中的英文大写字母,并将它们按照字母顺序降序排列后返回。最后,我们输出函数的返回值,即 `"WTSH"`。
阅读全文