LoginSignup
40
27

More than 3 years have passed since last update.

discordpyのrewrite/asyncとは何なのか

Last updated at Posted at 2019-01-10

※ 2019/04/09のrewrite版正式リリースに伴い内容を修正しました。

discord.py を知らない方はこちらをお読みください。
Pythonで実用Discord Bot(discord.py解説)

要は

新バージョンが rewrite
旧バージョンが async

互換性はありません。

python2系/3系と同様の問題と考えてください。

呼称はGithubリポジトリのブランチ名が由来
- https://github.com/Rapptz/discord.py/tree/rewrite
- https://github.com/Rapptz/discord.py/tree/async

rewrite版 について

  • ドキュメント(英語) / 日本語版(翻訳中)
  • 別称 v1.0.0
  • 2019/04/09 にリリース
    • 過去ではgithubからのみインストール可能だった
  • pip install discord.py でインストール
  • python3.7に対応
  • 現在解説している記事は少ない
githubからのインストール方法
pip install git+https://github.com/Rapptz/discord.py.git@rewrite#egg=discord.py[voice]

async版 について

  • ドキュメント(英語)
  • 別称 v0.16.12 or 旧版
  • 2019/04/08 まで pip install discord.py でインストールできたもの
  • python3.7 では動かない
    • 3.4.2 から 3.6.* で動く
  • 現在殆どの記事で解説されているのがこのバージョン
  • 最終更新日 2017/11/13

rewrite版とasync版の仕様変更点

目立つところでは、チャンネルへのメッセージ送信の構文が変更されており、
以下のような違いがあります。

rewrite版の構文
await channel.send('Hi!')
async版の構文
await client.send_message(channel, 'Hi!')

その他詳細は公式ドキュメントに記載されています。
v1.0への移行

後書き

現在多くの記事は discord.py の async版 を扱っており、
現行版の rewrite版 に対応していません。
そのため混乱が多く、理解を得るための記事が必要と考え執筆しました。

以後説明が面倒な際はこちらの記事を投げてください。

40
27
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
40
27