使用xmltodict从已解析的xml文件的键中删除特殊字符

问题描述 投票:2回答:4

我已经使用xmltodict模块解析了一个xml文件,结果存储在词典字典中。

现在我要删除字典中每个键的特殊字符@#。>>

def remove_using_json(parse_result):
    data = {}
    data = json.dumps(parse_result)
    #print data
    #for d in data:
    for key, value in data.iterkeys():
        if key[0] == '@':
            data[key]=key.strip("@")
        elif key[0] == '#':
            data[key] =key.strip("#")

我已经使用xmltodict模块解析了一个xml文件,结果存储在字典的字典中。现在,我想删除字典中每个键中的特殊字符@和#。 def ...

python xml xml-parsing xmltodict
4个回答
10
投票

您不应该从响应中删除这些特殊字符。


2
投票

没有直接的方法可以在解析期间消除它们,因为它们用于表示属性和文本节点,从而可以将它们与元素区分开(如果不存在,则输出将不可用。]]

例如


2
投票

要从字典的键中删除@,请使用attr_prefix=''作为xmltodict.parse()函数的参数。要从字典键中删除#,请使用cdata_key='text'作为xmltodict.parse()函数的参数。


1
投票

发生这种情况是因为您的功能没有深入”。因此,让我们从@Matthew答案中获取示例字典:

© www.soinside.com 2019 - 2024. All rights reserved.