python 3.5实现
思路: 读取txt文本内容,一行一行读取,去掉换行符,讲文本内容用空格分开,即以单词为单位将文本分开,将单词存到list列表中,使用dict.fromkeys(list,0)方法将列表转换成字典,字典的键是列表中的值,字典的值是0;再次遍历文本,将文本中的单词直接存到字典中,其中 if word in my_dict用来判断字典中是否存在某个键,word.lower()将单词都转为小写,x.capitalize()将单词首字母大写,my_dict.items()以键值对的形式遍历字典
代码如下:
def count_word():my_dict = {}list = []with open('test.txt') as f:lines = f.readlines()for line in lines:line = line.strip("\n")for word in line.split(' '):list.append(word.lower())my_dict = my_dict.fromkeys(list, 0)for line in lines:line = line.strip("\n")for word in line.split(' '):word = word.lower()if word in my_dict:my_dict[word] += 1else:my_dict[word] = 1for x, y in my_dict.items():print('单词"%s",出现次数为 %s' % (x.capitalize(), y))
结果截图