我想檢查一下Django應用程序中的某些xml是否具有某些元素/節點,如果不是隻是跳過該代碼塊。我檢查的元素實存使用hasattr(),它應該返回false如果元素不存在:hasattr()拋出AttributeError
if hasattr(product.ItemAttributes, 'ListPrice') \ and hasattr(product.Offers.Offer.OfferListing, 'PercentageSaved') \ and hasattr(product.LargeImage, 'URL'):
除了在我的情況下,它拋出一個屬性錯誤: AttributeError at /update_products/ no such child: {http://webservices.amazon.com/AWSECommerceService/2011-08-01}LargeImage
我不明白爲什麼它會拋出一個錯誤,而不是僅僅返回false而讓我跳過代碼塊?
也許'product.ItemAttributes','product.Offers.Offer.OfferListing','product.LargeImage'之一不存在?最有可能的是'product.LargeImage'。 –