Comment puis-je obtenir (globals) pour appeler le script Python avec le sous-processus ()?

voix
0

Je veux utiliser un script pour appeler un autre script run.py

# main.py
import subprocess
import sys

def fn():
    print('I am fn...')

fpath = '/Users/runtest/run.py'

def run_with_exec():
    with open(fpath, 'r', encoding=utf8) as f:
        code = f.read()
    exec(compile(code.encode(utf-8), fpath, 'exec'), globals())

def run_with_subprocess():
    subprocess.run([sys.executable, fpath])  # Just run the program

if __name__ == __main__:
    run_with_exec()
    run_with_subprocess()

La course run_with_exec () peut envoyer () globals et le run.py de script appelé peut utiliser la fonction fn () dans main.py. Mais comment puis-je courir avec run_with_subprocess () pour rendre le script appelé run.py utiliser la fonction fn () dans main.py? Je suis à la recherche depuis longtemps sur le net. Mais aucune utilité. S'il vous plaît aider ou essayer de donner quelques idées sur la façon d'y parvenir.

Créé 24/10/2019 à 12:55
source utilisateur
Dans d'autres langues...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more