第二关-Linux 基础知识任务一
任务一
请实现一个wordcount函数,统计英文字符串中每个单词出现的次数。返回一个字典,key为单词,value为对应单词出现的次数。
Eg:
Input:
“”“Hello world!
This is an example.
Word count is fun.
Is it fun to count words?
Yes, it is fun!”“”
Output:
{‘hello’: 1, ‘world’: 1, ‘this’: 1, ‘is’: 4, ‘an’: 1, ‘example’: 1, ‘word’: 1, ‘count’: 2,
‘fun’: 3, ‘it’: 2, ‘to’: 1, ‘words’: 1, ‘yes’: 1}
TIPS:记得先去掉标点符号,然后把每个单词转换成小写。不需要考虑特别多的标点符号,只需要考虑实例输入中存在的就可以。
text = “”"
Got this panda plush toy for my daughter’s birthday,
who loves it and takes it everywhere. It’s soft and
super cute, and its face has a friendly look. It’s
a bit small for what I paid though. I think there
might be other options that are bigger for the
same price. It arrived a day earlier than expected,
so I got to play with it myself before I gave it
to her.
“”"
def wordcount(text):
pass
任务二
请使用本地vscode连接远程开发机,将上面你写的wordcount函数在开发机上进行debug,体验debug的全流程,并完成一份debug笔记(需要截图)。
Answer:
import re
from collections import defaultdict
def wordcount(text):
# 使用正则表达式将文本分割成单词
words = re.findall(r'\b\w+\b', text.lower())
# 使用 defaultdict 统计每个单词的出现次数
word_count = defaultdict(int)
for word in words:
word_count[word] += 1
return dict(word_count)
# 测试示例
text = """Hello world!
This is an example.
Word count is fun.
Is it fun to count words?
Yes, it is fun!"""
result = wordcount(text)
print(result)