title: How operator '=' is really working in the expression a = [x,y,z] = "123"?
body: <p>Very basic question but I think I am missing some background that I would like to understand.</p>
  
  <p>Let's say we have expressions:</p>
  
  <pre><code># version 1
  a = [x,y,z] = "123"
  
  #version 2
  [x,y,z] = "123"
  a = [x,y,z]
  </code></pre>
  
  <p>I know that first version is a messy code, but I wish to understand. Always I thought that result of this code is the same. I was wrong. 
  Type of first "a" is a string, type of second "a" is a list. The question is why in the first case the type of the most right value is propagated to the left? </p>