### Espaço de Tecnologias e Artes - Sesc Avenida Paulista
## Grupo de estudos em Python
### `hackmd.io/@sesc-av-paulista/estudos-em-python-2-outubro`
### Estruturas de dados
- Listas https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/list_methods.html
- Tuplas
- Dicionários https://abav.lugaralgum.com/material-aulas/Processing-Python-py5/dicionarios.html
- Conjuntos
```python=
nome = "Alexandre"
outro_nome = "Lucia"
nome = "Fernando"
print(nome) # monstra valor da variável nome
print(set(nome)) # conjunto (sem ordem) das letras do nome
print(sorted(set(nome)) # lista ordenada das letras do conjuto
```
Resultado:
```
Fernando
{'d', 'F', 'e', 'o', 'n', 'r', 'a'}
['F', 'a', 'd', 'e', 'n', 'o', 'r']
```
Erros e acertos no console
````python
>>> %Run teste.py
>>> frutas
['abacate', 'maçã', 'uva']
>>> len(frutas)
3
>>> frutas.append('abacaxi')
>>> frutas
['abacate', 'maçã', 'uva', 'abacaxi']
>>> frutas.insert('kiwi', 1)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object cannot be interpreted as an integer
>>> frutas.insert(1, 'kiwi')
>>> frutas
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi']
>>> frutas[2]
'maçã'
>>> frutas[0]
'abacate'
>>> frutas[len(frutas)-1]
'abacaxi'
>>> frutas[-1]
'abacaxi'
>>>
>>> frutas[-2]
'uva'
>>> frutas[:2]
['abacate', 'kiwi']
>>> frutas
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi']
>>> type(frutas)
<class 'list'>
>>> type(frutas[0])
<class 'str'>
>>> type('oi')
<class 'str'>
>>> type(nome)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'nome' is not defined
>>> nome = "Ale"
>>> type(nome)
<class 'str'>
>>> type(10)
<class 'int'>
>>> type(10.0)
<class 'float'>
>>> frutas
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi']
>>> petiscos = frutas
>>> petiscos
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi']
>>> frutas.append('jaca')
>>> frutas
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> petiscos
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> outra_lista = frutas.copy()
>>> outra_lista
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> frutas
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> frutas == outra_lista
True
>>> frutas is outra_lista
False
>>> educador
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'educador' is not defined
>>> petiscos is frustas
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'frustas' is not defined
>>> petiscos is frutas
True
>>> petiscos is outra_lista
False
>>> frutas
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> outra_lista
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> outra_lista.pop()
'jaca'
>>> outra_lista.pop()
'abacaxi'
>>> outra_lista
['abacate', 'kiwi', 'maçã', 'uva']
>>> frutas
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> petiscos
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> frutas[2:]
['maçã', 'uva', 'abacaxi', 'jaca']
>>> frutas[:2]
['abacate', 'kiwi']
>>> frutas[:]
['abacate', 'kiwi', 'maçã', 'uva', 'abacaxi', 'jaca']
>>> fatia_completa = frutas[:]
>>> fatia_completa is frutas
False
>>> fatia_completa == frutas
True
>>>
```