【发布时间】:2020-12-08 05:59:30
【问题描述】:
我最近决定要开始更多地了解真实世界的 Python 以及与之相关的应用程序。作为一种方法,我尝试编写一个简单的 Discord 机器人。但是,我遇到的问题与我在任何平台上看到的任何其他问题都不同——包括这个:can't find '__main__' module in 'bot'。在命令提示符中运行 python bot 时出现此错误。现在,我假设我确实应该运行 python bot 而不是 python bot.py 因为 .py 仅表示 bot 是 Python 文件。我假设这是因为当我运行python bot.py 时,我收到以下消息:python: can't open file 'bot.py': [Errno 2] No such file or directory。这是bot.py:
import os
import discord
from dotenv import load_dotenv
load_dotenv()
TOKEN = os.getenv('DISCORD_TOKEN')
client = discord.Client()
@client.event
async def on_ready():
print(client.user(), "has connected to Discord!")
client.run(TOKEN)
另外,当我在 Python shell 中运行 bot.py 时,我会收到以下消息:
Traceback (most recent call last):
File "C:\Users\me\AppData\Local\Programs\Python\Python38-32\bot.py", line 17, in <module>
client.run(TOKEN)
File "C:\Users\me\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\client.py", line 640, in run
return future.result()
File "C:\Users\me\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\client.py", line 621, in runner
await self.start(*args, **kwargs)
File "C:\Users\me\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\client.py", line 584, in start
await self.login(*args, bot=bot)
File "C:\Users\me\AppData\Local\Programs\Python\Python38-32\lib\site-packages\discord\client.py", line 442, in login
await self.http.static_login(token.strip(), bot=bot)
AttributeError: 'NoneType' object has no attribute 'strip'
而且,我不确定代码在哪里(或什至是否)解决了这个问题,但这里是 .env.txt:
#.env
DISCORD_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
好的,我认为这涵盖了所有内容。如果有人需要对此的任何部分进行澄清,我很乐意提供。提前致谢。
【问题讨论】:
-
如果你
print(TOKEN)会输出什么?
标签: python python-3.x api discord discord.py