python xml与字典的相互转换

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python xml与字典的相互转换相关的知识,希望对你有一定的参考价值。

def trans_xml_to_dict(xml):
  """
  将微信支付交互返回的 XML 格式数据转化为 Python Dict 对象
 
  :param xml: 原始 XML 格式数据
  :return: dict 对象
  """
 
  soup = BeautifulSoup(xml, features=‘xml‘)
  xml = soup.find(‘xml‘)
  if not xml:
    return {}
 
  # 将 XML 数据转化为 Dict
  data = dict([(item.name, item.text) for item in xml.find_all()])
  return data
 
 
def trans_dict_to_xml(data):
  """
  将 dict 对象转换成微信支付交互所需的 XML 格式数据
 
  :param data: dict 对象
  :return: xml 格式数据
  """
 
  xml = []
  for k in sorted(data.keys()):
    v = data.get(k)
    if k == ‘detail‘ and not v.startswith(‘<![CDATA[‘):
      v = ‘<![CDATA[{}]]>‘.format(v)
    xml.append(‘<{key}>{value}</{key}>‘.format(key=k, value=v))
  return ‘<xml>{}</xml>‘.format(‘‘.join(xml))

以上是关于python xml与字典的相互转换的主要内容,如果未能解决你的问题,请参考以下文章

Python——json格式数据与字典相互转换

Python - 列表与字典相互转换

Python 字符串/列表/元组/字典之间的相互转换

python中 将字符串和字典的相互转换

python字符串列表字典相互转换

python 字符串,列表,元组,字典相互转换