I'm partial to creating Python scripts. It's more fun to write code than to mess around with connecting lines to boxes and such, for me at least.
What's really great about Python scripting is you can schedule your scripts to run at a time that is convenient for you. If you have a script that takes a while to complete, or needs to be run outside of regular business hours, this is really convenient. You can see an example of how to schedule a script here.
And as @Aaron mentions, you can easily set up looping in a Python script.
If you're just setting out with Python scripting, you might want to create a model with Model Builder and export it as a Python script. I do this sometimes if I'm having trouble understanding how to use several tools in a script. It could help you get a sense for how to put scripts together.