Je crée une application qui stocke des fichiers blob sur le disque dur, mais ce script doit s'exécuter dans Linux et Windows, le problème est que je veux lui donner un chemin absolu depuis la racine du système de fichiers et non celle relative aux fichiers du projet, ceci parce que j'utilise git et que je ne veux pas m'occuper de l'exclusion de tous ces fichiers de la synchronisation.Utilisation de chemins unix absolus dans Windows avec python
Donc je voudrais avoir quelque chose comme ceci:
path = '/var/lib/blob_files/'
file = open(path+'myfile.blob', 'w')
et obtenir un fichier unix à:
/var/lib/blob_files/myfile.blob
et dans les fenêtres à:
C:\var\lib\blob_files\myfile.blob
il pourrait aussi être relatif au dossier de départ de l'utilisateur (/ home/user dans unix et C:/Users/User dans Windows) mais je suppose que le problème est très similaire.
Comment puis-je y parvenir? Y at-il une bibliothèque ou une fonction qui peut m'aider à convertir ces chemins de façon transparente sans avoir à demander dans quelle plateforme le script fonctionne-t-il tout le temps?
Parmi mes deux options, absolues à partir de la racine ou relatives à partir du dossier de départ, laquelle recommandez-vous d'utiliser?
Merci à l'avance pour tout conseil sur ce
double possible de [les chemins de fichier Plate-forme indépendante?] (Http://stackoverflow.com/questions/6036129/platform-independent-file-paths) – dm03514
Pas un doublon. Allez les gars, donnez une pause aux nouveaux. –
Je ne suis pas sûr pourquoi vous pensez que vous avez besoin d'un chemin absolu "parce que im utilisant git et ne veux pas faire face à l'exclusion de tous ces fichiers". Comment cela se passe-t-il?Quoi qu'il en soit, il semble que le relatif à la maison a plus de sens ici, parce que les utilisateurs de Windows n'auront pas de répertoire appelé C: \ var \ lib \ ', donc créer C: \ var \ lib \ blob_files sera bizarre , mais créer l'équivalent Windows de '~/.blob_files' est parfaitement raisonnable. – abarnert