class Keyboard: """A Keyboard takes in a list of buttons, and has a dictionary of positions as keys, and Buttons as values. >>> b1 = Button ("button1", "H") >>> b2 = Button ("button2", "I") >>> k = Keyboard ([b1, b2]) >>> "button1" in k.buttons.keys () # Make sure to add the button to dictionary True >>> k. buttons ["button1"]. letter 'H' >>> k. buttons ["button1"].name 'button1' >>> k. press ("button1") 'H' >>> k. press ("button100") 11 >>> b1.pressed 1 >>>b2.pressed 0 >>> k. typing ( ["button1", "button2"]) 'HI' >>> k. typing ( ["button2", "button1"]) 'IH' >>> b1.pressed # make sure typing calls press! 3 >>> b2.pressed 2 ||||| def _init__(self, buttons): self.buttons = {} "*** YOUR CODE HERE ***" def press (self, name): ""Takes in a name of the button pressed, and returns that button's letter. Return an empty string. if the button does not exist. You can access the keys of a dictionary d with d. keys (). *** "***** YOUR CODE HERE *****" def typing (self, typing_input): """Takes in a list of names of buttons to be pressed, and returns the total output. Make sure to call self.press""" "***** YOUR CODE HERE *****" class Button: def _init__(self, name, letter): self.name = name self. letter = letter

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question
### Class: Keyboard

A `Keyboard` class is being defined, which takes in a list of buttons and maintains a dictionary with positions as keys and Button objects as values.

#### Code Implementation

```python
class Keyboard:
    """A Keyboard takes in a list of buttons, and has a dictionary of positions as keys, and Buttons as values."""

    # Example of how to create buttons and a keyboard
    >>> b1 = Button("button1", "H")
    >>> b2 = Button("button2", "I")
    >>> k = Keyboard([b1, b2])
    
    # Ensure the button is added to the dictionary
    >>> "button1" in k.buttons.keys()
    True

    # Accessing properties of the button
    >>> k.buttons["button1"].letter
    'H'
    >>> k.buttons["button1"].name
    'button1'
    
    # Pressing a button and returning the letter
    >>> k.press("button1")
    'H'
    
    # Trying to press a non-existent button
    >>> k.press("button100")
    ''

    # Checking if a button was pressed
    >>> b1.pressed
    0
    >>> b2.pressed
    0
    
    # Simulating typing by pressing a series of buttons
    >>> k.typing(["button1", "button2"])
    'HI'
    >>> k.typing(["button2", "button1"])
    'IH'
    
    # Ensure typing calls press
    >>> b1.pressed
    3
    >>> b2.pressed
    2

def __init__(self, buttons):
    self.buttons = {}
    """*** YOUR CODE HERE ***"""

def press(self, name):
    """Takes in a name of the button pressed, and returns that button's letter. Returns an empty string if the button does not exist. You can access the keys of a dictionary d with d.keys()."""
    """*** YOUR CODE HERE ***"""

def typing(self, typing_input):
    """Takes in a list of names of buttons to be pressed, and returns the total output. Make sure to call self.press."""
    """*** YOUR CODE HERE ***"""


class Button:
    def __init__(self, name, letter):
        self.name = name
        self.letter = letter
        self.pressed = 0
```

#### Explanation

- **
Transcribed Image Text:### Class: Keyboard A `Keyboard` class is being defined, which takes in a list of buttons and maintains a dictionary with positions as keys and Button objects as values. #### Code Implementation ```python class Keyboard: """A Keyboard takes in a list of buttons, and has a dictionary of positions as keys, and Buttons as values.""" # Example of how to create buttons and a keyboard >>> b1 = Button("button1", "H") >>> b2 = Button("button2", "I") >>> k = Keyboard([b1, b2]) # Ensure the button is added to the dictionary >>> "button1" in k.buttons.keys() True # Accessing properties of the button >>> k.buttons["button1"].letter 'H' >>> k.buttons["button1"].name 'button1' # Pressing a button and returning the letter >>> k.press("button1") 'H' # Trying to press a non-existent button >>> k.press("button100") '' # Checking if a button was pressed >>> b1.pressed 0 >>> b2.pressed 0 # Simulating typing by pressing a series of buttons >>> k.typing(["button1", "button2"]) 'HI' >>> k.typing(["button2", "button1"]) 'IH' # Ensure typing calls press >>> b1.pressed 3 >>> b2.pressed 2 def __init__(self, buttons): self.buttons = {} """*** YOUR CODE HERE ***""" def press(self, name): """Takes in a name of the button pressed, and returns that button's letter. Returns an empty string if the button does not exist. You can access the keys of a dictionary d with d.keys().""" """*** YOUR CODE HERE ***""" def typing(self, typing_input): """Takes in a list of names of buttons to be pressed, and returns the total output. Make sure to call self.press.""" """*** YOUR CODE HERE ***""" class Button: def __init__(self, name, letter): self.name = name self.letter = letter self.pressed = 0 ``` #### Explanation - **
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 2 images

Blurred answer
Knowledge Booster
Class
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education