0
1

More than 3 years have passed since last update.

pylintでワイルドカード指定が動かないとき

Last updated at Posted at 2020-09-06

概要

カレントディレクトリ直下のpythonファイルを一括でpylintかけようとしてはまった話。
同じことで悩んでいそうな方に、一応の解決策を提供します。

結論

解決策は以下。
- 空の__init__.pyをまず作る。
- コマンド実行時に..で一階層上がってからフォルダ指定する。(理由はわからないです)

環境

  • OS ... Windows 10 64bit(Home)
  • Python実行環境 ... Minicondaでconda仮想環境を作成
    • pylint 2.5.2
    • astroid 2.4.1
    • Python 3.7.9 (default, Aug 31 2020, 17:10:11) [MSC v.1916 64 bit (AMD64)]

やったこと

最初フォルダ構成はこんな感じ。

C:\Users\{ユーザー名}\Desktop\project
  └aaa.py

コマンドプロンプトから以下を実行してみた。

(dev) C:\Users\{ユーザー名}\Desktop\project>pylint *.py
************* Module *.py
*.py:1:0: F0001: No module named *.py (fatal)

あれ。。。ワイルドカード使えない?

いろいろ調べて、__init__.pyを同じ階層に作れば行けそうな雰囲気を感じた。
__init__.pyは空のファイルで良い。

C:\Users\{ユーザー名}\Desktop\project
 ├__init__.py
  └aaa.py

これなら以下で行けるか?

(dev) C:\Users\{ユーザー名}\Desktop\project>pylint .
(dev) C:\Users\{ユーザー名}\Desktop\project>

これもダメ。。。
念のため1階層上でも試してみる。

(dev) C:\Users\{ユーザー名}\Desktop\project>cd ..
(dev) C:\Users\{ユーザー名}\Desktop>pylint project
************* Module project.aaa.py
project\aaa.py:24:0: C0301: Line too long (109/100) (line-too-long)
(そのほか多数)
-----------------------------------
Your code has been rated at 2.20/10

(dev) C:\Users\snkmr\Desktop\repo>

お、できた!!!でも階層上がらないとできないの不便すぎる...
もしかしてワンチャンこれならいける??

(dev) C:\Users\{ユーザー名}\Desktop>cd project
(dev) C:\Users\{ユーザー名}\Desktop\project>pylint ..\project
************* Module project.aaa.py
project\aaa.py:24:0: C0301: Line too long (109/100) (line-too-long)
(そのほか多数)
-----------------------------------
Your code has been rated at 2.20/10

(dev) C:\Users\snkmr\Desktop\repo>

行けた!!!これが正しい解決法かわからないけど、一応解決した。

結論(再掲)

解決策は以下。
- 空の__init__.pyをまず作る。
- コマンド実行時に..で一階層上がってからフォルダ指定する。(理由はわからないです)

0
1
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
0
1