In the wild, pythons eat a wide variety of different animals, including lizards, birds, rodents and other small animals. Pythons are generally ambush hunters that catch and eat whatever they can, and some bigger pythons have been known to eat monkeys, pigs and even small leopards.
When a python is hungry enough, it may even kill prey that is much too large for it to eat. National Geographic has a video of a python that died attempting to swallow an entire antelope, and there are also many reports of pythons killing and attempting to eat both children and adult humans.
There are many different species of pythons that live around the globe, and the diet of each species is determined by what animals live in the same ecosystem. For instance, pythons that live in the desert eat gerbils and other desert rodents, while pythons that live in tropical rainforests are more likely to eat monkeys or other jungle animals.
Pythons are constrictors, meaning they kill their prey by wrapping themselves around it and squeezing it to death. Most pythons only eat live animals unless extremely hungry, although pythons in captivity are often fed dead rabbits or other rodents. Pythons always eat their prey whole, no matter what size it is, and must then find a warm spot to rest in order to digest their food.