I have no idea why people use C outside of embedded. Seems like pointless self-flagellation, since C++ does more and most computers have so much memory that it doesn't matter.
I've actually only written somthing in C, but not C++, so maybe I'm just missing something really obvious.
C does seem more low-level to me, though. As in, it maps closer to what the hardware does. Python is just completely abstracted away, in comparison. You can just write garbage code and it runs, even if you have no clue what the computer is actually doing. The code looks like 40% of the information is missing and it sort of freaks me out.