J'ai quelque chose comme ça dans mon programme: Un script principal main.py dans un dossier nommé 'OpenFileinaModule'. Il y a un dossier appelé 'sub' à l'intérieur avec un script appelé subScript.py et un fichier xlFile.xlsx, qui est ouvert par subScript.py.Python - Comment ouvrir un fichier dans un module?
OpenFileinaModule/
main.py
sub/
__init__.py (empty)
subScript.py
xlFile.xlsx
Voici le code:
sub.Script.py:
import os, openpyxl
class Oop:
def __init__(self):
__file__='xlFile.xlsx'
__location__ = os.path.realpath(
os.path.join(os.getcwd(), os.path.dirname(__file__)))
print os.path.join(__location__, __file__)
self.wrkb = openpyxl.load_workbook(os.path.join(__location__,
__file__),read_only=True)
main.py:
import sub.subScript
objt=sub.subScript.Oop()
Quand j'exécute main.py, je reçois la erreur:
IOError: [Errno 2] No such file or directory: 'C:\\Users\\...\\OpenFileInaModule\\xlFile.xlsx'
Il saute le sous-dossier ... J'ai essayé
__file__='sub/xlFile.xlsx'
Mais le "sous" le dossier est dupliquée:
IOError: [Errno 2] No such file or directory: 'C:\\Users\\...\\OpenFileInaModule\\sub\\sub/xlFile.xlsx'
Comment ouvrir xlFile.xlsx avec subScript.py de main.py?
C'est exactement ce que je cherchais. Est-ce une chose commune à faire? –