はじめに
Pythonから pptxファイルをいじるには python-pptx
がかなり便利です。
しかし、 現在リリースされている v0.6.18
では「PyCharmなどのIDEでmethodの補完が効かない」「Tableに行や列を追加できない」です。
methodの補完が効かないというのは、大したことないような気もしますが、なんか使ってて楽しくないので辛いです。Tableへの行や列の追加はやっぱりやりたいときがあります。どうも python-pptx の本家 では1年以上更新が止まっているので、当分改善されそうにありません。今回その辺をちょっと改良?したので、共有しておきます。
Version
- Python 3.5以上 (Type Hintを使っているので)
- PyCharm (2020.1.1)
本題
methodの補完が効かない原因は、 methodやpropertyの戻り値の型がはっきりしないことが原因なので、なんとかIDEにそれが伝わるようにします。行や列の追加は、すでに本家にpull requestがあったのでそれを取り込めば良さそうです。
ということで、色々手当したもの を用意したので、
pipenv install "git+https://github.com/mokemokechicken/python-pptx.git@7c97934#egg=pptx"
などとすれば、
table.rows.add_row()
table.columns.add_column()
などが、使えるようになります。
(あと IDEでの補完もそこそこ効くようになります)。
さいごに
他にも本家には有用そうなPullRequestがたくさん溜まっているので、こういう機能がないかなーという時は見てみると良いかもしれません。