Transformar fichero plano en un diccionario

# -*- coding: utf-8 -*- """ Created on Sun Feb 25 19:09:35 2015 @author: Sergio de la Rica """ #La función mostrada lee un fichero plano "fichero.data" y lo transforma en un diccionario con la #siguiente estructura: {col01: {col1 : col3....col7}} #El formato del fichero "fichero.data" sería: #17 82 9 47 20 9 9 0 #20 84 6 59 38 1 8 0 #7 83 19 96 11 5 9 0 #....... # #Tras la ejecución el valor de dictio será: #{17: {82: [9, 47, 20, 9, 9, 0]}, 20: {84: [6, 59, 38, 1, 8, 0]}, 7: {83: [19, 96, 11, 5, 9, 0]}} def readFile(filename): myfile = file(filename) lines = [(l.strip()).split("\t") for l in myfile.readlines()] # l[0] es col0 del fichero dictio = {int(l[1]) : {} for l in lines} for l in lines: # asignamos el resto de columnas valuations = (l[2:]) valuations = [int(i) for i in valuations] #verificamos que todos los valores están informados. if min(valuations)>=0: dictio[int(l[1])][int(l[0])] = valuations return dictio dictio = readFile("fichero.data") print dictio
La función mostrada lee un fichero plano "fichero.data" y lo transforma en un diccionario con la siguiente estructura: {col01: {col1 : col3....col7}}

Be the first to comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.