Import de fichier sous MacOS

Bonjour Diablo76,

Je m'adresse à toi car tu m'as déjà répondu sur plusieurs problèmes

avec MacOS    :-)

J'ai un dossier contenant un fichier test.py et un dossier data

dans data, j'ai un fichier test_lib.py

J'importe donc test_lib dans test de cette façon:

import sys
import os

sys.path.append(os.getcwd() + r'\data')
from test_lib import *

Sous Windows, pas de problème

Sous Mac, est-ce que cela fonctionne ?

Merci d'avance


Windows / Edge 122.0.0.0

3 réponses

  1. Salut Phil,

    Non, ça ne fonctionne pas, car c'est le slash qui est utilisé sous macOS, Linux aussi d'ailleurs...

    Solution :

    import os
    ...
    sys.path.append(os.path.join(os.getcwd(), "data"))
    
    # ou
    
    sys.path.append(os.getcwd() + os.sep + "data")

    On peut également utiliser le module pathlib.

    Mais pourquoi ne pas faire :

    from data.test_lib import *
    0
    1. Bonjour Diablo,

      Et une fois de plus, merci !

      0
      1. Bonjour

        En Python, le slash marche aussi sous Windows (c'est pas vrai pour tous les langages)

        Du coup, la solution la plus simple est de toujours utiliser un slash


        0
        1. C'est pas faux 

          0