Python输入一个英文句子,每个单词间用空格分隔,标点符号前面无空格,后面跟一个空格,请按出现顺序将每个单词分行输出(标点符号归属于前面的单词)。
时间: 2024-03-12 20:42:58 浏览: 152
python实现将内容分行输出
这个问题和之前的问题一样,只需要稍微修改一下输出的逻辑就可以了。下面是一个实现该功能的 Python 程序:
```python
sentence = input("请输入一个英文句子:")
words = sentence.split()
for i in range(len(words)):
# 如果当前单词的最后一个字符是标点符号
if words[i][-1] in [".", ",", "!", "?", ";", ":" ]:
# 如果当前单词不是句子的最后一个单词
if i != len(words) - 1:
print(words[i][:-1])
print(words[i][-1])
# 如果当前单词是句子的最后一个单词
else:
print(words[i][:-1])
# 如果当前单词不是标点符号
else:
print(words[i])
```
这个程序和之前的程序有所不同。如果当前单词的最后一个字符是标点符号,我们需要判断当前单词是否是句子的最后一个单词。如果当前单词不是句子的最后一个单词,我们需要将当前单词分成两部分输出,即单词中去掉标点符号部分和标点符号部分。如果当前单词是句子的最后一个单词,我们只需要将单词中去掉标点符号部分输出即可。如果当前单词不是标点符号,则直接输出当前单词。
阅读全文