Python函数未运行

Python函数未运行,python,Python,在大约5年没有使用Python之后,我决定重新使用它。我从NodeJS开始用Python重新编码我的Discord机器人,它做得很好,但后来我开始发现这个奇怪的bug 我的问题很简单。我有两个文件:\uuuu main\uuuuuuuuuuuuuuuuuuuuuupy和commander.py main.py from core.utility import parser, discord from core.admin import commander def ping(arguments,

在大约5年没有使用Python之后,我决定重新使用它。我从NodeJS开始用Python重新编码我的Discord机器人,它做得很好,但后来我开始发现这个奇怪的bug

我的问题很简单。我有两个文件:
\uuuu main\uuuuuuuuuuuuuuuuuuuuuupy
commander.py

main.py

from core.utility import parser, discord
from core.admin import commander

def ping(arguments, flags, options):
    print("PONG")

commander.addCommand("ping", "A ping pong request.", None, None, ping)
print('a')
指挥官

list = []

def addCommand(name, description, usage, permissions, callback):
    command = {}
    command["name"] = name
    command["description"] = description
    command["usage"] = usage
    command["permissions"] = permissions
    command["callback"] = callback
    print("Command added: ", name)
    list.append(command)
当我在
\uuuu main\uuuuu.py
中调用
commander.addCommand
时,打印状态不会打印。我还注意到,
print('a')
也没有打印,这使我相信应用程序正在被我正在使用的Discord库阻塞,这就是

还注意到,当我按ctrl+c停止进程时,将
commander.addCommand
中的print语句放入实际的print语句中,这样我几乎可以肯定应用程序被阻塞了,但我不知道如何以异步方式运行它


关于如何实现我的目标有什么建议吗?

这应该是一个评论,但我还不能这么做。您在
commander.py
中的缩进是否正确?
def addCommand(…)
之后的所有内容都应缩进。除非你只是把问题写错了


编辑:我无法重现此错误。它在我的机器上运行得很好。与其从您自己的文件导入discord,为什么不从pip获取它呢?这可能是你的脚本和我的脚本之间的唯一区别。

我认为问题在于腻子。您的代码实际上根本不会引起
冲突。您的标准输出缓冲区可能未被刷新。试试这两种方法中的一种

在python中使用
-u
参数

python -u __main__.py
在打印语句后添加刷新

print('Whatever')
import sys; sys.stdout.flush()

颜色我不知道,但什么模块是
core
从?一个由我制作的模块。它与
\uuuuu main\uuuuuuuuy.py
位于同一目录中。请修复问题中的缩进。编辑并修复了代码正常工作的原因,因为您没有使用Discord库并创建阻止代码的实际应用程序部分。不,不会打印任何内容。正如我所说,我几乎100%肯定这是一个阻塞问题。