title: When should I use uuid.uuid1() vs. uuid.uuid4() in python?
body: <p>I understand the differences between the two from the <a href="http://docs.python.org/2/library/uuid.html" rel="noreferrer">docs.</a></p>
  
  <p><code>uuid1()</code>:<br>
  Generate a UUID from a host ID, sequence number, and the current time</p>
  
  <p><code>uuid4()</code>:<br>
  Generate a random UUID.</p>
  
  <p>So <code>uuid1</code> uses machine/sequence/time info to generate a UUID.  What are the pros and cons of using each?</p>
  
  <p>I know <code>uuid1()</code> can have privacy concerns, since it's based off of machine-information.  I wonder if there's any more subtle when choosing one or the other.  I just use <code>uuid4()</code> right now, since it's a completely random UUID.  But I wonder if I should be using <code>uuid1</code> to lessen the risk of collisions.</p>
  
  <p>Basically, I'm looking for people's tips for best-practices on using one vs. the other.  Thanks!</p>