I have created a small program that generates a project tree from a
dictionary. The dictionary is of key/value pairs where each key is a
directory, and each value is a list. The list have unique values
corresponding to the key, which is a directory where each value in the
list becomes a subdirectory.

The question that I have is how to do this process if one of the
unique values in the list is itself a dict. For example, in the
"projdir" dict below, suppose the "Analysis" value in the list
corresponding to the "Engineering" key was itself a dict and was
assigned {'Analysis' : 'Simulink'} for example.

Thanks.
James


#-------------------------------------
# DEFINE Root Dir & Path, Sch Numbers
#-------------------------------------
sch_names = ['AED500','AED600']
dir_main  = "Z:\\ABC_PROJ\\"
dir_sub   = "PCB_MDX\\"
rootdir   = dir_main + dir_sub
#-------------------------------------
# DEFINE Directory Tree for Project
#-------------------------------------
projdir =  {'Project'        :  ['Schedule', 'Specifications',
'Procedures'],
            'Schematics_PCB' :  ['SCH','BOM','ASSY'],
            'Drawings'       :  ['System', 'Board', 'Packaging_3D'],
            'Engineering'    :  ['Analysis', 'Reports', 'Design Reviews']}
#-------------------------------------
# DEFINE Debug Status
#-------------------------------------
debug = True
#-------------------------------------
# Print Directory Path (Helper Func)
#-------------------------------------
def print_path(z,suffix):
        print z
        print z + suffix
#-------------------------------------
# Make a Directory Project Tree
#-------------------------------------
def make_tree_with_debug(proj,sch,root):
        counter = 0
        print "The dictionary was found to have the following: \n"
        
#-------------------------------------------------------------------------
        # Iterate over items in the dictionary, creating tuples of key/value
pairs
        
#-------------------------------------------------------------------------
        for key, values in proj.iteritems():
                counter = counter + 1
                print "Key #" + str(counter) + " is "  + "'" + key + "\'"
                print "For this key, the values are " + str(values)
                print "Thus, the results of generating directories for this key/
values combo are: \n"
                #---------------------------------------------------------
                # Iterate over the invidividual unique values in the list
                # that is associated with each key in the dict
                #---------------------------------------------------------
                for unique in values:
                        prefix = root + key +  "\\" + unique
                        suffix = "\\Previous \n"
                        if key == 'Schematics_PCB':
                                print unique
                                for item in sch:
                                        z = prefix + "\\" + item
                                        print_path(z,suffix)
                        else:
                                #if unique.haskeys():
                                #       print unique.key
                                z = prefix
                                print_path(z,suffix)


make_tree_with_debug(projdir,sch_names,rootdir)
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to