我是python的新手但是我设法创建了一个解析器python程序,该程序调用基于Web的xml文件并将元素存储在数组中。然后读取包含xml元素的这些数组并将其发送到localhost数据库。
写入数据库时出现“IndexError”问题,因为其中一个数组包含的元素少于其他数组,这意味着会产生此错误。 有没有人有任何关于如何允许我将字符串附加到数组的建议 - 如果xml文件中没有元素?
获取xml元素并将其分配给“stop_times”数组的代码 -
stop_times = []
for stop in event_main:
stop_time = stop.getElementsByTagName("stop_time")[0]
stop_times.append(stop_time)
是否可以检查“stop_time”变量是否为空/空,如果是,则stop_time等于字符串“null”?任何帮助都非常感谢,凯伦
编辑:我的正确代码(可能会帮助他人):
stop_times = []
for stop in event_main:
try:
stop_time = stop.getElementsByTagName("stop_time")[0].childNodes[0].nodeValue
stop_times.append(stop_time)
except IndexError:
stop_times.append("none")
答案 0 :(得分:1)
如果我理解你的错误,这可能对你有帮助。
stop_times = []
for stop in event_main:
try:
stop_time = stop.getElementsByTagName("stop_time")[0]
stop_times.append(stop_time.firstChild.nodeValue)
except IndexError:
stop_times.append("none")
break