2015-11-10 3 views
6

という名前のモジュール私は単純にXMLファイル解析しようとしています:Pythonのエラー:はImportError: 'xml.etree'

import xml.etree.ElementTree as ET 
tree = ET.parse('country_data.xml') 
root = tree.getroot() 

をが、これは私を与える:

import xml.etree.ElementTree as ET 
ImportError: No module named 'xml.etree' 

私は、Python 3.5を使用しています。私はPython 2.7と3.4で同じコードをしようとしましたが、私はいつもこのエラーを受け取ります。私は、XMLライブラリが標準として提供されると考えました。

enter image description here

、なぜそれがモジュールを拾うことはできません。また、私は私のLibフォルダ内にあることがわかりますか?私は本当に混乱しています。どこかで環境変数を変更する必要がありますか?

助けてください。

+0

心配しないでください。私の開発パッケージはxmlという名前でした。私は名前を変更して今すぐ動作します – AbtPst

答えて

13

は、現在のディレクトリから、その中にファイル__init__.pyでファイルまたはディレクトリxml.pyxmlを削除して再試行してください。モジュールをインポートするとき、Pythonはまずカレントディレクトリを検索します。現在のディレクトリにあるxml.pyという名前のファイルまたはxmlという名前のファイルは、同じ名前の標準ライブラリパッケージをシャドウします。

KeshVのコメントで指摘されているように、ファイルxml.pyc(存在する場合)も削除する必要があります。 Python 2では、それはxml.pyと同じディレクトリにあります。 Python 3ではサブディレクトリ__pycache__にあります。一般に、*.pyファイルがある限り、対応する*.pycファイルを削除することができます。これは、*.pyファイルのインポート時にPythonがファイルを再作成するためです。

+0

その名前のファイルはありません – AbtPst

+0

私のファイルはparse.pyと呼ばれています – AbtPst

+0

そこにサブディレクトリ 'xml'がありますか? –