title: Difference between "raise" and "raise e"?
body: <p>In python, is there a difference between <code>raise</code> and <code>raise e</code> in an except block?</p>
  
  <p><code>dis</code> is showing me different results, but I don't know what it means.</p>
  
  <p>What's the end behavior of both?</p>
  
  <pre><code>import dis
  def a():
      try:
          raise Exception()
      except Exception as e:
          raise
  
  
  def b():
      try:
          raise Exception()
      except Exception as e:
          raise e
  
  dis.dis(a)
  # OUT:   4           0 SETUP_EXCEPT            13 (to 16)
  # OUT:   5           3 LOAD_GLOBAL              0 (Exception)
  # OUT:               6 CALL_FUNCTION            0
  # OUT:               9 RAISE_VARARGS            1
  # OUT:              12 POP_BLOCK           
  # OUT:              13 JUMP_FORWARD            22 (to 38)
  # OUT:   6     &gt;&gt;   16 DUP_TOP             
  # OUT:              17 LOAD_GLOBAL              0 (Exception)
  # OUT:              20 COMPARE_OP              10 (exception match)
  # OUT:              23 POP_JUMP_IF_FALSE       37
  # OUT:              26 POP_TOP             
  # OUT:              27 STORE_FAST               0 (e)
  # OUT:              30 POP_TOP             
  # OUT:   7          31 RAISE_VARARGS            0
  # OUT:              34 JUMP_FORWARD             1 (to 38)
  # OUT:         &gt;&gt;   37 END_FINALLY         
  # OUT:         &gt;&gt;   38 LOAD_CONST               0 (None)
  # OUT:              41 RETURN_VALUE        
  dis.dis(b)
  # OUT:   4           0 SETUP_EXCEPT            13 (to 16)
  # OUT:   5           3 LOAD_GLOBAL              0 (Exception)
  # OUT:               6 CALL_FUNCTION            0
  # OUT:               9 RAISE_VARARGS            1
  # OUT:              12 POP_BLOCK           
  # OUT:              13 JUMP_FORWARD            25 (to 41)
  # OUT:   6     &gt;&gt;   16 DUP_TOP             
  # OUT:              17 LOAD_GLOBAL              0 (Exception)
  # OUT:              20 COMPARE_OP              10 (exception match)
  # OUT:              23 POP_JUMP_IF_FALSE       40
  # OUT:              26 POP_TOP             
  # OUT:              27 STORE_FAST               0 (e)
  # OUT:              30 POP_TOP             
  # OUT:   7          31 LOAD_FAST                0 (e)
  # OUT:              34 RAISE_VARARGS            1
  # OUT:              37 JUMP_FORWARD             1 (to 41)
  # OUT:         &gt;&gt;   40 END_FINALLY         
  # OUT:         &gt;&gt;   41 LOAD_CONST               0 (None)
  # OUT:              44 RETURN_VALUE        
  </code></pre>