Si tengo dos scripts, uno tiene una lista y se está ejecutando actualmente y el otro necesita acceder a esa lista mientras se ejecuta el primero, ¿cómo lo haría?

Ejemplo

Script 1

import random
example_list = []
while True:
    example_list.append(random.randint(0,9))

Guión 2

x = example_list[i]

No puedo cambiar el Script 1.
¿Cómo accedería a la lista creada en Script 1 desde Script 2?

PD Este es solo un ejemplo, por lo que su propósito no importa.

-2
Markus 29 oct. 2017 a las 20:34

3 respuestas

La mejor respuesta

¡No! No puedes hacerlo. Al menos en python.

No hay forma de acceder a una variable en otro proceso en ejecución.

0
Elis Byberi 29 oct. 2017 a las 18:03

Creo que lo que está buscando es la comunicación entre procesos (IPC), donde el primer script está completando una variable y el segundo script quiere usarlo. Podría haber varios mecanismos para IPC: colas de mensajes, archivos compartidos, etc. Si su requisito es tan simple como capturar el contenido de la lista (y la lista contiene cadenas, enteros solos) para que otro script pueda usarlo, puede volcarlo en un archivo conocido como código python o JSON y léalo del segundo script. Puede encurtir los datos y capturar los datos encurtidos en un archivo y desempaquetar en la segunda secuencia de comandos, siempre que los datos en la lista sean seleccionables.

0
Sharad 29 oct. 2017 a las 17:47

Si puede utilizar el multiprocesamiento (un proceso inicia el otro), puede compartir la lista utilizando las capacidades de multiprocesamiento. Eche un vistazo a Multiprocesamiento

0
John Anderson 29 oct. 2017 a las 17:53