title: Python list of named tuples, replacing attributes
body: <p>Here is some simplified code that I don't understand why it does not work.</p>
  
  <pre><code>from collections import namedtuple
  
  MyStruct = namedtuple('MyStruct', 'ThreadInstance ThreadName Mnemonic IpAddr IpGW Status Mode')
  
  Node = MyStruct(None, '', '', '', '',  -1, 0)
  NodeDb = []
  for id in range(4):
      NodeDb.append(Node)
  
  NodeDb[2]._replace(ThreadName='T2')
  NodeDb[2]._replace(Mnemonic='ABCD')
  NodeDb[2]._replace(IpAddr='192.0.1.2')
  NodeDb[2]._replace(IpGW='192.0.1.3')
  NodeDb[2]._replace(Status=0)
  NodeDb[2]._replace(Mode=2)
  
  print(NodeDb)
  </code></pre>
  
  <p>Here is the output</p>
  
  <pre><code>'&gt;&gt;&gt;
  [MyStruct(ThreadInstance=None, ThreadName='', Mnemonic='', IpAddr='', IpGW='', Status=-1, Mode=0),
   MyStruct(ThreadInstance=None, ThreadName='', Mnemonic='', IpAddr='', IpGW='', Status=-1, Mode=0), 
   MyStruct(ThreadInstance=None, ThreadName='', Mnemonic='', IpAddr='', IpGW='', Status=-1, Mode=0), 
   MyStruct(ThreadInstance=None, ThreadName='', Mnemonic='', IpAddr='', IpGW='', Status=-1, Mode=0)]'
  </code></pre>