The Python programming language has gradually gained popularity in the field of scientific computing. Nowadays, Python is considered to be a great programming language for scientific computing and has attracted significant interest among computational scientists. It has shown the advantage of scripting language for scientific programming and moreover for parallel programming. In connection with parallel computing, Python has been used to simplify, in particular, message-passing based parallel programming. A number of different Python MPI modules have lately been developed, such as pypar, mpi4py, pyMPI, etc. At the moment, the existing Python MPI modules differ substantially in syntax, functionality, and performance. This is to a large extent confusing to the scientific community. This thesis aims to provide a rigorous comparison of the existing Python MPI modules. Through a well-designed set of numerical programming cases, the programming style, completeness of functionality, and the parallel performance will be studied. A guideline on choosing suitable MPI modules will then be produced.