I have the following script that will run each script (sequentially) in a directory:
import os
directory = []
for dirpath, dirnames, filenames in os.walk("path\to\scripts"):
for filename in [f for f in filenames if f.endswith(".py")]:
directory.append(os.path.join(dirpath, filename))
for entry in directory:
execfile(entry)
print x
my scripts look like this:
def script1():
x = "script 1 ran"
return x
script1()
When print x is called, it says x is not defined. I’m just curious if there is a way to return values so that the parent script can access the data.
This is why you define functions and return values.
Script 1 should include a function.
Works the same as yours, but now can be used elsewhere
Script 2 does this.
That’s the way one script uses another.