Мне нужно передать значения из одной функции в другую изнутри функции.
Например (мой бот IRC запрограммирован отвечать на команды в канале):
def check_perms(nick,chan,cmd):
sql = "SELECT `"+ cmd +"` FROM permissions WHERE nick = '"+ nick +"' and chan = '"+ chan +"'" # This returns 0
#sql = "SELECT `restart` FROM permissions WHERE nick = 'Me' and chan = '#mychan'" # this works as intended
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
if (row[0] == 1): # Nick logged in and has permission
return 1
else: # nick does not have permissions
return 0
def com_restart(nick,chan):
perm = check_perms(nick,chan,"restart")
if (perm == 0): # nick did not have permission
irc.send("NOTICE "+ nick +" :Permission denied.\n")
elif (perm == 1): # nick has permission
irc.send("PRIVMSG "+ chan +" :I've been asked to restart myself by "+ nick +".\n")
nick = "Me" # This is determined by a bunch of regex splits and such
chan = "#mychan" # This is determined by regex splits as well
com_restart(nick,chan)
Однако, когда я пытаюсь это сделать, кажется, что значения не передаются в SQL-запрос, поэтому он возвращает 0.
Спасибо за любую помощь, которую вы можете предоставить.
EDIT - Добавлен код, которыйЯ работаю с тем, как оно сейчас стоит.