The attribute size of 128KB is significant

Increasing the list size from 100 to 1000 does not change when the memory
drops off. This shows the attribute size is signicant instead of the total
list size.
Similar results when using dict instead of class
Simplified further by using "del"
Using for loop instead of list comprehension
...gives similar results
Using a separate variable for the dict
...gives similar results
Using a separate variable for the string
...gives similar results
Getting rid of the dict gives similar results
Memory is freed when a separate string variable is not used