Pythonで「most likely due to a circular import」エラーが出た場合の対処法

code coder coding computer Python
Photo by Pixabay on Pexels.com

タイトルの通り「most likely due to a circular import」のエラーが出た時の対処法を備忘録として書きます。

エラー内容

今回はpandasを使おうとした時にエラーが発生しました。
エラーの全文は次の内容です。

「AttributeError: partially initialized module ‘pandas’ has no attribute ‘Series’ (most likely due to a circular import)」

コードは以下のようなとても簡単なコードです。

import pandas as pd

ser = pd.Series([1, 2, 3, 4])
print(ser)

原因

調べてみるとどうやら、ファイル名を「pandas.py」にしたことが原因みたいです。

コードの「imoprt pandas」で自分自身のファイルを読み込んでいるため、だからエラー文にある「circular import(循環インポート)」となっているんですね。

原因が分かれば超絶簡単な話しですが、プログラム初心者だとわからないので困りました(笑)

同じようなことで困っている方も見かけました。

AttributeError: partially initialized module ‘pandas’ has no attribute ‘DataFrame’

Pythonでファイル名が悪くてimportでハマった

対処法

原因がファイル名であることが分かったので、「pandas.py」の名前を変更することで無事エラーなく実行することができました。

変更前     変更後
pandas.py ⇒ pandas-test.py

結構簡単なことでも初心者だと困ったりするんですよね。。

Pythonが標準で持っているビルドイン関数と同じファイル名を利用しないようにすることが大事ですね。勉強になりました。

短いですが今回は以上となります。ありがとうございました。

 

コメント

  1. toto より:

    同じ状況でここにたどり着きました
    大変ありがたい

タイトルとURLをコピーしました