我从头开始用Python创建了一个IRC机器人,只是为了它的乐趣。我有办法将模块加载到其中,但你必须手动输入代码来加载每个模块,如下所示:
if data.find('PRIVMSG %s :add_mod foo\r\n' % channel)
enabled_mods.append(foo)
if data.find('PRIVMSG %s :rm_mod foo\r\n' % channel)
enabled_mods.remove(foo)
if data.find('PRIVMSG %s :add_mod bar\r\n' % channel)
enabled_mods.append(bar)
if data.find('PRIVMSG %s :rm_mod bar\r\n' % channel)
enabled_mods.remove(bar)
for mod in enabled_mods:
mod(data,irc,channel,nick)
有没有办法使用for循环加载每个模块?还有其他建议吗?如:
modules = [foo,bar]
for module in modules:
if data.find('PRIVMSG %s :add_mod %s\r\n' % (channel,module))
enabled_mods.append(module)
if data.find('PRIVMSG %s :rm_mod %s\r\n' % (channel,module))
enabled_mods.remove(module)
解决。