学习python操作xml文档过程中碰到的ImportError: No module named etree.ElementTree问题,问题现象比较奇怪,做个记录。

操作环境

Python3.6+Window7

操作步骤(发现问题)

  1、创建了一个xml文件,文件名为student.xml

2、创建xml.py文件,代码如下:

import xml.etree.ElementTree as ET

try:
ET.parse("student.xml")
print "student.xml ok"
except:
print "student.xml bad"
print e

问题现象

执行完一次xml.py文件后再次执行xml.py总是提示ImportError: No module named etree.ElementTree错误,手工import xml也是报相同的错误。现象如下

>>> import xml
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "xml.py", line 1, in <module>
import xml.etree.ElementTree as ET
ImportError: No module named etree.ElementTree

问题分析    

这个现象奇怪的地方在于手工import xml正常来说是和我原来的文件不相干的,正常来说应该提示如下错误

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named xml

开始以为是没有退出环境的原因,退出重新登录依然如此。考虑import模块导入加载的顺序。python首先查找当前路径、然后查找lib目录、site-packages目录(Python\Lib\site-packages)和环境变量PYTHONPATH设置的目录。

这里,我们就知道是python代码文件命名的原因,这样就会导致import首先加载xml.py,从而导致问题发生。所以文件名不能命名为xml.py。

问题解决

删除xml.py所在的目录下的xml.pyc文件,修改文件名重新执行。

ImportError: No module named etree.ElementTree问题解决方法的更多相关文章

  1. ImportError: No module named etree.ElementTree

    ImportError: No module named etree.ElementTree 排查N久,才发现是因为文件名是xml.py的缘故,文件名一定不要用关键词.....

  2. python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'的解决方法:

    全文转载至:http://www.cnblogs.com/testyao/p/5658200.html python3中用HTMLTestRunner.py报ImportError: No modul ...

  3. ImportError: No module named bs4错误解决方法

    前言:毕业论文打算用Python做爬虫爬一些数据,最近开始入门Python: 在学习的时候遇到一个问题,按照看的文章安装了Python,也配置了相应的环境(使用window系统),使用pycharm编 ...

  4. win7下python3.4 ImportError: No module named 'MySQLdb'错误解决方法

    首先,安装PyMySQL C:\Users\fnngj>python -m pip install PyMySQL 执行以下命令会报错: ImportError: No module named ...

  5. Python安装模块出错(ImportError: No module named setuptools)解决方法

    原地址:http://www.cnblogs.com/BeginMan/archive/2013/05/28/3104928.html 在window平台下安装第三方模块时,出现这样的错误:

  6. Python ImportError: No module named 'requests'的解决方法

    import requests报错 Python ImportError: No module named 'requests'可能是requests没有安装 安装流程 1.cmd 2.cd D:\p ...

  7. 全网最详细的跑python2.7时出现from mysql import connector ImportError: No module named mysql的问题解决办法(图文详解)

    不多说,直接上干货! C:\Users\lenovo>pip install mysql-connector-python-rf== Collecting mysql-connector-pyt ...

  8. Python 3:ImportError “No Module named Setuptools”的解决方法

    sudo apt-get install python-setuptools python3-setuptools

  9. python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'如何解决

    python3中用HTMLTestRunner.py报ImportError: No module named 'StringIO'的解决方法: 1.原因是官网的是python2语法写的,看官手动把官 ...

随机推荐

  1. HTTP RFC解析

    HTTP协议(HyperText Transfer Protocol,超文本传输协议)HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统.它于1990年提出, ...

  2. Windows平台下使用CodeBlocks+GCC编译器生成动态dll,C#调用报错

    报无法加载dll错误,解决方法: 1) 编译选择设置成x86,即-m322) 必须在c#程序目录下加上libgcc_s_dw2-1.dll

  3. OA-DB-LINUX安装说明

    HOST配置: HOST1:OADB-NODE1.LSTECH.COM HOST2:OADB-NODE2.LSTECH.COM 每台主机配置两个不同VLAN的IP地址 OSUSER:oracle 1. ...

  4. 00009 - cat、tail、head、tee、wc、sort文件操作和过滤

    绝大多数命令行工作是针对文件的.我们会在本节中讨论如何观察及过滤文件内容,使用一条命令从文件中提取所需信息,以及对文件的内容进行排序. cat.tail.head.tee:文件打印命令这些命令的语法基 ...

  5. 好文推荐:转载一篇别人kaggle的经验分享

    转载:https://www.toutiao.com/i6435866304363627010/ 笔者参加了由Quora举办的Quora Question Pairs比赛,并且获得了前1%的成绩.这是 ...

  6. hive之权限问题AccessControlException Permission denied: user=root, access=WR

    问题描述:在集群上,用hive分析数据出现如下错误 FAILED: Execution Error, return code from org.apache.hadoop.hive.ql.exec.D ...

  7. C,Java,C#数据类型对比总结

  8. .NET Core和.NET Standard

    作为.NET家族的最新成员,有很多关于.NET Core和.NET Standard的误解,以及它们于.NET Framework之间的区别.在这篇文章,我会准确的解释他们究竟是什么,并看看何时应选择 ...

  9. Ruby学习笔记6: 动态web app的建立(3)--多Model之间的交互

    We first built a static site which displayed a static image using only a Controller and a View. This ...

  10. Spring MVC 学习笔记12 —— SpringMVC+Hibernate开发(1)依赖包搭建

    Spring MVC 学习笔记12 -- SpringMVC+Hibernate开发(1)依赖包搭建 用Hibernate帮助建立SpringMVC与数据库之间的联系,通过配置DAO层,Service ...