23
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Pythonでtest.pyを作るな!

Posted at

「え? なんで?」と思われた方もいらっしゃるかもしれませんが、Pythonの標準ライブラリには、testというパッケージがあるので、test.pyやtest.pyがimportするモジュールが、このパッケージを利用するとエラーが発生します。test.pyという名前のスクリプトは極力作らない方がいいです。

実際に試したのが下記のログです。

$ echo from test import support >test.py
$ python test.py
Traceback (most recent call last):
  File "test.py", line 1, in <module>
    from test import support
  File "/tmp/tmp.TWTFmPjXqY/test.py", line 1, in <module>
    from test import support
ImportError: cannot import name support
$ mv test.py test_.py
$ python test_.py
$ 

test.pyでfrom test import supportを実行するとImportErrorが発生しますが、test_.pyにリネームしてから実行すればエラーにならないことが分かります。

以上、前に引っかかって気をつけていたのに、うっかり忘れて再度引っかかったので自戒を込めて書いたTipsでした。

23
20
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
23
20

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?