看实验楼的课程,有一个小练习,做了一下。要求用Python实现计算一段文本中每个单词出现的次数。
sentence = 'hello world nihao world hey hello java world hi python yeoman word'
#先把字符串分割成单个单词列表
list1 = sentence.split()
#['hello', 'world', 'nihao', 'world', 'hey', 'hello', 'java', 'world', 'hi', 'python', 'yeoman', 'word']
print list1
#把列表转为结合,为了去除重复的项
set1 = set(list1)
#set(['java', 'python', 'word', 'nihao', 'hey', 'yeoman', 'hi', 'world', 'hello'])
print set1
#把集合转为列表,集合元素没有顺序,没有索引属性,而列表有
list2 = list(set1)
#['java', 'python', 'word', 'nihao', 'hey', 'yeoman', 'hi', 'world', 'hello']
print list2
#新建一个空的字典
dir1 = {}
for x in range(len(list2)):
dir1[list2[x]] = 0 #字典值初始为0
for y in range(len(list1)):
if list2[x] == list1[y]:
dir1[list2[x]] += 1
#{'word': 1, 'python': 1, 'nihao': 1, 'hey': 1, 'hello': 2, 'hi': 1, 'world': 3, 'java': 1, 'yeoman': 1}
print dir1