"""
The dict built-in function has many ways to build dictionaries but it cannot handle a sequence with alternating key and value pairs.
In python 2.3 it can be easily solved by combining dict, zip and extended slices.
"""
def DictFromList(myList):
return dict(zip(myList[:-1:2], myList[1::2]))
if __name__ == "__main__":
print DictFromList(["one", 1, "two", 2, "three", 3])
# prints: {'three': 3, 'two': 2, 'one': 1}