任务一
请用Python实现一个wordcount函数,统计英文字符串中每个单词出现的次数。返回一个字典,key为单词,value为对应单词出现的次数。
TIPS:记得先去掉标点符号,然后把每个单词转换成小写。不需要考虑特别多的标点符号,只需要考虑实例输入中存在的就可以。
首先可以直接在jupyterlab里实现。思路就是先根据tips,用字符串的方法replace去除',','.','\n'三个符号,然后将string转为小写(其中换行符可能会遗漏,要注意)。
其中调试后发现每行最后一个单词和下一行第一个单词之间除了换行符还有一个空格,所以直接删除换行符不会引起后续用split提取字符串中单词出现问题。
最后就是遍历提取的单词,将其作为key存入字典word_count,如果本来没有这个key,则赋其value初值为1,反之value+=1。
由此可以实现本任务的要求,代码与运行结果如下:
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):
text = text.replace(',','').replace('.','').replace('\n','')#delete the punctuation marks
text = text.lower()#turn words into lowercase
word_count = {}#dictionary for return
words = text.split(" ")#extract the words in the string
for i in range(len(words)):
if words[i] in word_count:
word_count[words[i]] += 1
else :
word_count[words[i]] = 1
return word_count
print(wordcount(text))
任务二
请使用本地vscode连接远程开发机,将上面你写的wordcount函数在开发机上进行debug,体验debug的全流程,并完成一份debug笔记(需要截图)。
本任务即使用vscode进行代码debug,按指导逐步操作即可,设置完断点之后,每次按continue即可观察已经运行到的语句中包含的变量值,便于debug: