I assure you, it's not that simple. You either check types at runtime (big performance penalty, aka: C Python) or you don't because a compiler (or JIT) did the leg work.
If you have to double check types at runtime, you've already lost.
If you have to double check types at runtime, you've already lost.
Now if it isn't correct, you'll probably get a segfault or some nasty error and it'll blow up.