Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Python: Pythonin irclibillä parttaaminen

Celssi [29.06.2007 09:13:09]

#

Olen tässä koodaillut pythonilla ircbottia. Ongelmaksi on kuitenkin muodostunut saada botti parttaamaan kanavalta käyttäen irclibiä. Jos se yleensäkkään on mahdollista niin miten se tapahtuu.

tsuriga [01.07.2007 03:25:03]

#

Pythonia en sen kummemmin osaa, mutta irclib.py-tiedostoa lueskeltuani arvaisin seuraavanlaista:

bot.part(bot, "channel")

Ja funktiohan on määritelty irclibissä näin:

def part(self, channels, message=""):
    """Send a PART command."""
    if type(channels) == types.StringType:
        self.send_raw("PART " + channels + (message and (" " + message)))
    else:
        self.send_raw("PART " + ",".join(channels) + (message and (" " + message)))

Chiman [01.07.2007 10:04:15]

#

Tuon part-metodin toteutuksen perusteella:

bot.part('channel')

tai

bot.part(['channel1', 'channel2'])

Pythonissa luokan metodia kutsuttaessa ensimmäiseksi parametriksi tulee automaattisesti viittaus itse olioon, joten tuota self-parametria ei anneta itse. channels-parametri voi olla joko merkkijono tai esim. lista.

Onpa muuten hieman ruma kikkailu tuon andin kanssa. Eli jos message-parametri ei ole tyhjä merkkijono, andin oikeanpuoleinen lauseke evaluoidaan myös ja koko and-kohdan arvoksi tulee se.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta