当前位置: 首页>>代码示例>>Python>>正文


Python Markov.speak方法代码示例

本文整理汇总了Python中markov.Markov.speak方法的典型用法代码示例。如果您正苦于以下问题:Python Markov.speak方法的具体用法?Python Markov.speak怎么用?Python Markov.speak使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在markov.Markov的用法示例。


在下文中一共展示了Markov.speak方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: get_message_text

# 需要导入模块: from markov import Markov [as 别名]
# 或者: from markov.Markov import speak [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()))
开发者ID:wlstrickland,项目名称:botty-bot-bot-bot,代码行数:32,代码来源:generate_sample.py


注:本文中的markov.Markov.speak方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。