理解`os.path.join`如何与`os.path.expanduser`一起工作

时间:2017-07-25 18:23:46

标签: python operating-system

这行代码意味着什么

datafolder = os.path.join(os.path.expanduser("~"), "Data", "books")

这一行是否会创建一个名为datafolder的文件夹,如果可以,我可以将文件插入其中并通过该行加载文件

!load getdata.py

1 个答案:

答案 0 :(得分:2)

来自文档:

  

os.path.expanduser(path)

     

在Unix和Windows上,返回参数   〜或〜用户的初始组件由该用户的主页替换   。目录

在Unix中,您的主目录由波浪号(~)符号表示。使用os.path.expanduser将代字号扩展为实际路径:

In [765]: os.path.expanduser("~")
Out[765]: '/Users/Coldspeed'

此字符串以及'Data''books'os.path.join连接在一起,形成一个完全限定的路径:

In [766]: os.path.join(os.path.expanduser("~"), 'Data', 'books')
Out[766]: '/Users/Coldspeed/Data/books'

这是一种指定主目录的便捷方式,无需对其进行硬编码。