Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Tabs:
- def __init__(self, lines):
- self.lines = lines
- self.i = 0
- def is_skip(self):
- return all(not line[self.i].isdigit() for line in self.lines)
- def get_line_num(self):
- for i in range(6):
- if self.lines[i][self.i].isdigit():
- return i
- def __next__(self):
- count = 0
- if self.i > len(self.lines[0]) - 1:
- raise StopIteration()
- if self.is_skip():
- while self.i < len(self.lines[0]) and self.is_skip():
- self.i += 1
- count += 1
- return '-', (count, None)
- elif self.get_line_num() is not None:
- num = self.get_line_num()
- if self.lines[num][self.i + 1].isdigit():
- res = int(self.lines[num][self.i:self.i+2])
- self.i += 2
- return res, (2, num)
- else:
- res = int(self.lines[num][self.i])
- self.i += 1
- return res, (2, num)
- def __iter__(self):
- return self
- def main():
- frequences = [
- list(range(29, 49)), list(range(24, 44)),
- list(range(20, 40)), list(range(15, 35)),
- list(range(10, 30)), list(range(5, 25))
- ]
- notes = []
- beats = []
- try:
- while True:
- lines = []
- for _ in range(6):
- lines.append(input())
- for n, info in Tabs(lines):
- if n == '-':
- notes.append(str(0))
- beats.append(str(info[0]))
- else:
- notes.append(str(frequences[info[1]][n]))
- beats.append(str(info[0]))
- except KeyboardInterrupt:
- print(",".join(beats))
- print(",".join(notes))
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement