You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently it's possible to set dictionary items with the same (key) names as existing methods e.g.
x=CleverDict()
x['save']="What a great save!"
x['save']
'What a great save!'
They don't overwrite the existing method (a good thing!) but there is some potentially confusing behaviour:
x
CleverDict({}, _aliases={}, _vars={})
This is because CleverDict.ignore includes {'save_path', 'delete', 'save', '_aliases'}.
Furthermore, although a user is unlikely to import their own data with an existing key of "_aliases", the other three ignored attributes might quite plausibly feature. In this case the solution is just to rename the keys before importing to CleverDict but the danger is that a user might not even know/expect this to be an issue until it becomes one...
The text was updated successfully, but these errors were encountered:
Currently it's possible to set dictionary items with the same (key) names as existing methods e.g.
They don't overwrite the existing method (a good thing!) but there is some potentially confusing behaviour:
This is because CleverDict.ignore includes {'save_path', 'delete', 'save', '_aliases'}.
Furthermore, although a user is unlikely to import their own data with an existing key of "_aliases", the other three ignored attributes might quite plausibly feature. In this case the solution is just to rename the keys before importing to CleverDict but the danger is that a user might not even know/expect this to be an issue until it becomes one...
The text was updated successfully, but these errors were encountered: