给定一行句子,每个词之间用空格隔开,要么是全小写英文单词,要么是全大写英文单词,要么是自然数。 要求将这些单词倒序输出。而且对于每个单词,如果是小写词,应当转为大写;如果是大写词,应当转为小写;如果是自然数,应该倒转输出。
时间: 2023-12-30 10:02:58 浏览: 238
好的,我理解了你的问题。以下是Python代码的实现:
```python
sentence = input("请输入一行句子:")
words = sentence.split()
for word in words[::-1]:
if word.islower():
print(word.upper()[::-1], end=" ")
elif word.isupper():
print(word.lower()[::-1], end=" ")
elif word.isnumeric():
print(word[::-1], end=" ")
```
首先,我们通过 `input` 函数获取用户输入的句子。然后,使用 `split` 函数将句子分解成单个单词,并将其存储在 `words` 列表中。接下来,我们遍历 `words` 列表的倒序,即从最后一个单词开始,逐个处理每个单词。
对于每个单词,我们使用 `islower` 函数判断它是否为小写英文单词。如果是小写单词,我们使用 `upper` 函数将其转换为大写并倒序输出。如果是大写英文单词,我们使用 `lower` 函数将其转换为小写并倒序输出。如果单词是自然数,则直接将其倒序输出。
最后,我们使用 `end=" "` 参数指定输出结束时使用空格分隔。这样,输出的单词之间就不会有额外的空白行了。
阅读全文