2016-02-12 18 views

risposta

4

Dato 2 script python: first.py e second.py, il solito modo di eseguire il primo dal secondo è qualcosa nelle linee di:

first.py:

def func1(): 
    print 'inside func1 in first.py' 

if __name__ == '__main__': 
    # first.py executed as a script 
    func1() 

second.py:

import first 

def second_func(): 
    print 'inside second_func in second.py' 

if __name__ == '__main__': 
    # second.py executed as a script 
    second_func() 
    first.func1() # executing a function from first.py 

modifiche:

  • Si potrebbe anche optare per il semplice execfile("second.py") se lo si desidera (anche se è solo all'interno dello spazio dei nomi chiamante).
  • E un'opzione finale utilizza os.system in questo modo:
    os.system("second.py").
+0

ho trovato il 'execfile' di essere più simile a' fonte fissa di R – vpipkt

0

Se si è abituati a effettuare il sourcing direttamente da GitHub, è possibile utilizzare il pacchetto di richieste per scaricare il file * .py raw con un get http e quindi eseguire il file.

import requests 
exec(requests.get('http://github.myorg.net/raw/repo/directory/file.py').text) 

Diniego: Sono un utente R imparare Python, quindi questo potrebbe essere violare alcune best practice Python