elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  python - ordenar lista importada desde archivo csv
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: python - ordenar lista importada desde archivo csv  (Leído 2,018 veces)
juanfelr

Desconectado Desconectado

Mensajes: 67


Ver Perfil
python - ordenar lista importada desde archivo csv
« en: 3 Noviembre 2022, 03:57 am »

Saludos a toda la comunidad, espero se encuentren muy bien.

llevo un rato intentando resolver este problema, pero no he logrado el resultado con la ultima parte.

he intentado imprimir en pantalla la información dentro de un archivo csv que contiene tres columnas:
nombre, valor1,valor2.

el inconveniente es que en cada fila imprime los valores en cualquier orden, no respeta el orden según los encabezados del csv.

comparto el código en caso de que alguién me pueda orientar con la solución.

Código:
import sys
import csv

def main():

    if len(sys.argv)<2:
        sys.exit("Too few command-line arguments")
    elif len(sys.argv)>2:
        sys.exit("Too many command-line arguments")
    elif ".csv" not in sys.argv[1]:
        sys.exit("Not a CSV file")
    else:
        try:

            doc=sys.argv[1]

            filas=[]

            with open(doc,"r") as file:

                headers=next(csv.reader(file))


                for line in file:
                    menu = line.rstrip().split(",")

                    filas.append({menu[0], menu[1], menu[2]})

                print(filas)

        except FileNotFoundError:
            sys.exit("File does not exist")

main()

No entiendo por qué me almacena en desorden cuando estoy especificando al momento de adicionar los valores el orden correcto: filas.append({menu[0], menu[1], menu[2]})

estaré agradecido si me ueden indicar en donde estoy mal o que me puede faltar.

muchas gracias.

P.D:Por favor disculpen el desorden en el codigo, soy novato en el tema.


En línea

juanfelr

Desconectado Desconectado

Mensajes: 67


Ver Perfil
Re: python - ordenar lista importada desde archivo csv
« Respuesta #1 en: 4 Noviembre 2022, 02:56 am »

estimados miembros del foro.

ya lo solucioné, era tan simple que no la había visto. reemplacé la linea:

filas.append({menu[0], menu[1], menu[2]})

por:

filas.append(menu)

lo había intentado antes, pero sin omitir las llaves {} y me salía error.

Espero sea de utilidad este descache de mi parte ara alguien más.


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines