title: Compute possible combinations of an equation
body: <p>I've got a template of equations <code>template = (a op b) op c</code> where the available operations <code>op</code> are the following: <code>op = ['+', '-', '/', '*']</code>. </p>
  
  <p>What I want to do is to compute all the possible combinations of this equation using the operations <code>op</code> and the parameters <code>a</code>, <code>b</code> and <code>c</code>. </p>
  
  <p>e.g. </p>
  
  <pre><code>(a + b) + c
  (a - b) - c
  (a * b) * c
  (a / b) / c
  (a + c) + b
  (a - c) + b
  (b * a) - c
  ...
  ...
  ...
  </code></pre>
  
  <p>I had a look at <code>itertools.combinations</code> however I am not quite sure if (or how) I can use this function in this particular context. </p>