I was trying to execute the Program that I coded in Windows, in a Linux environment, I was consistently getting error on the line that was supposed to Import the file from the sub-folder.
The program gives the following error,
Traceback (most recent call last):
File "BlackBox.py", line 26, in <module>
from BB_Files import BB_Expand
ImportError: No module named BB_Files
Despite the presence of the file BB_Expand inside BB_Files folder, I am still getting the error.
I have also tried appending the path of my current directories in Python,
sys.path.append("/home/pe/Desktop/AES")
# Sub-Folders of AES are also accessible
sys.path.append("/home/pe/Desktop/AES/BB_Files")
But Still no Luck,
This is the File Structure,
/home/pe/Desktop/AES/Main.py
/home/pe/Desktop/AES/BB_Files
/home/pe/Desktop/AES/BB_Files/BB_Days.py
/home/pe/Desktop/AES/BB_Files/BB_Expand.py
/home/pe/Desktop/AES/BB_Files/BB_Steps.py
this is the output of ls -l command,
drwxrwx--x 4 pe users 4096 Oct 26 21:43 BB_Files
-rw-rw---- 1 pe users 15284 Oct 26 22:04 Main.py
This is some initial code in the file,
import sys # sys.argv ; sys.path, sys.exit
import os
import hashlib
import struct # Interpret strings as packed binary data
import getopt # for Runtime arguments
import time
from datetime import date
# Append Paths from where the Files would be Imported.
sys.path.append("/home/pe/Desktop/AES")
# Sub-Folders of AES are also accessible
sys.path.append("/home/pe/Desktop/AES/BB_Files")
# Sub-Fodlers of BB_Files are also accessible now (Tables)
from BB_Files import BB_Expand
from BB_Files import BB_Steps
from BB_Files import BB_Days
This is the line giving an error,
from BB_Files import BB_Expand
The program doesn't run after this line because the Python couldn't find this Module.
But when I tried to print the path of the current directory I get nothing, have a look,
print("Path is:",os.path.dirname(__file__))
print("sufiyan")
Output:
('Path is:', '')
sufiyan
Traceback (most recent call last):
File "BlackBox.py", line 25, in <module>
from bbfiles import bbexpand
ImportError: No module named bbfiles
I want to know why the path is not being printed while its printing fine in Windows. All i get is a black space instead of the path of the current directory.
__init__.pyfile to both foldersfrom xxx import yyydoes not meanxxxis a directory andyyyis some module in that directory. Try adding an empty__init__.pyfile toxxxand then it those will work. Look up "packages" in the documentation.