I have a program that runs a long process after you click an action button. As the process is running the root window will say that it is not responding even though I know
While you can call root.update() in your loop, this will still produce some (potentially) undesirable side-effects.
As an alternative I would suggest that you implement simple multi-threading. Python multithreading is pretty simple, and will prevent both of these drawbacks. You will be able to execute your long running code, while still providing a clean and responsive UI.
If your application is trivially parallelizable, you could use multiple threads to decrease running time. Ex. Thread 1 handles entries 1-100, while thread 2 handles entries 101-200.