【问题标题】:Python IRC bot help [duplicate]Python IRC bot帮助[重复]
【发布时间】:2011-04-03 13:40:05
【问题描述】:

可能重复:
Python IRC bot question

如何在现有的 Python IRC 机器人框架中实现功能,该框架不能一次接受 Python 源代码,接受多行语句并保留结果以供以后使用?就像,如果我想从 IRC 窗口定义一个函数,然后能够稍后调用该函数并将我的机器人视为 Python 解释器,这怎么可能?我以前见过有人这样做,但他们不给我源代码。

我的机器人将在 Linux VPS 上运行。

【问题讨论】:

    标签: python linux function irc bots


    【解决方案1】:

    我会查看eval(),因为它将字符串作为 Python 代码运行:

    eval('print 3 + 1') # Outputs: 4
    

    您可以使用此函数将字符串评估为 Python 代码(在您的 IRC 聊天行中)。 非常注意这一点,因为它允许任意访问 Python 解释器,如果其他人掌握了这个东西,它可能会“使你的计算机爆炸”。

    您能否详细说明一下您试图通过此实现的目标是什么?

    【讨论】:

    • 我正在尝试为 IRC 制作一个机器人,我可以尝试使用它,因为我正在学习 Python 并且我使用 IRC,看看我能用它做什么会很有趣,而且它会很简单让我能够在频道中添加功能
    • 你说的添加函数是什么意思?
    • 例如,我希望能够在我的 IRC 频道中做这样的事情:<mynick> define hi(): print "hi" <mynick> hi() <bot> hi
    • eval() 会这样做,但我不确定您将如何拦截 print 语句。这将是一个更简单(更好的 imo)问题。
    猜你喜欢
    • 2011-05-12
    • 1970-01-01
    • 2012-10-15
    • 1970-01-01
    • 1970-01-01
    • 2012-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多