python - 如何循环遍历 XML 行?
问题描述
我有一个像这样的xml结构:
<Resident Id="100">
<Name>Sample Name</Name>
<PhoneNumber>12345642357891</PhoneNumber>
<EmailAddress>sample_name@example.com</EmailAddress>
<Address>
<StreetLine1>Street Line1</StreetLine1>
<City>City Name</City>
<StateCode>AE</StateCode>
<PostalCode>12345</PostalCode>
</Address>
</Resident>
我想遍历每一行,而我可以执行以下操作(片段)
for element in root:
listOfAttribAndValues = []
listOfAttribAndValues.append(int(element.get("Id")))
listOfAttribAndValues.append(element.find('Name').text)
#and so on and then write them to a list, and then write the list to a csv file
writer.writerow(listOfAttribAndValues)
有没有一种简单的方法可以遍历每一行(Name
,PhoneNumber
等),而不是明确地找出每个项目的值?
解决方案
你的解决方案是正确的。正如评论中提到的,没有 XML“行”的概念。XML 是一棵树。这些项目与其父元素和子元素相关联,但彼此不相关。事实上,树中相同深度的元素之间没有特定的顺序可以保证或预期。
这里的答案可能有助于改进您的代码: https ://stackoverflow.com/a/31844901/2713818
推荐阅读
- python - 根据图像python中的边框裁剪图像
- powerbi - Power BI DAX:将 2 行数据除以得出第 3 行
- tensorflow - Tensorflow/WSL2 GPU 内存不足,未使用全部可用?
- python - 为什么进行 torch.nn.conv2d 操作时 requires_grad 会从 true 变为 false?
- arm - 缺少 IAR Embedded Workbench 菜单栏
- javascript - 将不同尺寸的相同产品添加到购物车
- sql - 使用 SQL 识别存在指定唯一分组/组合的实例
- python - 如何在 Python 中获取字符的位置并将其存储在变量中?
- php - 将大字符串分成较小的组?
- javascript - 使用 jest.mock 进行多个测试