I have script1.py
that is running/calling another script (script2.py
).
script1.py
import sys
Wpath ='C:\PycharmProjects'
sys.path.insert(1, Wpath) # insert at 1, 0 is the script path (or '' in REPL)
import script2 as my_script
input_folder_name = 'TEST'
def run_Script():
# todo
if len(input_folder_name) != 0:
my_script.SpecificFolders(outlook.Folders[user].Folders)
else:
my_script.AllFolders(outlook.Folders[user].Folders)
run_Script()
script2.py
if __name__ == "__main__":
import win32com.client
import os
import glob
import re
import sys
path = 'C:\PycharmProjects'
os.chdir(path)
outlook = win32com.client.Dispatch("Outlook.Application").GetNamespace("MAPI")
user = outlook.Application.Session.CurrentUser.AddressEntry.GetExchangeUser().PrimarySmtpAddress
def SpecificFolders(folders):
my_list = []
for folder in folders:
if (folder.name == input_folder_name) and (input_folder_name != ""):
print(folder.name)
my_list.append(folder.name)
my_list += SpecificFolders(folder.Folders)
return my_list
When I run script1.py
I get the message:
AttributeError: module 'script2' has no attribute 'SpecificFolders'
Can someone tell me why script1
is not "seeing" the function (SpecificFolders
) inside script2
?
And if possible, how to fix this error?