Python 目录和文件管理
Python 目录和文件管理
在本教程中,您将了解 Python 中的文件和目录管理,即创建目录、重命名目录、列出所有目录以及使用它们。
视频:Python os 模块
Python 目录
如果我们的 Python 程序中有大量文件需要处理,我们可以将代码安排在不同的目录中,以使事情更易于管理。
目录或文件夹是文件和子目录的集合。 Python 有 os
该模块为我们提供了许多有用的方法来处理目录(和文件)。
获取当前目录
我们可以使用 getcwd()
获取当前工作目录 os
的方法 模块。
该方法以字符串的形式返回当前工作目录。我们也可以使用 getcwdb()
方法将其作为字节对象获取。
>>> import os
>>> os.getcwd()
'C:\\Program Files\\PyScripter'
>>> os.getcwdb()
b'C:\\Program Files\\PyScripter'
额外的反斜杠意味着转义序列。 print()
函数会正确渲染它。
>>> print(os.getcwd())
C:\Program Files\PyScripter
更改目录
我们可以使用 chdir()
来改变当前的工作目录 方法。
我们要更改的新路径必须作为字符串提供给此方法。我们可以同时使用正斜杠 /
或反斜杠 \
分隔路径元素。
使用反斜杠时使用转义序列更安全。
>>> os.chdir('C:\\Python33')
>>> print(os.getcwd())
C:\Python33
列出目录和文件
可以使用 listdir()
检索目录中的所有文件和子目录 方法。
此方法接受一个路径并返回该路径中的子目录和文件的列表。如果没有指定路径,则返回当前工作目录的子目录和文件列表。
>>> print(os.getcwd())
C:\Python33
>>> os.listdir()
['DLLs',
'Doc',
'include',
'Lib',
'libs',
'LICENSE.txt',
'NEWS.txt',
'python.exe',
'pythonw.exe',
'README.txt',
'Scripts',
'tcl',
'Tools']
>>> os.listdir('G:\\')
['$RECYCLE.BIN',
'Movies',
'Music',
'Photos',
'Series',
'System Volume Information']
创建一个新目录
我们可以使用 mkdir()
创建一个新目录 方法。
此方法采用新目录的路径。如果未指定完整路径,则在当前工作目录中创建新目录。
>>> os.mkdir('test')
>>> os.listdir()
['test']
重命名目录或文件
rename()
方法可以重命名目录或文件。
对于重命名任何目录或文件,rename()
方法接受两个基本参数:旧名称作为第一个参数,新名称作为第二个参数。
>>> os.listdir()
['test']
>>> os.rename('test','new_one')
>>> os.listdir()
['new_one']
删除目录或文件
可以使用 remove()
移除(删除)文件 方法。
同样,rmdir()
方法删除一个空目录。
>>> os.listdir()
['new_one', 'old.txt']
>>> os.remove('old.txt')
>>> os.listdir()
['new_one']
>>> os.rmdir('new_one')
>>> os.listdir()
[]
注意 :rmdir()
方法只能删除空目录。
为了删除一个非空目录,我们可以使用 rmtree()
shutil
中的方法 模块。
>>> os.listdir()
['test']
>>> os.rmdir('test')
Traceback (most recent call last):
...
OSError: [WinError 145] The directory is not empty: 'test'
>>> import shutil
>>> shutil.rmtree('test')
>>> os.listdir()
[]
Python