LennoX’s IT備忘録

IT技術者の備忘録

【Python】pyxel.init() の引数 scale で argument error

サンプルコードを実行していたら

以下のサイトを参考に実行していたところ。

note.com

% python soundwave-form.py 

Traceback (most recent call last):

  File "soundwave-form.py", line 35, in <module>

    App()

  File "soundwave-form.py", line 8, in __init__

    pyxel.init(255, 155, fps=60, scale=2, border_width=10, border_color=0x0d0015, caption='Pyxel & PyAudio')

TypeError: init() got an unexpected keyword argument 'scale'

2018年当時とは関数の引数の仕様も変わっているというわけですね。

とりあえずググって調べたら

pyxel init scale error でググってヒットしたページに書いてあった。
2022年の時点ではそれぞれ以下のように変更されている。

確かに古めのコードを実行するときは要注意。

pyxel のバージョンを確認

pip show pyxel コマンドでモジュールのバージョンを確認。

% pip show pyxel 

Name: pyxel

Version: 2.0.1

Summary: A retro game engine for Python

Home-page: 

Author: Takashi Kitao <takashi.kitao@gmail.com>

Author-email: Takashi Kitao <takashi.kitao@gmail.com>

License: MIT

Location: /.pyenv/versions/3.10.13/lib/python3.10/site-packages

Requires: 

Required-by: 

現在の仕様を確認する

ちゃんと確認もぜずに実行したのが間違い。
まずは最新バージョンから。
2.0.1 で間違いない。

python pyxel version

github.com


次にリファレンスで引数を確認。
GitHub > README.ja.md にしっかりと書いてある。

  • caption → title
  • scale → display_scale

GitHub Pyxel APIリファレンス

github.com

まとめ

ググってサンプルを探して実行する前に。
まずは自分の実行環境を確認しておきましょう。