sets and maps number to each individual student as illustrated in figure laterwhen the registrar needs to search for student' informationthe identification number is used using this keyed approach allows access to specific student record if the names were used to identify the records insteadthen what happens when multiple students have the same nameorwhat happens if the name was entered incorrectly when the record was initially created brown john east main st smith somewhere john va east main st roberts somewhere john va east main st smith somewhere john va east main st somewhere va figure unique key/data pairs in this sectionwe define our own map adt and then provide an implementation using list in later we will implement and evaluate the map using variety of data structures we use the term map to distinguish our adt from the dictionary provided by python the python dictionary is implemented using hash tablewhich requires the key objects to contain the hash method for generating hash code this can limit the type of problems with which dictionary can be used we define our map adt with the minimum requirement that the keys are comparablewhich will allow it to be used in wider range of problems it' not uncommon to provide multiple implementations of an adt as is done with many language libraries we will explore the implementation details of python' dictionary later in when we discuss hash tables and the design of hash functions the map abstract data type the map adt provides great example of an adt that can be implemented using one of many different data structures our definition of the map adtwhich is provided nextincludes the minimum set of operations necessary for using and managing map