将 str 转换为路径类型?

问题描述 投票:0回答:3

我正在尝试与一些保存配置的现有代码进行交互,并期望类型为

path.path
的文件路径。 该代码期望从 pygtk 浏览器窗口返回文件路径(通过另一个函数)。 我想在代码中的其他位置调用
save_config
函数,并使用基于不同输入(由字符串元素构造)的文件路径。

当我尝试运行代码时,我能够正确构造文件路径,但它是字符串类型,并且保存函数需要

path.path
类型。

有没有办法将字符串转换为路径类型? 我尝试过搜索,但只能找到相反的情况(字符串的路径)。 我也尝试过使用

os.path.join()
,但这也返回一个字符串。

编辑:这是 python 2.7,如果这有什么不同的话。

python string python-2.7 path
3个回答
81
投票

自 python 3.4 起:

from pathlib import Path
str_path = "my_path"
path = Path(str_path)

https://docs.python.org/3/library/pathlib.html#module-pathlib


27
投票

也许这个答案适用于 python 2.7,如果你使用的是 Python 3,我喜欢:

import os

p = "my/path/to/file.py"
os.path.normpath(p)
'my\\path\\to\\file.py'

0
投票

path.path
不是标准的 python 类型。在不知道
path.path
在您的环境中实际是什么的情况下,如果
path.path
代表一个类,那么您可能可以使用如下内容创建该类的实例:

string_path = "/path/to/some/file"
the_path = path.path(string_path)
save_config(the_path)
© www.soinside.com 2019 - 2024. All rights reserved.