0

我在 Python 3.7.6 中使用 xmltodict 并且遇到了一个问题,有时我的数据是一个列表,有时我的数据是一个有序字典。这是一个代码:

import xmltodict
myData = list()

myData.append (xmltodict.parse("""
<DataTimes>
<DataTime>
<FromTime>00:00:00</FromTime>
<ToTime>23:59:59</ToTime>
</DataTime>
</DataTimes> """))
myData.append (xmltodict.parse("""
<DataTimes>
<DataTime>
<FromTime>00:00:00</FromTime>
<ToTime>01:00:00</ToTime>
</DataTime>
<DataTime>
<FromTime>03:00:00</FromTime>
<ToTime>04:00:00</ToTime>
</DataTime>
<DataTime>
<FromTime>06:00:00</FromTime>
<ToTime>07:00:00</ToTime>
</DataTime>
</DataTimes>""") )

for i in range(len(myData)):
    for values in myData[i].get("DataTimes").values():
        print(type(values))
        if isinstance(values, list): #treat the data as a list
           for myDataTime in values:
              print(myDataTime.get("FromTime"))
        else: #treat the data as a dictionary
             print(values.get("FromTime"))

我必须不断为我在数据中查看的每个新数据输入编写一个列表检查,因为我永远无法确定我是否会在 index[0] 中有一组数据或在 index[1] 中有多组数据]。有没有更简洁的方法来访问列表或有序字典?

4

0 回答 0