webentwicklung-frage-antwort-db.com.de

create_task = asyncio.async: SyntaxError: ungültige Syntax

Ich erstelle einen Bot für Discord und habe gerade diesen einfachen Code geschrieben:

import discord

TOKEN = "token"

client = discord.Client()


@client.event
async def on_ready():
    print('Bot is ready.')


client.run(TOKEN)

und es erzeugt den folgenden Fehler:

Traceback (most recent call last):
  File "/Users/pcaires/Desktop/Programação/Python/Discord Bots/Main.py", line 1, in <module>
    import discord
  File "/Users/pcaires/Desktop/Programação/Python/Discord Bots/venv/lib/python3.7/site-packages/discord/__init__.py", line 20, in <module>
    from .client import Client, AppInfo, ChannelPermissions
  File "/Users/pcaires/Desktop/Programação/Python/Discord Bots/venv/lib/python3.7/site-packages/discord/client.py", line 38, in <module>
    from .state import ConnectionState
  File "/Users/pcaires/Desktop/Programação/Python/Discord Bots/venv/lib/python3.7/site-packages/discord/state.py", line 36, in <module>
    from . import utils, compat
  File "/Users/pcaires/Desktop/Programação/Python/Discord Bots/venv/lib/python3.7/site-packages/discord/compat.py", line 32
    create_task = asyncio.async
                              ^
SyntaxError: invalid syntax

Ich habe im Internet gesucht und gesucht, und die meisten Leute sagen, sie würden Python 3.7 verwenden, und genau das habe ich verwendet. Außerdem habe ich PyCharm als IDE für Python verwendet.

14
O Tal Antiquado

Woher kommt der Fehler?

Die von Ihnen verwendete Version von discord.py unterstützt nicht Python 3.7 (in dem async wird zu einem reservierten Schlüsselwort), wie in dieses Problem erklärt. Diese Version von discord.py, der Standardzweig auf GitHub-Repo , wird leider von Pip installiert .

Wie man es repariert

Du kannst entweder:

  • aktualisieren Sie Ihre Version von Python auf 3.6.
  • installiere eine andere Version von discord.py, basierend auf dem rewrite branch der sich in aktiver Entwicklung befindet, zum Beispiel mit dem Befehl: python3 -m pip install --user -U https://github.com/Rapptz/discord.py/archive/rewrite.Zip
18
cmousset

Sie können die Datei manuell bearbeiten und diese Zeile von create_task = asyncio.async In create_task = getattr(asyncio, 'async') ändern.

Weitere Informationen finden Sie hier: https://github.com/Rapptz/discord.py/issues/1249

6
vhs