我有一个这样的 XML 文件:
<?xml version="1.0" encoding="UTF-8"?>
<data>
<head>
<version>1.0</version>
<project>hello, world</project>
<date>2020-08-15</date>
</head>
<file name="helloworld.py"/>
<file name="helloworld.ps1"/>
<file name="helloworld.bat"/>
</data>
我需要在元素之间没有空格的 head 元素中获取数据,如下所示:
<version>1.0</version><project>hello, world</project><date>2020-08-15</date>
然后散列它。现在,我必须进行一些字符串操作才能将其合并为一行:
root = ET.parse('myfile.xml').getroot()
header = ET.tostring(root[0]).decode('utf-8')
import re
header = re.sub('\n','',header)
header = re.sub('>\s+<','><',header)
header = header.replace('<head>','')
header = header.replace('</head>','')
header = header.strip()
有没有更简单的方法来做到这一点?Powershell XML 对象有一个简单的 InnerXML 属性,它为您提供一个元素中没有空格的 XML 作为字符串。Python 是否有一种方法可以使这更容易?
精慕HU
开满天机
红糖糍粑
相关分类