A thought experiment:
Question: What is the speed of sound? Answer: 343.2 metres per second, or sound travels a meter in 2.6 mS
What is the distance between the microphones? lets say its 10 cm, or 0.1 metres.
So if you know the above, you should be able to calculate the time the sound has to travel from one microphone to the next, to determine which microphone is closest to the sound source (it's the only way to estimate the direction the sound is coming from). Answer: 2.6 / 10 = 0.26 ms, or 260 µS.
If you do the calculations you will see that python is far too slow to see any difference!
What you want to do is (almost) impossible, using this "phase shift detection" method. Even if you manage to interface three microphones to the same USB device. Most USB soundcards will only do two (stereo), don't even think about using multiple sound cards, the latency (variations of time between detection of the signal, and transfer to the PI) between two different USB devices is far too big, far bigger than the 260 µS from one microphone to the next.
In fact this trick that the human ear and mind can master easily is almost impossible to re-create, except with dedicated electronic circuitry, and then only for short bursts of sounds.
Even if you try to simply use the difference in sound levels to "triangulate", (very error prone) to estimate directions, you still have the problem of multiple synchronized microphone inputs. If you are off by a few hundred µS you are comparing two different waves.