Dictionaries | SoloLearn: Learn to code for FREE!

+1

Dictionaries

Please help to state simple example for mutable and immutable object and its concept in python dictionaries. I am not clear enough by reading the lessons and comments.

8/13/2019 3:11:32 PM

Europa

1 Answer

New Answer

+2

Mutable list example: a = [1, 2, 3] b = [4, 5, a] print(a) #[1, 2, 3] print(b) #[4, 5, [1, 2, 3]] If you change a, you also changed b[2], and if you changed b[2], you also changed a, that's because b[2] is a, not just a copy of a, Python avoids copies. b[2].append(6) print(a) #[1, 2, 3, 6] print(b) #[4, 5, [1, 2, 3, 6]] Then what if you used a as a key in a dictionary? If dictionaries supported mutable objects as keys: d = {[1, 2, 3]: "klm", a: "nop"} print(d) #{[1, 2, 3]: "klm", [1, 2, 3, 6]: "nop"} If you changed a again: a.pop() print(a) #[1, 2, 3] print(d) #{[1, 2, 3]: "klm", [1, 2, 3]: "nop"} Now there would be 2 duplicate dictionary keys. print(d[[1, 2, 3]]) #So would this print "klm" or "nop"?