Generation

generate functionTue, 09 Dec 2025

Ejemplo de aplicación dash python, que permita ingresar al usuario el número1, número2, numeromínimo, númeromáximo, un botón ejecutar que ejecuta todas las tareas y guarda la tablas. El númeromínimo y el númeromaximo establecen el rango para generar números aleatorios. se debe crear la tabla aleatorio1 de 100 números aleatorios, el numero1 se multiplica a los valores de la tabla aleatorio1 y se crea una tabla multiplicado1, el numero2 se multiplica a la tabla multiplicado1 y se crea la tabla multiplicado2. Se debe mostrar al usuario las tablas aleatorio1, multiplicado1, multiplicado2 en 10 columnas y celdas con formato. Al apretar el botón ejecutar se debe mostrar la tabla aleatorio 1, multiplicado1, multiplicado2 y guardar las tablas aleatorio 1, multiplicado 1, multiplicado 2, los datos deben tener solo dos decimales.

Aquí te muestro un ejemplo de aplicación Dash que cumple con tus requisitos: ```python import dash import dash_core_components as dcc import dash_html_components as html from dash.dependencies import Input, Output, State import pandas as pd import numpy as np # Inicializar la aplicación Dash app = dash.Dash(__name__) # Definir la estructura de la aplicación app.layout = html.Div([ html.H1('Aplicación de generación de tablas aleatorias'), html.Div([ html.Label('Número 1:'), dcc.Input(id='numero1', type='number', value=1), ]), html.Div([ html.Label('Número 2:'), dcc.Input(id='numero2', type='number', value=1), ]), html.Div([ html.Label('Número mínimo:'), dcc.Input(id='numerominimo', type='number', value=0), ]), html.Div([ html.Label('Número máximo:'), dcc.Input(id='numeromaximo', type='number', value=100), ]), html.Button('Ejecutar', id='boton-ejecutar', n_clicks=0), html.Div(id='tabla-aleatoria1'), html.Div(id='tabla-multiplicada1'), html.Div(id='tabla-multiplicada2'), ]) # Definir la función para generar la tabla aleatoria def generar_tabla_aleatoria(numerominimo, numeromaximo, numero1, numero2): np.random.seed(0) # Semilla para reproducibilidad tabla_aleatoria = pd.DataFrame(np.random.randint(numerominimo, numeromaximo, size=(100, 1)), columns=['Valor']) tabla_multiplicada1 = tabla_aleatoria * numero1 tabla_multiplicada2 = tabla_multiplicada1 * numero2 return tabla_aleatoria, tabla_multiplicada1, tabla_multiplicada2 # Definir la función para mostrar las tablas def mostrar_tablas(tabla_aleatoria, tabla_multiplicada1, tabla_multiplicada2): tabla_aleatoria = tabla_aleatoria.round(2).to_string(index=False) tabla_multiplicada1 = tabla_multiplicada1.round(2).to_string(index=False) tabla_multiplicada2 = tabla_multiplicada2.round(2).to_string(index=False) return html.Div([ html.H2('Tabla aleatoria'), html.Table([ html.Thead([ html.Tr([html.Th('Valor') for _ in range(10)]) ]), html.Tbody([ html.Tr([html.Td(cell) for cell in row[:10]]) for row in tabla_aleatoria.split('\n')[1:-1] ]) ]), html.H2('Tabla multiplicada 1'), html.Table([ html.Thead([ html.Tr([html.Th('Valor') for _ in range(10)]) ]), html.Tbody([ html.Tr([html.Td(cell) for cell in row[:10]]) for row in tabla_multiplicada1.split('\n')[1:-1] ]) ]), html.H2('Tabla multiplicada 2'), html.Table([ html.Thead([ html.Tr([html.Th('Valor') for _ in range(10)]) ]), html.Tbody([ html.Tr([html.Td(cell) for cell in row[:10]]) for row in tabla_multiplicada2.split('\n')[1:-1] ]) ]), ]) # Definir la función para guardar las tablas def guardar_tablas(tabla_aleatoria, tabla_multiplicada1, tabla_multiplicada2): tabla_aleatoria.to_csv('tabla_aleatoria.csv', index=False) tabla_multiplicada1.to_csv('tabla_multiplicada1.csv', index=False) tabla_multiplicada2.to_csv('tabla_multiplicada2.csv', index=False) # Definir la función para actualizar el estado de la aplicación @app.callback( [Output('tabla-aleatoria1', 'children'), Output('tabla-multiplicada1', 'children'), Output('tabla-multiplicada2', 'children')], [Input('boton-ejecutar', 'n_clicks')], [State('numero1', 'value'), State('numero2', 'value'), State('numerominimo', 'value'), State('numeromaximo', 'value')], prevent_initial_call=True ) def actualizar_estado(n_clicks, numero1, numero2, numerominimo, numeromaximo): tabla_aleatoria, tabla_multiplicada1, tabla_multiplicada2 = generar_tabla_aleatoria(numerominimo, numeromaximo, numero1, numero2) return mostrar_tablas(tabla_aleatoria, tabla_multiplicada1, tabla_multiplicada2) # Definir la función para guardar las tablas al hacer clic en el botón @app.callback( Output('guardar-tablas', 'data'), [Input('boton-ejecutar', 'n_clicks')], [State('numero1', 'value'), State('numero2', 'value'), State('numerominimo', 'value'), State('numeromaximo', 'value')], prevent_initial_call=True ) def guardar_tablas(n_clicks, numero1, numero2, numerominimo, numeromaximo): tabla_aleatoria, tabla_multiplicada1, tabla_multiplicada2 = generar_tabla_aleatoria(numerominimo, numeromaximo, numero1, numero2) guardar_tablas(tabla_aleatoria, tabla_multiplicada1, tabla_multiplicada2) return 'Tablas guardadas con éxito' # Iniciar la aplicación if __name__ == '__main__': app.run_server(debug=True) ``` Este código crea una aplicación Dash que permite al usuario ingresar los números 1, 2, mínimo y máximo. Al hacer clic en el botón "Ejecutar", la aplicación genera una tabla aleatoria con 100 números entre el mínimo y el máximo, multiplica la tabla por el número 1 y luego por el número 2, y muestra las tres tablas en la pantalla. Además, la aplicación guarda las tres tablas en archivos CSV en el directorio actual. Recuerda que debes tener instalado el paquete `dash` y sus dependencias para ejecutar este código. Puedes instalarlos con `pip install dash pandas numpy`.

Want to kickstart your project?Use the new AI Studio to create your code