import os import atexit import readline state_home = os.environ.get("XDG_STATE_HOME") if state_home is None: state_home = os.path.join(os.path.expanduser('~'), ".local", "state") history = os.path.join(state_home, "python_history") try: readline.read_history_file(history) except OSError: pass def write_history(): try: readline.write_history_file(history) except OSError: pass atexit.register(write_history)