0
1

世にも奇妙な物語: due to a circular import

Posted at

それは突然明らかになった。

ある日,import pandas as pd をやったときに,エラーメッセージを吐いた。

>>> import pandas as pd
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/*****/pandas.py", line 2, in <module>
    print(pandas.__version__)
          ^^^^^^^^^^^^^^^^^^
AttributeError: partially initialized module 'pandas' has no attribute '__version__' (most likely due to a circular import)

どうせ,pip のやり直しで片付くだろうと uninstall して install し直したりしたけど解決しない。しばらく放っておいて,「さてしもあるべからずとて」,エラーメッセージをよくよく(今更!!!)読んでみると,どうもユーザディレクトリにある pandas.py というのが原因だと言っているではないか。そもそも,そんなファイルを作った記憶がないので無視していたというかことの重大さに気づかなかったのではあるが。

で,件のディレクトリに行ってみると,確かに pandas.py というファイルが有り,その中身は

import pandas
print(pandas.__version__)

であった。こんなファイル作った記憶がないし,そもそも,そんなファイル作ろうと思うはずはないし。でも,ほぼ 1 か月前に作られたファイルであった。

なんかのマルウエアに感染したか?

よくわからないまま,そのファイルを削除したら,めでたく pandas を include できましたとさ。

めでたしめでたしとは言っても,一抹の不安は残る。
なんで,pandas.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