def create_from_dict(dict): categories = [] for tup in dict['categories']: categories += YelpCategory.get_from_yelp_tuple(tup) if len(categories) == 0: categories.append(YelpCategory.get_default()) item = YelpItem( id=dict['id'], name=dict['name'], image_url=dict['image_url'] if 'image_url' in dict else None, url=dict['url'], phone=dict['phone'] if 'phone' in dict else None, rating=dict['rating'], review_count=dict['review_count'], location=Location.create_from_yelp_dict(dict['location']), categories=categories ) return item