title: Which is faster in Python: x**.5 or math.sqrt(x)?
body: <p>I've been wondering this for some time. As the title say, which is faster, the actual function or simply raising to the half power?</p>
  
  <p><b>UPDATE</b></p>
  
  <p>This is not a matter of premature optimization. This is simply a question of how the underlying code actually works. What is the theory of how Python code works?</p>
  
  <p>I sent Guido van Rossum an email cause I really wanted to know the differences in these methods.</p>
  
  <h3>My email:</h3>
  
  <blockquote>
    <p>There are at least 3 ways to do a square root in Python: math.sqrt, the
    '**' operator and pow(x,.5).  I'm just curious as to the differences in
    the implementation of each of these.  When it comes to efficiency which
    is better?</p>
  </blockquote>
  
  <h3>His response:</h3>
  
  <blockquote>
    <p>pow and ** are equivalent; math.sqrt doesn't work for complex numbers,
    and links to the C  sqrt() function. As to which one is
    faster, I have no idea...</p>
  </blockquote>