Swapping Content of Two Dictionaries.
Steven D'Aprano
steven at REMOVE.THIS.cybersource.com.au
Wed Mar 17 18:38:21 EDT 2010
On Wed, 17 Mar 2010 13:34:51 +0100, Peter Otten wrote:
> Hatem Oraby wrote:
>
>> Hello, I want to swap the content of two dictionaries, the obvious way
>> to do it is:
>> a = {1:"I'am A"}
>> b = {2:"I'm B"}
>> temp = a
>> a = b
>> b = temp
>
> That can be simplified to
>
> a, b = b, a
>
> and is almost certainly the right approach.
Unfortunately, it may not, because it doesn't swap the content of two
dictionaries (as asked for), but instead swaps the dictionaries bound to
two names, which is a very different kettle of fish indeed.
It may be that the OP's description of his problem is inaccurate, in
which case a simple re-binding is the easiest way, but if the subject
line is accurate, then he needs your suggested solution using a temporary
dict, clear and update. Wrap it in a function, and you have a one-liner
swap operation :)
--
Steven
More information about the Python-list
mailing list