为啥我会收到这个语法错误(false syntax error pyflakes)
Posted
技术标签:
【中文标题】为啥我会收到这个语法错误(false syntax error pyflakes)【英文标题】:Why do I get this syntax error (false syntax error pyflakes)为什么我会收到这个语法错误(false syntax error pyflakes) 【发布时间】:2022-01-23 02:25:05 【问题描述】:我尝试按照有关如何使用 discord.py 托管不和谐机器人的教程进行操作。我做的一切都正确,但 pyflakes 显示语法错误。你知道为什么吗?
我有两个文件:main.py 和 keep_alive.py。 这是 main.py:
import os
import discord
from keep_alive import keep_alive
from discord.ext import commands
TOKEN = os.environ('TOKEN')
client = commands.Bot(command_prefix='!')
async def on_ready():
await client.change_presence(activity=discord.ActivityType.listenting('to the server!', status=discord.Status.online)
keep_alive.keep_alive()
client.run(TOKEN, bot=True, reconnect=True)
这是keep_alive.py:
from flask import Flask
from threading import Thread
app = Flask('')
@app.route('/')
def main():
return "<h1>Your bot is alive!</h1>"
def run():
app.run(host="0.0.0.0", port=8080)
def keep_alive():
server = Thread(target=run)
server.start()`
当我运行程序时,我得到这个错误:
File "main.py", line 12
keep_alive.keep_alive()
^
SyntaxError: invalid syntax
【问题讨论】:
您在上一行缺少括号。每当您收到语法错误时,通常实际错误都在前一个留置权上 非常感谢 @12944qwerty 谢天谢地,它已在 python 3.10 中修复 【参考方案1】:您的代码中存在重大错误。 首先,您正在使用 repli,其中使用 os.environ["Key_Name"] 访问 env 令牌。然后你从 keep_alive 导入 keep_alive 并且只需要使用 keep_alive() 调用它。那么你在 change_presence 中缺少一个右括号 )。此外,不要更改 on_ready 事件中的存在(您的机器人可能会断开连接,即使最初几次没有断开连接。)而是更改机器人构造函数中的活动。
BotClient = commands.Bot(command_prefix=prefixes, intents=discord.Intents.all(), help_command=None, activity=discord.Activity(type=discord.ActivityType.listening, name="Spotify"))
【讨论】:
以上是关于为啥我会收到这个语法错误(false syntax error pyflakes)的主要内容,如果未能解决你的问题,请参考以下文章
为啥我会收到此错误:模块构建失败(来自 ./node_modules/babel-loader/lib/index.js):语法错误 Unexpected token, expected "