title: Variable declaration and assignment syntax with old and new variables
body: <p>In the beow code:</p>
  
  <pre><code>func sumDigitsIter(n int) int {
      digit_sum := 0
      for n &gt; 0 {
          n, last := split(n)
          digit_sum += last
      }
      return digit_sum
  }
  
  func split(n int) (int, int) {
      return n / 10, n % 10
  }
  </code></pre>
  
  <hr>
  
  <p><code>n</code> cannot be a new <code>n</code> in syntax <code>n, last := split(n)</code></p>
  
  <p>Without explicit declaration of <code>last</code> variable, How to create a new variable <code>last</code> &amp; re-assign value to existing variable <code>n</code>, what is the syntax?</p>
  
  <p>Because in python, we do this:</p>
  
  <pre><code>def sumDigitsIter(n):
      digit_sum = 0
      while n &gt; 0:
          n, last = split(n)
          digit_sum = digit_sum + last
      return digit_sum
  </code></pre>