<SYSTEM_TASK:>
Given the following text description, write Python code to implement the functionality described below step by step
<END_TASK>
<USER_TASK:>
Description:
 Unit 3
Step1:  1. Describe the results.
Now run time.time() again below.
2. Describe the results and compare them to the first time.time() call.
Read the info on the time module here
Step2:  But we digress. Back to random numbers...
The default seed for the first Python random number generator is actually set by the computer (based on the computer time). Then with each subsequent call for a new random number, the previous random number produced is used as the seed for the next number in the sequence. 
4. If the next random number is generated using the one before it, why isn't the series the same every time? (answer the question, then write and run some code to demonstrate what you mean)
<ASSISTANT_TASK:>
Python Code:
import time
time.time()
Explanation: Unit 3: Simulation
Lesson 18: Non-uniform distributions
Notebook Authors
(fill in your two names here)
Facilitator: (fill in name)
Spokesperson: (fill in name)
Process Analyst: (fill in name)
Quality Control: (fill in name)  
If there are only three people in your group, have one person serve as both spokesperson and process analyst for the rest of this activity.  
At the end of this Lesson, you will be asked to record how long each Model required for your team. The Facilitator should keep track of time for your team.
Computational Focus: Non-uniform distributions
As we saw in the previous lesson, a uniform random number distribution can be easily generated and shifted appropriately using Python. Some applications, however, may require a series of random numbers that are not distributed uniformly.  For example, the probability for a system to be at particular energy level as a function of temperature is given by an exponential distribution, the velocities of an ideal gas at a particular temperature follow a Gaussian (normal) distribution, and many environmental, behavioral, and genetic data sets are modeled using these and other non-uniform distributions.  This lesson will use two different procedures for creating any desired distribution of random numbers using a uniform random-number generator. 
Model 1: Random seed
Random number functions are really an equation that takes a number input (referred to as the seed) and produces a new number as output. When you do not specify the seed (as we have not so far) Python the uses the current system time to set the seed.
Let's look at this briefly. Run the code below.
End of explanation
## gets the time, still not very human readable
time.localtime()
## formats the time nicely
time.asctime(time.localtime())
Explanation: 1. Describe the results.
Now run time.time() again below.
2. Describe the results and compare them to the first time.time() call.
Read the info on the time module here: http://www.tutorialspoint.com/python3/python_date_time.htm
3. Explain the output of the time.time() function calls (what is that number, how and why are the results of the two calls different, etc.).
Just in case you ever want to know what time it is, computers can give you a more human readable format (and if you're ever really interested, Python also has the datetime library that has a lot of super useful tools).
Run the code below.
End of explanation
## series of random numbers doesn't repeat
Explanation: But we digress. Back to random numbers...
The default seed for the first Python random number generator is actually set by the computer (based on the computer time). Then with each subsequent call for a new random number, the previous random number produced is used as the seed for the next number in the sequence. 
4. If the next random number is generated using the one before it, why isn't the series the same every time? (answer the question, then write and run some code to demonstrate what you mean)
End of explanation
<END_TASK>