
python
import re
# 输入英文句子
sentence = input("请输入一个英文句子:")
# 使用正则表达式匹配单词,并计算单词个数
word_count = len(re.split('\W+', sentence))
# 分行输出每个单词
for word in re.split('\W+', sentence):
print(word, end=' ')
# 输出单词个数
print()
print(f"该句子的单词个数为:{word_count}")
在这个脚本中,我们首先导入了 `re` 库,然后使用 `input()` 函数获取用户输入的英文句子。接着,我们使用 `re.split()` 函数按照非单词字符(\W+)将句子分割成单词列表。`re.split()` 的第一个参数是一个正则表达式模式,它匹配任何非单词字符,包括空格、标点符号等。
然后,我们使用 `len()` 函数计算单词列表的长度,这代表了句子的单词个数。最后,我们使用一个 `for` 循环将单词列表中的每个单词打印出来,并在单词之间添加一个空格。
请注意,这个脚本假设你是在 Anaconda 环境下运行的,并且已经安装了 `re` 库。如果你是在普通的 Python 环境中运行,你需要确保 `re` 库已经安装。你可以在终端或命令提示符中输入 `pip install regex` 来安装 `re` 库。
在运行这个脚本时,请确保你输入的是一个英文句子,并且包含一些标点符号,这样 `re.split()` 才能正确地分割单词。如果你输入的句子没有标点符号,那么 `re.split()` 会将整个句子视为一个单词。
更多文章请关注《万象专栏》
转载请注明出处:https://www.wanxiangsucai.com/read/cv183548