Ball Pythons do not make good "first" snakes. The are very tempermental when it comes to feeding, and when it stops eating, most new hobbyist get worried. Ball pythons have been known to go off feeding for up to 6 to 7 months at a time. That is enough to worry even a seasoned snake person

I purposely do not recomend Ball Pythons to anyone for their first snake.
If I were to suggest a good first snake between the ones you listed, I would go with a Rosy Boa. The are docile, and tend to stay on the small side unlike the common boa which can get over 10' (females).
Do a internet search, buy the books, and learn all you can before you buy any snake (or any animal for that matter).
Good Luck.
Jim