回答編集履歴
1
修正
    
        answer	
    CHANGED
    
    | 
         @@ -6,12 +6,12 @@ 
     | 
|
| 
       6 
6 
     | 
    
         
             
            これは`a=123`といった代入は`a`が`123`という**オブジェクトを指す**、という意味になります。
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
            そのうえで、以下においてループ中の`e`は、リストの中の`{'key':123}`を指しています。
         
     | 
| 
       9 
     | 
    
         
            -
            そしてそれに対して`e 
     | 
| 
      
 9 
     | 
    
         
            +
            そしてそれに対して`e.update({'key':456})`という操作を行っているため、指している中身が変わります。
         
     | 
| 
       10 
10 
     | 
    
         
             
            ```
         
     | 
| 
       11 
11 
     | 
    
         
             
            lst = [{'key':123}]
         
     | 
| 
       12 
12 
     | 
    
         
             
            for e in lst:
         
     | 
| 
       13 
13 
     | 
    
         
             
                print(e, id(e)) # {'key': 123} 2435079527744
         
     | 
| 
       14 
     | 
    
         
            -
                e 
     | 
| 
      
 14 
     | 
    
         
            +
                e.update({'key':456})
         
     | 
| 
       15 
15 
     | 
    
         
             
                print(e, id(e)) # {'key': 456} 2435079527744
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
            print(lst) # [{'key': 456}]
         
     |