What is the reason to pre-allocate the keys?  My first thought on this is that the returned dict should just not contain the keys for artists that don't get added.