OneCompiler

on press / on release

334
 import pynput
from pynput import keyboard 

def on_press(key):
    try:
        print('Key {0} pressed'.format(key))
    except AttributeError:
        print('Key {0} pressed'.format(key))

def on_release(key):
    print('{0} released'.format(key))
    if key == keyboard.Key.esc:
        # Stop listener
        return False

# Collect events until released
with keyboard.Listener(
        on_press=on_press,
        on_release=on_release) as listener:
    listener.join()