Untitled
unknown
plain_text
2 years ago
1.6 kB
8
Indexable
class RhythmPattern:
def __init__(self):
self.kick = []
self.snare = []
self.hi_hats = []
self.rims = []
self.cymbal = []
self.percussion = []
def add_instrument(self, instrument, pattern):
if instrument == 'kick':
self.kick = pattern
elif instrument == 'snare':
self.snare = pattern
elif instrument == 'hi_hats':
self.hi_hats = pattern
elif instrument == 'rims':
self.rims = pattern
elif instrument == 'cymbal':
self.cymbal = pattern
elif instrument == 'percussion':
self.percussion = pattern
else:
print("Invalid instrument name")
def display_pattern(self):
print("Kick:", self.kick)
print("Snare:", self.snare)
print("Hi-Hats:", self.hi_hats)
print("Rims:", self.rims)
print("Cymbal:", self.cymbal)
print("Percussion:", self.percussion)
def main():
pattern = RhythmPattern()
print("Rhythm Writing Program")
print("Available instruments: kick, snare, hi_hats, rims, cymbal, percussion")
print("Enter 'done' when finished\n")
while True:
instrument = input("Enter instrument name: ")
if instrument == 'done':
break
pattern_str = input("Enter rhythm pattern (e.g., x-x-x-x): ")
pattern_list = pattern_str.split('-')
pattern.add_instrument(instrument, pattern_list)
print("\nRhythm Pattern:")
pattern.display_pattern()
if __name__ == "__main__":
main()
Editor is loading...