本文整理汇总了Python中markov.Markov.format_words方法的典型用法代码示例。如果您正苦于以下问题:Python Markov.format_words方法的具体用法?Python Markov.format_words怎么用?Python Markov.format_words使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类markov.Markov
的用法示例。
在下文中一共展示了Markov.format_words方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_message_text
# 需要导入模块: from markov import Markov [as 别名]
# 或者: from markov.Markov import format_words [as 别名]
if extension != ".json": continue
result["#" + channel_name] = os.path.join(dirpath, history_file)
return result
return {}
def get_message_text(message):
"""Returns the text value of `message` if it is a valid text message, or `None` otherwise"""
if message.get("type") == "message" and isinstance(message.get("ts"), str):
if isinstance(message.get("text"), str) and isinstance(message.get("user"), str): # normal message
return server_text_to_sendable_text(message["text"])
if message.get("subtype") == "message_changed" and isinstance(message.get("message"), dict) and isinstance(message["message"].get("user"), str) and isinstance(message["message"].get("text"), str): # edited message
return server_text_to_sendable_text(message["message"]["text"])
return None
markov = Markov(2) # Markov model with 2 word look-behind
entries = open("kjv.txt", "r").read().split("\n")
matcher = re.compile(Markov.WORD_PATTERN, re.IGNORECASE)
for message in (matcher.findall(m) for m in entries):
markov.train([m.lower() for m in message], 3)
for channel_name, history_file in get_history_files().items():
with open(history_file, "r") as f:
for entry in f:
text = get_message_text(json.loads(entry))
if text is not None:
markov.train(Markov.tokenize_text(sendable_text_to_text(text)))
for x in range(10000):
print(Markov.format_words(markov.speak()))