• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

JoaoRodrigues

Criar Lista de listas

4 mensagens neste tópico

Pessoal, bom dia. Tenho este codigo que itera sobre um ficheiro de texto. Quero criar listas de listas mas o output que me da é algo..repetido :) passo a mostrar:

['EMBL', 'CR940353', 'CAI76474.1']
['EMBL', 'CR940353', 'CAI76474.1']
['EMBL', 'CR940353', 'CAI76474.1']
['EMBL', 'CR940353', 'CAI76474.1']
['KEGG', 'tan:TA08425']
['KEGG', 'tan:TA08425']

O codigo que tenho para gerar a lista de listas é:

    elif line[0:2] == 'DR':
        line = line[5:].strip().strip('').split(';')
        for index in range(1, len(line)):
            #print line
            if line[0] == 'EMBL':
                temp = []
                for index in range(1, len(line)-2):
                    temp.append(line[index].lstrip())
                temp.insert(0, line[0])
                dr_values.append(temp)
            if line[0] in list_starter2:
                temp = []
                temp.append(line[1].lstrip())
                temp.insert(0, line[0])
                dr_values.append(temp)
    if dr_values:
        for value in dr_values:
            print value

Está meio confuso.. Alguém me detecta onde está o erro que me leva à repetição?

Abraço!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Sure, posto logo com o resto do código necessário então. Porque só com esse bocado não consegues criar a lista.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Os nomes dos 3 ficheiros são self-explanatory :) Uma amostra de texto, um teste para importar o módulo e correr sobre X linhas (podes usar line '' (plicas vzias) ou line // (indica fim de registo)), e o módulo em si.

LINKS:

http://www.box.net/shared/jcpi8fvhgv - amostra

http://www.box.net/shared/eik9xmr30a - teste.py

http://www.box.net/shared/4vpuo1lnkv - uniparser.py

Thanks in advance pela ajuda ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora