使用Python中的OS模块更改目录

时间:2014-02-19 13:17:46

标签: python python-2.7 python-3.x

我想使用Python读取目录中的所有.csv文件。所以当我用谷歌搜索它时,我得到了这个解决方案 Find all files in a directory with extension .txt in Python

但是当我进入

import glob
import os
os.chdir("/Desktop")

我收到以下错误

>>> os.chdir("~/Desktop")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
OSError: [Errno 2] No such file or directory: '~/Desktop'

我真的很困惑我错在哪里?提前谢谢。

3 个答案:

答案 0 :(得分:3)

您需要使用os.path.expanduser

~展开到实际主目录
>>> import os
>>> os.path.expanduser('~/Desktop')
'/home/falsetru/Desktop'

否则,~表示目录~(字面意思为~)。

答案 1 :(得分:0)

os.chdir不做波浪扩展。你需要

os.chdir(os.path.join(os.getenv("HOME"), "Desktop"))

转到~/Desktop

答案 2 :(得分:0)

>>> import os   
>>> os.chdir('~/Desktop')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
OSError: [Errno 2] No such file or directory: '~/Desktop'
>>> os.chdir(os.path.expanduser('~/Desktop'))
>>> os.getcwd()
'/users/xxx/Desktop'