Python: comparando duas tabelas de iteração

0

Não sei se fazer perguntas sobre o Python aqui está certo ou não, mas aqui estou. Essa coisa me deixou perplexo. Eu tenho um script python que se conecta a um banco de dados MySQL e leva uma tabela de resultados datetime, até aí tudo bem. Em python, copia essa lista em outra lista de variáveis, adicionando 90 dias no topo da lista original. Então agora eu tenho duas listas: 1 eu tirei direto do banco de dados, um que é o original + 90 dias. Mas o que eu preciso fazer é percorrer a lista original e, para cada data original, compará-la a cada nova data. Por exemplo.

Digamos que eu tenha a tabela original com datas como esta: a, b, c, d, e, f, g ... depois dos + 90 dias eu também tenho a1, b1, c1, d1, e1, f1, g1. Então tem que seguir este padrão: compare a para a1, a para b1, a para c1, a para d1, etc. Então, passa-se para b comparando com a1, b para b1, b para c1 etc etc.

Eu pensei em aninhar dois loops, mas isso teve um efeito indesejado.

Como eu realizaria isso?

    
por Xtremesupremacy3 29.09.2013 / 15:46

1 resposta

0

Espero ter entendido corretamente (pequenas amostras são sempre úteis).

Eu acho que loops aninhados são a maneira correta de fazer isso, talvez você tenha feito algo errado? Há também itertools.product que faz isso mais rápido para você. Aqui está um pequeno exemplo:

>>> from itertools import product
>>> x = ["a", "b", "c"]
>>> y = ["d", "e", "f"]
>>> for t in product(x, y):
...   print t
... 
('a', 'd')
('a', 'e')
('a', 'f')
('b', 'd')
('b', 'e')
('b', 'f')
('c', 'd')
('c', 'e')
('c', 'f')
>>>
    
por Timo 29.09.2013 / 18:01