If you need user input, use operator properties or a property added to a panel and used by an operator.
If you want to stop a script, you might want to throw an exception.
input() doesn’t work in PyConsole, it sort of does in Text editor if a terminal window is opened. But it requires to switch windows and not very convenient. If there’s no command prompt, the process will hang forever.