exampleDict = {\'a\':1, \'b\':2, \'c\':3, \'d\':4}
The above dictionary initially iterated through in this order:
b=2
d=4
a=1
c=3
<
Yes. If you do change the code between different calls to the dict, the order of iteration will change.
From the docs
If items(), keys(), values(), iteritems(), iterkeys(), and itervalues() are called with no intervening modifications to the dictionary, the lists will directly correspond.
If the order of insertion matter, check out the OrderedDict class