Python:创建目录

2024-05-13 12:00:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在我的桌面目录中创建一个名为“downloaded”的目录,这不管用吗?以下内容:

import os
os.mkdir('~/Desktop/downloaded/')

Tags: import目录os桌面desktopmkdirdownloaded
3条回答

另一种方法,使用os.environ

import os
home=os.environ["HOME"]
path=os.path.join(home,"Desktop","download")
try:
    os.mkdir(path)
except IOError,e:
    print e
else:
    print "Successful"

不能简单地使用~必须使用os.path.expanduser~替换为正确的路径。

使用

import os
os.mkdir(os.path.expanduser("~/Desktop/downloaded"))

~字符是表示HOME环境变量内容的POSIX shell约定。因此,当您键入shell时:

$ mkdir ~/Desktop/downloaded

跟打字一样

$ mkdir $HOME/Desktop/downloaded

尝试更改HOME环境变量以验证我所说的。

因为这是一个shell约定,所以内核和Python都不特别对待它,Python os.mkdir函数只是内核mkdir(2)系统调用的包装器。为了方便起见,Python提供了os.path.expanduser函数,用HOME env var的内容替换tilde

$ HOME=/tmp  # it is already exported
$ python
Python 2.6.4 (r264:75706, Mar  2 2010, 00:28:19) 
[GCC 4.3.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.path.expanduser("~/dada")
'/tmp/dada'

相关问题 更多 >