Python目录–创建,重命名,删除,列出,更改
祝您学习愉快!在本教程中,我们将学习Python目录。
在上一教程中,我们了解了Python File。
Python目录
Python目录基本上可以与操作系统目录一起使用。
要使用Python目录,我们需要导入os模块。
该操作系统模块包含用于创建,查看,删除,重命名目录的功能。
基本上,有一些通用功能可以访问Python目录。
功能如下
getcwd():此函数返回一个字符串,其中包含要执行代码的当前目录。
listdir(location):此函数返回包含当前目录名称的列表字符串。
chdir(location):此函数将当前目录更改为给定位置
mkdir(name):此函数创建一个具有给定名称的新目录标签。
重命名(old_name,new_name):此函数将old_name目录重命名为new_name目录
使用这些功能,您可以对python目录执行基本操作。
但是,为了展示示例,将提供一些示例代码来帮助您了解实现。
获取目录列表
您可以获取特定位置的目录列表。
为此,您必须使用listdir(location)函数。
如果放置该位置,则该函数将返回一个字符串列表,其中包含给定位置的目录名称。
以下代码将帮助您理解
import os #the os module need to be imported print(os.listdir('/usr')) #here the location is ‘/usr’
以下代码的输出将是:
================== RESTART: /home/imtiaz/directory.py ================== /home/imtiaz ['locale', 'sbin', 'local', 'games', 'lib', 'share', 'lib32', 'src', 'include', 'bin'] >>>
获取当前目录的位置
如前所述,您可以使用getcwd()函数获取当前目录的位置。
以下代码将说明您的想法
import os #we need to import this module print(os.getcwd()) #print the current location
以下代码的输出将是
================== RESTART: /home/imtiaz/cur_dir.py ================== /home/imtiaz >>>
为什么我们需要Python目录
阅读本教程,您可能会想到为什么我们需要Python目录。
在本节中,我们将讨论这个问题。
假设您正在使用Python开发一些软件,需要从不同目录读取/写入文件。
目录可以是动态的,因此您无法从代码中修复目录,而是需要动态选择目录。
选择目录后,您可能必须创建一个新目录或者写入文件或者从该目录中读取文件。
为此,Python引入了此功能。
您现在可能不需要此功能,但是Python目录稍后可能会为您提供帮助。
Python创建重命名删除目录示例
一个简单的程序,显示如何创建目录,然后重命名和删除它。
import os #change directory os.chdir('/Users/hyman/temp') #print current working directory print(os.getcwd()) #create directory os.mkdir("data") print(os.listdir(os.getcwd())) #rename directory os.rename("data","data1") print(os.listdir(os.getcwd())) #delete directory os.rmdir("data1") print(os.listdir(os.getcwd())) #delete non-empty directory os.rmdir("test") print(os.listdir(os.getcwd()))
当我们通过终端执行上述程序时,将产生以下输出。
hyman:BasicPython hyman$python directory.py /Users/hyman/temp ['data', 'test'] ['data1', 'test'] ['test'] Traceback (most recent call last): File "directory.py", line 22, in <module> os.rmdir("test") OSError: [Errno 66] Directory not empty: 'test'
注意," os.rmdir"只能删除空目录。
因此,要删除非空目录,我们将不得不使用shutil
模块。
下面是一个使用shutil模块删除目录的简单程序。
import shutil shutil.rmtree('/Users/hyman/temp/test')