a_lst = list()
b_lst = list()
tmp = list()
c_dct = dict()
while True:
a = raw_input("a=")
a_lst.append(a)
b = raw_input("b=")
b_lst.append(b)
if a == "end":
break
a_lst.remove('end')
print a_lst
print b_lst
for i in range(len(a_lst)):
c_dct[a_lst[i]] = b_lst[i]
print c_dct
In this code, I combine 2 lists to create the dictionary. In the result, the dictionary is not the same position as the input. For example,
c_dct = {'q': 'w', 'e': 'r', 'o': 'p', '1': '2', '3': '4', '5': '6', 't': 'y', '7': '8', '9': '0', 'u': 'i'}
instead of
c_dct = {'1': '2', '3': '4', '5': '6','7': '8', '9': '0','q': 'w', 'e': 'r','t': 'y','u': 'i','o': 'p'}
What is going on the code? How to slove this problem? Thank You very much!
Dictionaries do not maintain order by default. If you need an ordered dictionary, you can use the following:
from collections import OrderedDict
Take a look at the documentation
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With