Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import streamlit as st
|
2 |
+
|
3 |
+
# Dados da tabela em formato que possa ser diretamente convertido em Markdown
|
4 |
+
dados_tabela = [
|
5 |
+
"Linha | numeros | chave | valor | resultado | valor % 2 | Ação",
|
6 |
+
"--- | --- | --- | --- | --- | --- | ---",
|
7 |
+
"1 | {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} | - | - | - | - | Inicializa `numeros`",
|
8 |
+
"2 | {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} | - | - | {} | - | Inicializa `resultado` como dicionário vazio",
|
9 |
+
"3-7 | {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} | a | 1 | {'a': 'ímpar'} | 1 | Loop começa, `valor=1` é ímpar",
|
10 |
+
"3-7 | {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} | b | 2 | {'a': 'ímpar', 'b': 'par'} | 0 | `valor=2` é par, adiciona 'par' ao resultado",
|
11 |
+
# Adicione as linhas restantes conforme necessário...
|
12 |
+
"8 | {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} | - | - | {'a': 'ímpar', 'b': 'par', 'c': 'ímpar', 'd': 'par', 'e': 'ímpar'} | - | Imprime o dicionário `resultado`"
|
13 |
+
]
|
14 |
+
|
15 |
+
|
16 |
+
st.markdown ('''
|
17 |
+
```python
|
18 |
+
1. numeros = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
|
19 |
+
2. resultado = {}
|
20 |
+
3. for chave, valor in numeros.items():
|
21 |
+
4. if valor % 2 == 0:
|
22 |
+
5. resultado[chave] = 'par'
|
23 |
+
6. else:
|
24 |
+
7. resultado[chave] = 'ímpar'
|
25 |
+
8. print(resultado)
|
26 |
+
```
|
27 |
+
|
28 |
+
''', unsafe_allow_html = True
|
29 |
+
)
|
30 |
+
|
31 |
+
# Inicializando o índice da linha atual
|
32 |
+
if 'indice_atual' not in st.session_state:
|
33 |
+
st.session_state.indice_atual = 0
|
34 |
+
|
35 |
+
# Função para adicionar a próxima linha e mostrar a tabela acumulada
|
36 |
+
def adicionar_e_mostrar_linhas():
|
37 |
+
# Verificar se ainda há linhas a serem adicionadas
|
38 |
+
if st.session_state.indice_atual < len(dados_tabela):
|
39 |
+
# Exibir as linhas acumuladas até o momento
|
40 |
+
tabela_markdown = "\n".join(dados_tabela[:st.session_state.indice_atual + 1])
|
41 |
+
st.markdown(tabela_markdown, unsafe_allow_html = True)
|
42 |
+
st.session_state.indice_atual += 1
|
43 |
+
else:
|
44 |
+
st.markdown("Todas as linhas foram exibidas.")
|
45 |
+
|
46 |
+
# Botão para mostrar a próxima linha e atualizar a exibição
|
47 |
+
st.button("Mostrar próxima linha", on_click=adicionar_e_mostrar_linhas)
|