Python convertir un str à type de chemin?
Je suis en train de faire l'interface avec le code existant, qui enregistre une configuration, et s'attend à un chemin d'accès au fichier est de type 'chemin.chemin". Le code s'attend à ce que le chemin d'accès au fichier est renvoyé à partir d'une pygtk fenêtre du navigateur (via une autre fonction). Je tiens à appeler l'save_config fonction d'ailleurs dans mon code avec un fichier chemin d'accès basé sur des entrées différentes, construit à partir d'éléments de chaîne.
Lorsque j'essaie d'exécuter le code, je suis en mesure de construire le chemin d'accès au fichier correctement, mais c'est un type de chaîne, et la fonction d'enregistrement s'attend à un " chemin d'accès.chemin d'accès type.
Est-il un moyen de convertir une chaîne de caractères à un type de trajectoire? J'ai essayé de chercher, mais ne pouvait trouver le cas inverse (chemin d'accès à la chaîne). J'ai aussi essayé d'utiliser os.path.join()
, mais qui renvoie une chaîne de caractères.
edit: C'est python 2.7, si cela fait une différence.
path.path(config_string)
Qu'est-ce que
path.path
? Sonne comme une classe est définie par le code que vous utilisez; ce n'est pas une norme de type ou de classe. Avant de Python 3.4, il n'y a pas de standard pour les chemins; les fonctions d'exploitation sur les chemins de juste utilisé la représentation de chaîne. Python 3.4 introduit la pathlib
module, ce qui permet une les objets à représenter des chemins.Quand je lance
type(file_path)
, je reçois <class 'path.path'>
comme une réponse. Il y a un from path import path
ligne en haut de mon fichier. Je suppose que c'est juste os.path
, mais je suis nouveau à cela, et le mec qui a écrit cet outil a quitté la société.
OriginalL'auteur realityinabox | 2014-09-30
Vous devez vous connecter pour publier un commentaire.
Peut-être que la réponse a travaillé pour python 2.7, si vous êtes sur Python 3 j'aime:
OriginalL'auteur Daniel
Depuis python 3.4:
https://docs.python.org/3/library/pathlib.html#module-pathlib
OriginalL'auteur Ray
Si
path.path
représente un type, vous pouvez probablement créer une instance de ce type avec quelque chose comme:OriginalL'auteur Bryan Oakley