【问题标题】:xmltodict throwing errors when used in a .py filexmltodict 在 .py 文件中使用时抛出错误
【发布时间】:2016-02-05 18:25:40
【问题描述】:

我想在 python2.7 中为我拥有的项目启动并运行 xmltodict,所以我首先从我能找到的唯一示例中复制粘贴

import xmltodict

with open ('test.xml') as fd:
    doc = xmltodict.parse(fd.read())

print doc

尝试运行会导致错误:AttributeError: 'module' object has no attribute 'parse'

尝试使用 xmltodict.unparse 函数将 dict 转换为 xml 时也是如此。

但是,如果我在 IDLE 中逐行执行此操作,它会起作用...知道为什么尝试在 .py 文件中运行它时会失败,但当我逐行使用解释器时会起作用吗?

【问题讨论】:

    标签: python xmltodict


    【解决方案1】:

    只是不要将您的脚本命名为xmltodict.py。它是 getting imported 而不是安装到 Python 环境中的 xmltodict 包。

    【讨论】:

    • 我的脚本被称为 xml.py,而不是 xmltodict.py。将其重命名为“test.py”并没有改变错误。
    • @KBriggs 然后查找名为 xmltodict 的其他脚本。当您在脚本中导入 xmltodict.__file__ 时,它的值是多少?谢谢。
    • 我删除了 xml.py,突然 test.py 工作了。显然导入 xmltodict 也是在导入 xml.py?也许 xmltodict 内部有一个导入,它导入 xml.py 并破坏了一切。
    • 所以我想这里的教训是“不要为你的脚本命名任何与你正在导入的包相关的东西,以免你复制一些东西”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-16
    • 1970-01-01
    • 2021-06-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多