<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def segments(self):
 """ A list of `Segment` objects. The list starts with the *non-zero* label. The returned list has a length equal to the number of labels and matches the order of the ``labels`` attribute. """


        segments = []
        for label, slc in zip(self.labels, self.slices):
            segments.append(Segment(self.data, label, slc,
                                    self.get_area(label)))
        return segments