I'm not saying that it is a 'cure all', but actually make -n lets you dry run, and test out your rules before you actually use them (with "touch"), and in most cases I'm sure that that is faster than both reading the manual, and writing a python library for replicating the functionality (reinvent the wheel).
Now, this approach depends of course how well you know make to begin with. But there are a lot of examples out there, and the man pages of GNU make are quite good. It is quite true to the old make facility, so even older book examples should work with it.