There's nothing wrong with it exactly, but using partial
seems a bit overkill just to return a static value. Why not just:
defaultFlags = {'flag_name' : False,
'flag_name2' : False,
'flag_name3' : False,
# etc.
}
self.ids_with_flags_dictionary = defaultdict(lambda: defaultFlags.copy())