# class to store chromosome sequences class Chromosome: # constructor """Chromosome object constructor""" def __init__(self, chrlist=[], chrcontig=""): self.chrlist = [int(x) for x in chrlist] self.chrcontig = chrcontig # getitem attr """provides list functionality to chromosomes""" def __getitem__(self, key): return self.chrlist[key] # len attr """provides 'len' functionality""" def __len__(self): return len(self.chrlist) # str attr """ provides 'print' functionality""" def __str__(self): return str((self.chrcontig, self.chrlist)) __repr__ = __str__ # repr attrib is same as str # getters and setters def get_chrcontig(self): return self.chrcontig def get_chromosome(self): return self.chrlist def set_chrcontig(self, chrcontig): self.chrcontig = chrcontig def set_chromosome(self, chrlist): self.chrlist = chrlist