[python-brasil] Associar elementos de duas listas

526 views
Skip to first unread message

gabriel.cavalcante88

unread,
Aug 31, 2010, 5:28:14 PM8/31/10
to python...@yahoogrupos.com.br
Boa Noite Pessoal,

Estou com uma dúvida e gostaria de saber de vocês como faz para
resolver o seguinte problema:

Eu tenho a lista 1 que tem nome do curso: ['Matemática','Português'];
Eu tenho a lista 2 que possui a nota deste curso: [5.0,10.0];

A dúvida é:

De que forma eu poderia, por exemplo, criar uma lista de tuplas neste formato:

(nome_curso,nota_curso)

[('Matemática','5.0'),('Português',10.0)]

No caso a lista1 e a lista 2 tem sempre o mesmo tamanho (o que eu acho
que deve tornar as coisas mais simples).

Desde já agradeço a atenção.

Gabriel Cavalcante

------------------------------------

,-----------------------------------------------------------.
| Antes de enviar um e-mail para o grupo leia: |
| http://www.pythonbrasil.com.br/moin.cgi/AntesDePerguntar |
| E se você é usuário do BOL lembre-se de cadastrar o |
| e-mail do grupo na lista branca do seu sistema anti-spam. |
`-----------------------------------------------------------´Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/python-brasil/

<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html


Thiago F. Pappacena

unread,
Aug 31, 2010, 9:42:33 PM8/31/10
to python...@yahoogrupos.com.br
2010/8/31 gabriel.cavalcante88 <gabriel.ca...@yahoo.com.br>

> Boa Noite Pessoal,
>
> Estou com uma dúvida e gostaria de saber de vocês como faz para
> resolver o seguinte problema:
>
> Eu tenho a lista 1 que tem nome do curso: ['Matemática','Português'];
> Eu tenho a lista 2 que possui a nota deste curso: [5.0,10.0];
>
> A dúvida é:
>
> De que forma eu poderia, por exemplo, criar uma lista de tuplas neste formato:
>
> (nome_curso,nota_curso)
>
> [('Matemática','5.0'),('Português',10.0)]

Com o método built-in "zip":

[code]
zip(lista1, lista2)
[/code]


[]'s,
Thiago F. Pappacena

Good things come for those who wait...
... and for the efficient people who don't wait too, but faster:
Open source, XP, OO, Python, VIM, Bash and Gentoo.

Mario Domenech Goulart

unread,
Aug 31, 2010, 9:41:44 PM8/31/10
to python...@yahoogrupos.com.br
Alô Gabriel

On Tue, 31 Aug 2010 21:28:14 -0000 "gabriel.cavalcante88" <gabriel.ca...@yahoo.com.br> wrote:

> Estou com uma dúvida e gostaria de saber de vocês como faz para
> resolver o seguinte problema:
>
> Eu tenho a lista 1 que tem nome do curso: ['Matemática','Português'];
> Eu tenho a lista 2 que possui a nota deste curso: [5.0,10.0];
>
> A dúvida é:
>
> De que forma eu poderia, por exemplo, criar uma lista de tuplas neste formato:
>
> (nome_curso,nota_curso)
>
> [('Matemática','5.0'),('Português',10.0)]
>
> No caso a lista1 e a lista 2 tem sempre o mesmo tamanho (o que eu acho
> que deve tornar as coisas mais simples).

Podes usar a função `zip':

>>> zip(['Matemática', 'Português'], [5.0, 10.0])


[('Matemática', 5.0), ('Português', 10.0)]

A documentação está em http://docs.python.org/library/functions.html#zip

Mario
--
http://parenteses.org/mario

Gabriel Abdalla Cavalcante Silva

unread,
Aug 31, 2010, 10:00:51 PM8/31/10
to python...@yahoogrupos.com.br
Putz, que coisa fácil lol

Na hora acabei por colocar um for que ia pegando de cada uma e colocando num
dict mesmo kkkk

Valew pessoal!

Em 31 de agosto de 2010 22:42, Thiago F. Pappacena
<papp...@gmail.com>escreveu:

>
>
> 2010/8/31 gabriel.cavalcante88 <gabriel.ca...@yahoo.com.br<gabriel.cavalcante88%40yahoo.com.br>


> >
>
> > Boa Noite Pessoal,
> >
> > Estou com uma dúvida e gostaria de saber de vocês como faz para
> > resolver o seguinte problema:
> >
> > Eu tenho a lista 1 que tem nome do curso: ['Matemática','Português'];
> > Eu tenho a lista 2 que possui a nota deste curso: [5.0,10.0];
> >
> > A dúvida é:
> >
> > De que forma eu poderia, por exemplo, criar uma lista de tuplas neste
> formato:
> >
> > (nome_curso,nota_curso)
> >
> > [('Matemática','5.0'),('Português',10.0)]
>
> Com o método built-in "zip":
>
> [code]
> zip(lista1, lista2)
> [/code]
>
> []'s,
> Thiago F. Pappacena
>
> Good things come for those who wait...
> ... and for the efficient people who don't wait too, but faster:
> Open source, XP, OO, Python, VIM, Bash and Gentoo.
>
>
>


[As partes desta mensagem que não continham texto foram removidas]

Diego Sater da Luz Teixeira

unread,
Sep 13, 2010, 5:56:40 PM9/13/10
to python...@yahoogrupos.com.br
Especializando a dúvidade dele:

como eu faço para multiplicar todos os itens de duas listas com tipos de
dados heterogêneos, tipo uma lista de int com uma de float?

O que estou usando é uma função que faz pop nas duas por vez,multiplica e
armazena numa terceira, gostaria de saber se não existe nada mais eficiente
do que isso, tipo a função zip acima...

desde já obrigado!

Diego Sater

Em 31 de agosto de 2010 23:00, Gabriel Abdalla Cavalcante Silva <
gabriel.ca...@yahoo.com.br> escreveu:

Thiago F. Pappacena

unread,
Sep 14, 2010, 7:37:18 AM9/14/10
to python...@yahoogrupos.com.br
lista3 = [a * b for a, b in zip(lista1, lista2)]

E procure não reaproveitar tópicos já existentes, sem posts há dias. Não
tenha medo de criar tópicos novos! :)

[]'s,
Thiago F. Pappacena

Good things come for those who wait...
... and for the efficient people who don't wait too, but faster:
Open source, XP, OO, Python, VIM, Bash and Gentoo.


2010/9/13 Diego Sater da Luz Teixeira <diego...@gmail.com>

>
>
> Especializando a dúvidade dele:
>
> como eu faço para multiplicar todos os itens de duas listas com tipos de
> dados heterogêneos, tipo uma lista de int com uma de float?
>
> O que estou usando é uma função que faz pop nas duas por vez,multiplica e
> armazena numa terceira, gostaria de saber se não existe nada mais eficiente
> do que isso, tipo a função zip acima...
>
> desde já obrigado!
>
> Diego Sater
>
> Em 31 de agosto de 2010 23:00, Gabriel Abdalla Cavalcante Silva <

> gabriel.ca...@yahoo.com.br <gabriel.cavalcante88%40yahoo.com.br>>


> escreveu:
>
>
> > Putz, que coisa fácil lol
> >
> > Na hora acabei por colocar um for que ia pegando de cada uma e colocando
> > num
> > dict mesmo kkkk
> >
> > Valew pessoal!
> >
> > Em 31 de agosto de 2010 22:42, Thiago F. Pappacena

> > <papp...@gmail.com <pappacena%40gmail.com>>escreveu:


> >
> > >
> > >
> > > 2010/8/31 gabriel.cavalcante88 <gabriel.ca...@yahoo.com.br<gabriel.cavalcante88%40yahoo.com.br>
> > <gabriel.cavalcante88%40yahoo.com.br>
> > > >
> > >
> > > > Boa Noite Pessoal,
> > > >
> > > > Estou com uma dúvida e gostaria de saber de vocês como faz para
> > > > resolver o seguinte problema:
> > > >
> > > > Eu tenho a lista 1 que tem nome do curso: ['Matemática','Português'];
> > > > Eu tenho a lista 2 que possui a nota deste curso: [5.0,10.0];
> > > >
> > > > A dúvida é:
> > > >
> > > > De que forma eu poderia, por exemplo, criar uma lista de tuplas neste
> > > formato:
> > > >
> > > > (nome_curso,nota_curso)
> > > >
> > > > [('Matemática','5.0'),('Português',10.0)]
> > >
> > > Com o método built-in "zip":
> > >
> > > [code]
> > > zip(lista1, lista2)
> > > [/code]
> > >
> > > []'s,
> > > Thiago F. Pappacena
> > >
> > > Good things come for those who wait...
> > > ... and for the efficient people who don't wait too, but faster:
> > > Open source, XP, OO, Python, VIM, Bash and Gentoo.
> > >
> > >
> > >
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
> > ------------------------------------
> >

> > ,----------------------------------------------------------.


> > | Antes de enviar um e-mail para o grupo leia: |
> > | http://www.pythonbrasil.com.br/moin.cgi/AntesDePerguntar |
> > | E se você é usuário do BOL lembre-se de cadastrar o |
> > | e-mail do grupo na lista branca do seu sistema anti-spam. |

> > `----------------------------------------------------------´Links do

Reply all
Reply to author
Forward
0 new messages