Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Convertendo para tupla com nome de variável

Na Aula 3 - Atividade 3, foi mostrado que conseguimos converter uma lista para uma tupla usando:

estados = ('RJ', 'SP') + tuple(['MG', 'ES'])
('RJ','SP','MG','ES')

Tentei fazer a mesma função usando o nome dos atributos que criei, mas o resultado foi diferente do esperado, queria entender o motivo disso...

>>> estados = ('RJ','SP')
>>> outros_estados = ['PR','RS']
>>> estados = estados + tuple([outros_estados])
>>> estados
>>> ('RJ', 'SP', ['PR', 'RS'])
2 respostas

Oii Aron, como você está?

Nesse caso, como a variável outros_estados já é uma lista, quando você vai converter para tupla, não há necessidade dos colchetes, pois a variável já é uma lista. O uso dos colchetes nesse caso irá criar uma outra lista, por isso que a saída apresentou uma lista na tupla.

A correção fica da seguinte forma:

In [11]: estados = ('RJ','SP')

In [12]: outros_estados = ['PR','RS']

In [13]: estados = estados + tuple(outros_estados)

In [14]: estados
Out[14]: ('RJ', 'SP', 'PR', 'RS')

No exemplo do professor, ele passou os colchetes porque estava criando uma lista diretamente, mas no seu caso, ela já havia sido definida anteriormente.

Qualquer dúvida estou por aqui, tá bom?

Grande abraço!

solução!

Boa noite Nádia,

Perfeito!!! Muito obrigado pela explicação!

Abraçosss