title: coin flip simulate in python
body: <p>I want to simulate flipping a fair coin 500 times. Then I have to create a graph to show the running proportion of heads when flipping a coin with flip number on the x-axis and proportion heads on the y-axis. I wrote the Python code and I got the following error:</p>
  
  <pre><code>Traceback (most recent call last):
  File "E:\ProgramsPython\My\bayes\Coin Flip.py", line 22, in &lt;module&gt;
  ylist = [coinFlip(x) for x in xlist]
  File "E:\ProgramsPython\My\bayes\Coin Flip.py", line 16, in coinFlip
  return heads / x
  ZeroDivisionError: integer division or modulo by zero
  </code></pre>
  
  <p>What did I do wrong?&nbsp;&nbsp;</p>
  
  <pre><code># -*- coding: cp1251 -*-
  import random
  import pylab
  from matplotlib import mlab
  def coinFlip(size):
      heads = 0
      tails = 0
  
      for x in xrange(size):
          flip = random.randint(0,1)
          if flip == 1: heads += 1
          else: tails += 1
  
  
  
      return heads / x
  
  xmin = 1
  xmax = 500
  dx = 1
  xlist = mlab.frange (xmin, xmax, dx)
  ylist = [coinFlip(x) for x in xlist]
  pylab.plot(xlist, ylist)
  pylab.show()
  </code></pre>