def loop(): interval_list = raw_input('List of intervals?') Intervals = interval_list.split(", ") intervalList = [interval(i) for i in Intervals] try: Intervals = interval_list.split(", ") intervalList = [interval(i) for i in Intervals] except ValueError: print('Invalid interval') except IndexError: print('Invalid interval') while True: interval_input = raw_input('Interval?') if interval_input.upper() == 'QUIT': exit('game is over') try: new_interval = interval(interval_input) intervalList = insert(intervalList, new_interval) string_trans = [str(i) for i in intervalList] string_join = ', '.join(string_trans) print(string_join) except Exception: print( 'the interval you enter is invalid, please re-enter again: ')
def loop(): interval_list = raw_input('List of intervals?') Intervals = interval_list.split(", ") intervalList = [interval(i) for i in Intervals] try: Intervals = interval_list.split(", ") intervalList = [interval(i) for i in Intervals] except ValueError: print('Invalid interval') except IndexError: print('Invalid interval') while True: interval_input = raw_input('Interval?') if interval_input.upper() == 'QUIT': exit('game is over') try: new_interval = interval(interval_input) intervalList = insert(intervalList, new_interval) string_trans = [str(i) for i in intervalList] string_join = ', '.join(string_trans) print (string_join) except Exception: print('the interval you enter is invalid, please re-enter again: ')
def test_insert(self): self.assertEqual( str( insert( [interval("(2,5)"), interval("(10,20]")], interval("[3,6]"))), "[(2,6], (10,20]]") self.assertEqual(str(insert([interval("(9,15]")], interval("[2,5]"))), "[[2,5], (9,15]]")
def test_interval(self): self.assertEqual(interval("[3,8]").lowerBegin, 3) self.assertEqual(interval("[3,8]").upperEnd, 8) self.assertEqual(interval("(3,8]").lowerBegin, 4) self.assertEqual(interval("(3,8]").upperEnd, 8) self.assertEqual(interval("[3,8)").lowerBegin, 3) self.assertEqual(interval("[3,8)").upperEnd, 7) self.assertEqual(interval("(3,8)").lowerBegin, 4) self.assertEqual(interval("(3,8)").upperEnd, 7)
def test_mergeIntervals(self): self.assertEqual( str(mergeIntervals(interval("(1,7]"), interval("[2,9]"))), "(1,9]") self.assertEqual( str(mergeIntervals(interval("[8,9)"), interval("[1,15]"))), "[1,15]") self.assertEqual( str(mergeIntervals(interval("[3,8)"), interval("(6,23)"))), "[3,23)") self.assertEqual( str(mergeIntervals(interval("(1,19)"), interval("[2,6]"))), "(1,19)")
def test_mergeOverlapping(self): self.assertEqual( str( mergeOverlapping([ interval("[2,5]"), interval("(1,4)"), interval("(3,10]"), interval("[12,20)") ])), "[(1,10], [12,20)]") self.assertEqual( str( mergeOverlapping([ interval("(1,3)"), interval("(4,5]"), interval("(10,20]") ])), "[(1,3), (4,5], (10,20]]")
def test_insert(self): self.assertEqual(str(insert([interval("(2,5)"),interval("(10,20]")], interval("[3,6]"))), "[(2,6], (10,20]]") self.assertEqual(str(insert([interval("(9,15]")], interval("[2,5]"))), "[[2,5], (9,15]]")
def test_mergeOverlapping(self): self.assertEqual(str(mergeOverlapping([interval("[2,5]"),interval("(1,4)"),interval("(3,10]"),interval("[12,20)")])), "[(1,10], [12,20)]") self.assertEqual(str(mergeOverlapping([interval("(1,3)"),interval("(4,5]"),interval("(10,20]")])), "[(1,3), (4,5], (10,20]]")
def test_mergeIntervals(self): self.assertEqual(str(mergeIntervals(interval("(1,7]"), interval("[2,9]"))), "(1,9]") self.assertEqual(str(mergeIntervals(interval("[8,9)"), interval("[1,15]"))), "[1,15]") self.assertEqual(str(mergeIntervals(interval("[3,8)"), interval("(6,23)"))), "[3,23)") self.assertEqual(str(mergeIntervals(interval("(1,19)"), interval("[2,6]"))), "(1,19)")