mieki256's diary



2020/03/09(月) [n年前の日記]

#1 [python] PySide2をまだまだ勉強中

PySideを使っていたスクリプトの大半を、PySide2用に書き直すことはできたけど。OpenGL関係だけがどうにも…。

PySide2 + OpenGL を使ったサンプルスクリプトを目にして参考になったし、手元でも動いたけれど。

_PySide2 demo | Mark Fink
_PySide2 & OpenGL sample

しかし、件のスクリプト内で使われている QGLWidget って、「これから書くスクリプトでは使わないでくれ」「QOpenGLWidget か QOpenGL を使うようにしてくれ」と言及されちゃっているわけで。

_QGLWidget - Qt for Python
_QOpenGLWidget - Qt for Python

しかし、載っているサンプルソースがC言語のまま…。どこかに PySide2用のサンプルは無いのかな…。

「Method could be a function」ってなんぞや。 :

Pythonスクリプトの書き方がおかしくないかを調べてくれる pylint というツールがあるので、pylint hoge.py と打ってそのへん調べつつ書いてるのだけど。「Method could be a function」てな注意(?)が表示されて悩んだり。ソレ、どういう意味なの。

_Method could be a function - Python Anti-Patterns documentation
_Pythonで classmethod、staticmethod を使う - Qiita

クラスの中に書いてある関数に self を渡してるのに self が使われてなかったりする場合は怒られるらしい。つまり、「この関数ってインスタンスが無くても動いてしまうから、こういうのはクラスメソッドとして扱うのが妥当じゃないですかねえ」みたいなことを言われてるようで。

そんな場合は、「def hoge():」の一行前に、「@classmethod」とか「@staticmethod」と書いて「これはクラスメソッドの類じゃよ」と指定しておくといいらしい。かつ、self は cls に書き換え、みたいな。

以上、1 日分です。

過去ログ表示

Prev - 2020/03 - Next
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project