回答
你不能简单地用~
必须使用os.path.expanduser有一条合适的路径来代替~
。
因此,您可以用'os.mkdir(os.expanduser('〜/ Desktop/Downloaded /'))'。 – LeafStorm 2010-03-19 22:32:41
@Leafstorm'os.path.expanduser',而不是'os.expanduser'。 – 2010-03-19 23:06:49
使用
import os
os.mkdir(os.path.expanduser("~/Desktop/downloaded"))
的~
字符是一个POSIX外壳约定,代表HOME环境变量的内容。所以,当你在一个shell中键入:
$ mkdir ~/Desktop/downloaded
是一样的打字
$ mkdir $HOME/Desktop/downloaded
尝试改变HOME环境变量来验证我说的话。
由于这是一个shell约定,它不是内核专门处理的东西,也不是Python,Python的os.mkdir
函数只是内核mkdir(2)
系统调用的一个包装。作为一个方便,Python提供了os.path.expanduser
函数来将HOME代码变量的内容替换为代字号。
$ HOME=/tmp
$ 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'
另一种方式,用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"
- 1. 创建目录Python
- 2. 创建目录+子目录
- 3. 创建目录
- 4. 创建目录
- 5. 在python(复杂)创建/制作目录
- 6. python创建tmp目录权限
- 7. Python创建目录给出IO错误
- 8. Word和Python的 - 创建目录
- 9. 通过Python创建文件和目录
- 10. Python。活动目录。创建用户
- 11. Android创建目录
- 12. PHP创建目录
- 13. codeigniter创建目录
- 14. PHP:创建目录
- 15. java:创建目录
- 16. 目录未创建
- 17. 为子目录创建Makefile目录
- 18. 虚拟目录创建
- 19. 二郎创建目录
- 20. 创建jar文件目录?
- 21. 创建git开发目录
- 22. 在Android中创建目录
- 23. 通过mkdir创建目录
- 24. mediaStorageDir.mkdirs()不创建目录
- 25. HDFS中创建目录
- 26. Alfresco:无法创建目录
- 27. 创建数据目录
- 28. 创建嵌套目录
- 29. 无法创建目录:joomla
- 30. 创建从目录列表
如果桌面dir是在其他语言?????如何在任何语言的桌面上定位? – Ernie 2011-01-30 18:45:56
对于执行“mkdir -p”等效操作的代码,请参阅http://stackoverflow.com/q/600268/319741 – 2012-03-29 14:16:30