python对于输入的一句仅由英文单词、空格和标点符号组成的句子,先将标点符号及空格删去,再将得到的英文字符串颠倒顺序输出。
时间: 2023-06-18 08:06:52 浏览: 137
可以使用字符串的split()方法将句子拆分为单词,并使用join()方法将单词连接成一个新的字符串。然后使用字符串的replace()方法将标点符号和空格删除,使用[::-1]将字符串颠倒顺序,最后输出结果。
示例代码如下:
```
s = input("请输入一句仅由英文单词、空格和标点符号组成的句子:")
words = s.split() # 拆分为单词
new_s = "".join(words) # 将单词连接成一个新的字符串
new_s = new_s.replace(" ", "").replace(",", "").replace(".", "").replace("!", "").replace("?", "") # 删除标点符号和空格
result = new_s[::-1] # 颠倒顺序
print(result)
```
注意:这里只删除了常见的标点符号和空格,如果需要删除其他符号,可以在replace()方法中加入相应的符号。
相关问题
给定一个由英文单词和标点符号组成的句子,单词间有空格,单词与标点间无空格,要求尽可能简便地去除标点符号并为每个单词计数
好的,可以通过以下 Python 代码实现:
```python
import string
sentence = "Hello, world! This is a sentence."
sentence = sentence.translate(str.maketrans("", "", string.punctuation)) # 去除标点符号
words = sentence.split() # 拆分成单词
word_count = {}
for word in words:
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
print(word_count)
```
这段代码会输出一个字典,其中键为单词,值为该单词出现的次数。对于给定的句子,输出结果为:
```
{'Hello': 1, 'world': 1, 'This': 1, 'is': 1, 'a': 1, 'sentence': 1}
```
用python 输入一个英语句子每个单词间用空格分割标点符号前无空格后面跟一个空格请将每个单词分行输出
以下是用 Python 实现的代码:
```python
sentence = input().strip()
punctuation = [".", ",", ";", ":", "!", "?"]
for i in range(len(sentence)):
if sentence[i] in punctuation:
sentence = sentence[:i] + " " + sentence[i] + " " + sentence[i+1:]
words = sentence.split()
for word in words:
print(word)
```
这段代码首先读取用户输入的英语句子,然后通过循环将标点符号前面加上一个空格,后面再跟上一个空格,这样就保证了每个单词间都有一个空格,并且标点符号前面没有空格。接着,使用 `split()` 函数将句子分割成单词,并通过循环输出每个单词,每个单词占一行。
阅读全文