title: assignment within exec in python
body: <p>I am trying to build calculator using PyQt5 and I get string which I need to evaluate and assign it to a variable so that I can Pass that variable to widgets as an answer . So far I can evaluate the expression but can't assing it . How can I do that ? so far I have following code:-</p>
  
  <pre><code># this functions gets called when Enter is pressed
  def etrp(self):
      eqn =  self.sender().text()                  #I get string like '23+4'
      eqn1 = "{0} = {1}".format("global x",eqn)    #I make it x = 23+4
      x = 0
      exec(eqn1)                                   # I get error here
      print(x)
      #some code .....
  </code></pre>
  
  <p>When I try to run it without global, it runs without error but x remains 0 and If I ran it like this I get this error:-</p>
  
  <pre><code>qt5ct: using qt5ct plugin
  global x = 12+32
  Traceback (most recent call last):
    File "/home/orayan/Development/Python/Calculator/calculator.py", line 11, in etrp
      exec(eqn1)
    File "&lt;string&gt;", line 1
      global x = 12+32
               ^
  SyntaxError: invalid syntax
  [1]    19185 abort (core dumped)  ./main.py
  </code></pre>
  
  <p>I am very new to python So can't figure out whats going on </p>