It seems rare to read of a Python \"virtual machine\" while in Java \"virtual machine\" is used all the time.
Both interpret byte codes; why call one a virtual machi
No, they don't both interpret byte code.
Python only interprets bytecode if you are running with pypy. Otherwise it is compiled into C and interpreted at that level.
Java compiles to bytecode.