My general rule for handling is I usually wont handle a ball python until it has eaten at least twice for me, for two consecutive feedings. As for how to read your ball python: a relaxed ball python will not be very reactive to your touch and probably wont be following your every movement. A relaxed ball python should be flickering its tongue long and at a consistent rate (normally, you would see them flicker their tongue every 2-3 seconds while moving their head around). This means that it is just taking in particals in the air and "processing" them, because he is wondering what is going on. Healthy tongue flickering is usually a good sign that they come in peace.
You can tell when a ball python is acting agressive a few ways. 1) It will be very reactive to your touch. It will likely tense up and try to slither away when you try to touch it. 2) It will most probably hiss. Some snakes hiss really loud and others very soft. Dont be scared though, it is just trying to trick you into thinking it is dangerous and shouldnt be messed with. 3) Most agressive hatchlings I've dealt with would usually follow my every movement once I pulled their tubs out to try and handle. They will tend to form an "S" with their head/neck, as if ready to strike. But usually they tend to grow out of this agressive behaviour after a few short handling sessions.
Remember to keep your first few handling sessions short (5-10 minutes) and as you come to know your ball python better and it is feeding more and more, you can extend this time period to about 30-60 minutes. Good luck! I remember how exciting it was for me to get my first ball python. After no time at all, all of this stuff will be second nature to you