Help with copy and deepcopy in Python

Posted by Az on Stack Overflow See other posts from Stack Overflow or by Az
Published on 2010-06-06T06:00:05Z Indexed on 2010/06/06 6:02 UTC
Read the original article Hit count: 326

Filed under:
|
|
|

Hi there,

I think I tried to ask for far too much in my previous question so apologies for that. Let me lay out my situation in as simple a manner as I can this time.

Basically, I've got a bunch of dictionaries that reference my objects, which are in turn mapped using SQLAlchemy. All fine with me. However, I want to make iterative changes to the contents of those dictionaries. The problem is that doing so will change the objects they reference---and using copy.copy() does no good since it only copies the references contained within the dictionary. Thus even if copied something, when I try to, say print the contents of the dictionary, I'll only get the latest updated values for the object.

This is why I wanted to use copy.deepcopy() but that does not work with SQLAlchemy. Now I'm in a dilemma since I need to copy certain attributes of my object before making said iterative changes.

In summary, I need to use SQLAlchemy and at the same time make sure I can have a copy of my object attributes when making changes so I don't change the referenced object itself.

Any advice, help, suggestions, etc.?

© Stack Overflow or respective owner

Related posts about python

Related posts about beginner