赞
踩
我是python的新手,正在尝试构造markov链。其他的例子展示了对象实例的用法,我还没有走那么远。我还没有做随机选择的价值部分,但基本上,我对我的输出这段代码到目前为止的损失。在filename = open("dr-suess.txt")
def make_list(filename):
"""make file a list and a list of tuple tup_pairs"""
file_string = filename.read() #read whole file
file_list = file_string.split() #split on whitespace (not worrying about
# puncuation right now)
tup_pairs = []
for i in range(len(file_list)-1):
tup_pairs.append((file_list[i], file_list[i+1])) #making my tuple pair list
return tup_pairs, file_list
def mapping(filename):
tup_pairs, file_list = make_list(filename)
dictionary = {}
for pair in tup_pairs:
dictionary[pair] = [] #setting the value of dict to empty list
tup_pairs = set(tup_pairs) #throwing out repeated tuples
for word in file_list:
word_number = file_list.index(word) #index number of iter word
if word_number > 1: #because there is no -2/-1 index
compared_tuple = (file_list[word_number-2], file_list[word_number-1]) #to find
#preceeding pair to compare
for pair in tup_pairs:
if compared_tuple == pair:
dictionary[pair].append(word) #should append the word to my dict value (list)
print dictionary #getting weird results (some words should appear that dont, some
# don't appear that should)
mapping(filename)
输出:
^{pr2}$
奇怪输出的一个示例(应该只有4个“you”值,有6个):('you,', 'could'): ['you', 'you', 'you', 'you', 'you', 'you']
正在使用的fyi文件文本:Would you, could you in a house?
Would you, could you with a mouse?
Would you, could you in a box?
Would you, could you with a fox?
Would you like green eggs and ham?
Would you like them, Sam I am?
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。