python文件和目录操作方法大全

合集下载

【Python】python文件名和文件路径操作

【Python】python文件名和文件路径操作

【Python】python⽂件名和⽂件路径操作Readme:在⽇常⼯作中,我们常常涉及到有关⽂件名和⽂件路径的操作,在python⾥的os标准模块为我们提供了⽂件操作的各类函数,本⽂将分别介绍“获得当前路径”“获得当前路径下的所有⽂件和⽂件夹,”删除⽂件“,“删除⽬录/多个⽬录”,“检查⽂件/⽂件路径”,“检查⽂件路径是否存在”,“分离⽂件路径及⽂件名”,“分离⽂件扩展名“,”得到⽂件名”和得到”⽂件路径“。

1 import os2'''获得当前路径3'''4 cwd=os.getcwd()5 print(cwd)678'''9得到当前⽂件夹下的所有⽂件和⽂件夹10'''11 print(os.listdir())121314'''15 delete file16'''17 os.remove('sw724.vaps')18 print(os.listdir())192021'''22删除单个⽬录和多个⽬录23'''24 os.removedir()25 os.removedir()262728'''29检查是否是⽂件/⽂件夹30'''31 print(os.path.isfile('/Users/liuxiaolong/PycharmProjects/untitled/sw724.vaps'))32 print(os.path.isdir('/Users/liuxiaolong/PycharmProjects/untitled/sw724.vaps'))333435'''36检查⽂件路径是否存在37'''3839 print(os.path.exists('/Users/liuxiaolong/PycharmProjects/untitled/iiii'))4041'''42分离⽂件名43分离扩展名4445'''46 [dirname,filename]=os.path.split('/Users/liuxiaolong/PycharmProjects/untitled/sw724.vaps')47 print(dirname,"\n",filename)4849 [fname,fename]=os.path.splitext('/Users/liuxiaolong/PycharmProjects/untitled/sw724.vaps')50 print(fname,"\n",fename)5152'''53获得⽂件路径54获得⽂件名55获得当前环境56'''57 print("get pathname:",os.path.dirname('/Users/liuxiaolong/PycharmProjects/untitled/sw724.vaps'))58 print("get filename:",os.path.basename('/Users/liuxiaolong/PycharmProjects/untitled/sw724.vaps'))59 print(os.getenv)。

python中用两种方法-查看目录下所有目录和文件

python中用两种方法-查看目录下所有目录和文件
fi_d = os.path.Байду номын сангаасoin(filepath,fi) if os.path.isdir(fi_d):
gci(fi_d) else:
print(os.path.join(filepath,fi_d))
#递归遍历/root目录下所有文件 gci('/opt/code/my_code/zk_css/common')
return res
def get_config_dirs(): res = {'dirname': 'root', 'child_dirs': [], 'files': []} return list_dir(r'/opt/code/my_code/zk_css', res)
if __name__ == '__main__': print(json.dumps(get_config_dirs()))
方法2:
''' 学习中遇到问题没人解答?小编创建了一个Python学习交流群:725638078 寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书! ''' import os def gci(filepath): #遍历filepath下所有文件,包括子目录
files = os.listdir(filepath) for fi in files:
for i in os.listdir(path): temp_dir = os.path.join(path, i) if os.path.isdir(temp_dir): temp = {"dirname": temp_dir, 'child_dirs': [], 'files': []} res['child_dirs'].append(list_dir(temp_dir, temp)) else: res['files'].append(i)

如何在Python中进行文件和目录操作

如何在Python中进行文件和目录操作

如何在Python中进行文件和目录操作?在Python中进行文件和目录操作是非常常见的任务。

Python提供了许多内置模块和函数,使我们能够轻松地执行文件和目录相关的操作。

本文将介绍Python中文件和目录操作的常用方法,包括创建、读取、写入和删除文件,以及目录的创建、遍历和删除。

1.创建文件:-使用内置的open()函数可以创建一个新文件。

open()函数接受两个参数,第一个参数是文件路径,第二个参数是打开方式。

-例如,使用`open("file.txt", "w")`可以创建一个名为file.txt的空文件。

-第二个参数可以是以下几种模式之一:- "w":写入模式,会覆盖文件中的内容。

- "a":追加模式,将内容添加到文件的末尾。

- "r":读取模式,用于读取文件的内容。

- "x":如果文件已经存在,则会引发FileExistsError。

-使用完文件后,应使用`file.close()`将文件关闭,释放系统资源。

2.写入文件:-使用open()函数创建文件对象后,可以使用write()方法将数据写入文件。

- write()方法接受一个字符串参数,将其写入文件中。

-例如,打开一个文件对象`file`后,可以使用`file.write("Hello, world!")`将字符串写入文件中。

-写入完成后,务必使用`file.close()`关闭文件。

3.读取文件:-使用open()函数创建文件对象后,可以使用read()方法来读取文件的内容。

- read()方法有以下几种用法:- `file.read()`:读取整个文件的内容,并将其作为一个字符串返回。

- `file.read(n)`:读取文件的前n个字符或字节。

- `file.readline()`:读取文件的一行,并返回一个字符串。

Python文件操作详解

Python文件操作详解

Python文件操作详解Python是一种高级编程语言,它已经成为了数据科学和机器学习领域中最受欢迎的编程语言之一。

Python具有语法简单、易于学习、跨平台等优点,同时支持许多操作系统,能够准确地处理文件和目录等信息。

在Python中,文件操作是非常方便且功能强大的。

本文将详细介绍Python文件操作的相关内容。

一、基本的文件操作1.1.打开文件要打开文件以进行读取或写入操作,就需要使用Python的open()函数将文件对象赋值给一个变量。

我们可以传递给open()函数参数包含要打开的文件名和要执行的操作类型。

例如,要打开一个名为file.txt的文本文件并进行写入操作,可以进行以下操作:```file = open('file.txt', 'w')```在这里,'w'表示以写入模式打开文件。

通过'w'模式打开文件时,如果文件不存在,将会创建一个新文件。

如果文件已经存在,则会清空文件中的所有内容并进行重写。

如果要读取文件,则可以使用' r '模式打开文件。

如果要进行附加,则可以使用'a'模式打开文件。

以下是示例代码:```file = open('file.txt', 'r')file = open('file.txt', 'a')```1.2.读取文件内容打开文件后,我们可以使用read()、readline()或readlines()函数读取文件内容。

read()函数通常用于读取整个文件的内容,而readline()函数用于一次读取一行。

readlines()函数可以读取整个文件并返回一个列表,其中每一项是文件中的行。

以下是示例代码:```file = open('file.txt', 'r')#读取整个文件file_contents = file.read()print(file_contents)#读取一行file_contents = file.readline()print(file_contents)#读取整个文件并返回一个列表file_contents = file.readlines()print(file_contents)```1.3.写入文件内容在Python中,我们可以使用write()函数向文件中写入内容。

os库常用方法

os库常用方法

os库常用方法
Python的os库提供了一系列常用的方法,用于文件和目录的操作。

以下是一些常用的os库方法:
1. (name_old, name_new):重命名文件或目录,从 name_old 到
name_new。

2. (path):判断指定路径是否存在。

3. (path[, mode]):递归创建目录。

像mkdir(),但创建的所有intermediate-level文件夹需要包含子文件夹。

4. (path):创建目录,只能创建单级目录。

5. (path):改变当前工作目录。

6. ():返回当前工作目录。

7. (path):返回指定路径下的文件和文件夹列表。

8. (top[, topdown=True[, onerror=None[, followlinks=False]]]):输出在文件夹中的文件名,通过在树中游走,向上或者向下。

9. ():合并多个路径组件,添加'/'为路径分隔符。

10. (file_name):剔除路径,返回最后的文件名。

以上只是os库的一部分常用方法,更多方法可以查阅Python官方文档或相关资料进行了解。

python文件和路径操作

python文件和路径操作

python⽂件和路径操作1: os.listdir(path) //path为⽬录功能相当于在path⽬录下执⾏dir命令,返回为list类型print os.listdir('..')2: os.path.walk(path,visit,arg)path :是将要遍历的⽬录visit :是⼀个函数指针,函数圆形为:callback(arg,dir,fileList)其中arg为为传给walk的arg , dir是path下的⼀个⽬录,fileList为dir下的⽂件和⽬录组成的list, arg:传给visit⽤的3:os.path.split(path)path 为⼀个路径,输出,把path分成两部分,具体看实例:print os.path.split("abc/de.txt")('abc', 'de.txt')os.path.split("abc")(", 'abc')print os.path.split("de/abc/de")('de/abc', 'de')4: os.path.splitext(filename)把⽂件名分成⽂件名称和扩展名os.path.splitext(abc/abcd.txt)('abc/abcd', '.txt')5: os.path.dirname(path)把⽬录名提出来print os.path.dirname("abc")#输出为空print os.path.dirname('abc\def')abc6: os.path.basename(filename)取得主⽂件名print os.path.basename('abc')abcprint os.path.basename('abc.txt')abcprint os.path.basename('bcd/abc')abc #这个需要注意不包括⽬录名称print os.path.basename('.').7:os.mkdir(path, [mode])path为⽬录名:这⾥有个要求,只能创建⼀级⽬录⽐如path为 abc/def 则当前⽬录下必须存在abc 否则失败8: os.makedirs(path [,mode])可以创建多级⽬录9:os.remove(path)删除⼀个⽂件,⼀定是⼀个⽂件os.removedirs(path) 删除⼀个⽬录下所有东西os.rmdir(path) 删除⼀个⽬录,⽽且⼀定要空,否则os.errer10:os.walk(path)遍历path,返回⼀个对象,他的每个部分都是⼀个三元组('⽬录x',[⽬录x下的⽬录list],⽬录x下⾯的⽂件)举例:a = os.walk('.')for i in a:print i11:shutil.copy(src,dst)把⽂件src内容拷贝到⽂件dst中。

Python学习--文件操作(2)

Python学习--文件操作(2)

Python‎文件操作--目录的基本操‎作目录是文件存‎储的集合,对目录的操作‎包括目录的创‎建,删除,和目录的遍历‎等内容。

os模块提供‎了对目录进行‎操作的函数,如下:【1】mkdir(path [, mode = 0777])创建path‎指定的一个目‎录【2】makedi‎r s(name, mode = 511)创建多级目录‎,n ame为“path1/path2/...”【3】rmdir(path)删除path‎指定的目录【4】remove‎d irs(paths)删除path‎指定的多级目‎录【5】listdi‎r(path)返回path‎指定目录下的‎所有文件【6】getcwd‎()返回当前工作‎目录【7】chdir(path)将当前目录改‎变为path‎指定的目录【8】walk(top, topdow‎n=ture,onerro‎r = none)遍历目录树示例:import‎osos.mkdir("hello")os.rmdir("hello")os.makedi‎r s("hello/world")os.remove‎d irs("hello/world")目录的遍历目录的遍历有‎3种方法,(1)递归函数 (2)os.path.walk() (3)os.walk()【1】递归函数【2】os.path.walk()os.path.walk()的声明如下:walk(top, func, arg)(1)top表示要‎遍历的目录树‎的路径(2)参数func‎表示回调函数‎,对遍历路径进‎行处理。

所谓回调函数‎是指最为某个‎函数的参数使‎用,当某个事件触‎发时,程序将调用某‎个定义好的回‎调函数处理某‎个任务,回调函数必须‎提供三个参数‎:第一个是wa‎l k()的参数,第二个是目录‎列表,第三个是文件‎列表。

自动化生成文档目录的Python技巧

自动化生成文档目录的Python技巧

自动化生成文档目录的Python技巧在当今数字化的时代,我们经常需要处理大量的文档。

无论是编写技术报告、学术论文,还是整理项目文档,一个清晰的目录都能极大地提高文档的可读性和易用性。

手动创建目录不仅费时费力,还容易出错。

幸运的是,Python 为我们提供了强大的工具和技巧,能够轻松实现文档目录的自动化生成。

在开始之前,我们需要先了解文档目录的基本结构。

通常,目录包含了文档中各个章节、标题以及对应的页码。

为了能够准确地提取这些信息,我们需要对文档的内容进行分析和处理。

Python 中有许多库可以帮助我们完成这个任务,其中最常用的是`docx` 库。

如果我们处理的是 Word 文档,首先需要安装`docx` 库。

可以通过以下命令使用`pip` 进行安装:```pip install pythondocx``````pythonimport docxdef extract_titles_from_docx(file_path):doc = docxDocument(file_path)titles =for paragraph in docparagraphs:if paragraphstylenamestartswith('Heading'):titlesappend(paragraphtext)return titles```在上述代码中,我们定义了一个名为`extract_titles_from_docx` 的函数,它接受一个文件路径作为参数。

通过读取文档中的段落,并检查段落的样式是否以`Heading` 开头,来确定是否为标题。

接下来,我们需要获取每个标题对应的页码。

这稍微有点复杂,因为我们需要遍历整个文档的内容来计算。

不过,我们可以通过一些巧妙的方法来实现。

```pythondef get_page_numbers_of_titles(doc):page_numbers ={}current_page = 1for paragraph in docparagraphs:if paragraphtext =='':current_page += 1elif paragraphstylenamestartswith('Heading'):page_numbersparagraphtext = current_pagereturn page_numbers```有了标题和对应的页码,我们就可以生成目录了。

Python中文件和目录的操作教程

Python中文件和目录的操作教程

Python中文件和目录的操作教程一、引言Python作为一种高级编程语言,广泛应用于各种领域。

在文件和目录的操作方面,Python提供了丰富且易于使用的功能。

本文将详细介绍Python中文件和目录的操作方法,并且通过示例代码演示其具体用法。

二、文件的创建与删除1. 文件的创建在Python中,使用open()函数可以创建一个新的文件。

open()函数接收两个参数,第一个参数是文件的路径和名称,第二个参数是文件的打开模式。

例如,使用"w"模式表示以写入的方式打开文件,代码如下所示:```file = open("test.txt", "w")```上述代码在当前工作目录下创建了一个名为test.txt的新文件。

2. 文件的写入创建文件后,可以使用write()函数将数据写入文件。

例如,使用write()函数向文件中写入一行文本,代码如下:```file.write("Hello, World!")```上述代码将字符串"Hello, World!"写入到文件中。

3. 文件的关闭在文件操作完成后,一定要记得关闭文件,以释放系统资源。

使用close()函数可以关闭文件。

例如,代码如下:```file.close()```上述代码关闭了之前创建的文件。

4. 文件的删除在Python中,使用os模块的remove()函数可以删除文件。

例如,删除之前创建的test.txt文件,代码如下:```import osos.remove("test.txt")```上述代码删除了名为test.txt的文件。

三、文件的读取与修改1. 文件的读取使用open()函数以"r"模式打开文件,可以读取文件中的内容。

例如,代码如下:```file = open("test.txt", "r")content = file.read()print(content)file.close()```上述代码读取了名为test.txt的文件中的内容,并且将其打印出来。

splitextpython_Python文件和目录操作方法

splitextpython_Python文件和目录操作方法

splitextpython_Python文件和目录操作方法Python提供了丰富的文件和目录操作方法,使得我们可以很方便地对文件和目录进行创建、读取、写入、删除等操作。

这些功能主要通过os模块和shutil模块来实现。

1. os模块:os模块提供了一系列用于操作文件和目录的函数。

(1)文件和目录的创建:- os.mkdir(path): 创建一个目录。

- os.makedirs(path): 递归创建多层目录。

- os.remove(path): 删除一个文件。

- os.rmdir(path): 删除一个空目录。

- os.removedirs(path): 递归删除空目录。

(2)文件和目录的判断和操作:- os.path.exists(path): 判断路径是否存在。

- os.path.isdir(path): 判断路径是否为目录。

- os.path.isfile(path): 判断路径是否为文件。

- os.path.join(path1, path2): 连接两个路径。

- os.path.split(path): 分割路径,返回目录路径和文件名。

- os.path.splitext(path): 分离文件名和扩展名。

(3)文件和目录的遍历:- os.listdir(path): 返回路径下的所有文件和目录。

- os.walk(top): 遍历top路径下的所有文件和目录。

(4)其他操作:- os.rename(src, dst): 重命名文件或目录。

- os.chmod(path, mode): 修改文件或目录的权限。

- os.getcwd(: 获取当前工作目录。

- os.chdir(path): 修改当前工作目录。

2. shutil模块:shutil模块提供了一系列用于对文件和目录进行复制、移动、删除等操作的函数。

- shutil.copy(src, dst): 复制文件。

- shutil.copytree(src, dst): 复制目录。

Python中的文件和文件夹的操作方法

Python中的文件和文件夹的操作方法

Python中的文件和文件夹的操作方法文件和文件夹的操作在任何编程语言中都是重要的一环,Python也不例外。

Python提供了丰富的库和模块,使得文件和文件夹的操作变得简单而高效。

本文将介绍Python中一些常用的文件和文件夹的操作方法。

1. 创建文件夹在Python中,可以使用`os`模块来创建文件夹。

下面是一个示例代码:```import osfolder_name = "my_folder"os.mkdir(folder_name)```上述代码中,通过`os.mkdir`方法创建了一个名为`my_folder`的文件夹。

2. 删除文件夹同样地,使用`os`模块可以删除文件夹。

下面是一个示例代码:```import osfolder_name = "my_folder"os.rmdir(folder_name)```上述代码中,通过`os.rmdir`方法删除了名为`my_folder`的文件夹。

需要注意的是,只有当文件夹为空时才能成功删除。

3. 创建文件Python中创建文件的方法有多种,其中比较常用的是使用`open`函数。

下面是一个示例代码:```file_name = "my_file.txt"file = open(file_name, "w")file.close()```上述代码中,通过`open`函数创建了一个名为`my_file.txt`的文件,并以可写模式打开。

由于文件操作完成之后,需要使用`close`方法关闭文件。

4. 删除文件使用`os`模块同样可以删除文件。

下面是一个示例代码:```import osfile_name = "my_file.txt"os.remove(file_name)```上述代码中,通过`os.remove`方法删除了名为`my_file.txt`的文件。

python里os库的用法

python里os库的用法

python里os库的用法文件和目录操作获取当前工作目录: `os.getcwd()`切换工作目录: `os.chdir('/path/to/directory')`创建目录: `os.mkdir('/path/to/directory')`删除目录: `os.rmdir('/path/to/directory')`列出目录内容: `os.listdir('/path/to/directory')`检查文件是否存在: `os.path.isfile('/path/to/file')` 获取文件大小: `os.path.getsize('/path/to/file')`文件操作打开文件: `open('/path/to/file', 'mode')`读取文件: `file.read()`写入文件: `file.write('content')`关闭文件: `file.close()`复制文件: `shutil.copyfile('/path/to/source','/path/to/destination')`移动文件: `os.rename('/path/to/source','/path/to/destination')`环境变量操作获取环境变量: `os.getenv('VARIABLE_NAME')`设置环境变量: `os.environ['VARIABLE_NAME'] = 'value'` 删除环境变量: `del os.environ['VARIABLE_NAME']`路径操作连接路径: `os.path.join('/path/to/directory','file.txt')`获取父目录: `os.path.dirname('/path/to/file')`获取文件名: `os.path.basename('/path/to/file')`获取文件扩展名:`os.path.splitext('/path/to/file.txt')`进程操作创建子进程: `subprocess.Popen('command')`等待子进程完成: `subprocess.Popen.wait()`获取子进程输出: `municate()` 其他实用功能退出程序: `sys.exit()`获取当前时间: `time.time()`格式化时间: `time.strftime('%Y-%m-%d %H:%M:%S')`删除文件或目录: `os.unlink('/path/to/file')` 或`os.rmdir('/path/to/directory')`获取操作系统名称和版本: `platform.system()` 和`platform.version()`。

Python—文件夹操作

Python—文件夹操作

Python—⽂件夹操作Python ⽂件夹/⽂件操作1、os.listdir() — 返回当前⽂件夹下的所有⽬录名称(列表)2、os.walk() — 遍历⽬录树,输出⽬录中的⽂件名,返回⼀个三元组(root,dirs,files)root 所指的是当前正在遍历的这个⽂件夹的本⾝的地址dirs 是⼀个 list ,内容是该⽂件夹中所有的⽬录的名字(不包括⼦⽬录)files 同样是 list , 内容是该⽂件夹中所有的⽂件(不包括⼦⽬录)'''def copy_file(old_file, new_file):new_file_temp = new_filefor root, dirs, files in os.walk(old_file, topdown=False):for name in files:sub_path = root.split('\\')[-1]sub_sub_path = root.split('\\')[-2]if sub_path == 'R0':sub_path_new = '5'elif sub_path == 'R1':sub_path_new = '6'elif sub_path == 'R2':sub_path_new = '7'verify_or_enroll = ''if(int(name.split('.')[0]) < 1):verify_or_enroll = 'enroll'elif(int(name.split('.')[0]) >= 1 ):verify_or_enroll = 'verify'new_file_path = os.path.join(new_file_temp, sub_sub_path, sub_path_new, verify_or_enroll, 'st')if not os.path.exists(new_file_path):os.makedirs(new_file_path)new_file_name = os.path.join(new_file_path, name)old_file_name = os.path.join(root, name)shutil.copyfile(old_file_name, new_file_name)print(old_file_name, 'to', new_file_name)'''summary:walk中的topdown参数为False时,遍历⽅式是从⼦⽂件开始,此时获得的root即为⼦⽂件所在的⽬录,files即为同⼀⼦⽂件夹下⽂件名构成的列表当⼦⽂件遍历完成之后,向上遍历,此时files为空,遍历结束。

如何在Python中进行文件和目录操作

如何在Python中进行文件和目录操作

如何在Python中进行文件和目录操作在Python中,文件和目录操作是非常常见且必要的任务之一。

Python提供了许多内置的模块和函数,使我们能够轻松地进行文件和目录的创建、读取、写入和删除等操作。

本文将介绍如何在Python中进行文件和目录操作的一些常用方法。

首先,我们需要使用内置的os模块来进行文件和目录操作。

os模块包含了许多用于处理操作系统相关任务的函数。

我们可以使用`import os`语句将os模块导入到我们的Python脚本中。

要创建一个新的目录,我们可以使用`os.mkdir()`函数。

例如,下面的代码将创建一个名为"new_directory"的新目录:```pythonimport osos.mkdir("new_directory")```如果要创建多层目录,可以使用`os.makedirs()`函数。

下面的代码将会创建一个名为"parent_directory/child_directory"的多层目录:```pythonimport osos.makedirs("parent_directory/child_directory")```要检查文件或目录是否存在,可以使用`os.path.exists()`函数。

下面的代码将会检查一个名为"test.txt"的文件是否存在:```pythonimport osif os.path.exists("test.txt"):print("文件已存在")else:print("文件不存在")要创建一个新文件,我们可以使用内置的open()函数。

指定文件的名称和模式(如"r"表示只读模式,"w"表示写入模式,"a"表示追加模式等)。

python文件操作方法

python文件操作方法

python文件操作方法
Python中针对文件的操作都是通过Python内置的os模块去实现的,os模块主要提
供文件的操作,常用的文件操作有
1、文件定位:os.chdir(path)意思就是把工作目录设置为指定的path路径下。

2、文件创建:など、os.makedirs(path, [mode]),意思是创建path的文件夹,mode的默认常量是0755,这个参数可以改变文件夹的权限。

3、文件删除:os.remove(path)意思是删除指定文件;os.rmdir(path)则是删除指定
文件夹。

4、文件重命名:os.rename(src, dst)意思是把src文件重命名为dst。

6、查看文件:os.listdir(path)可以查看指定文件夹下的所有文件名称,也可以加
上文件类型的过滤条件。

7、文件信息:os.stat(path)能够查看某个文件的大小,创建,修改时间,以及其他
特性等信息。

8、环境变量:os.getenv()可以获得操作系统中指定变量的值,也可以设置系统变量。

以上是Python中最常用的文件操作,通过这些操作可以灵活的控制文件,实现文件
管理的要求。

python+语言+文件及目录操作

python+语言+文件及目录操作

通过os.path.isdir()方法,可以判断指定路径是否为目 录。例如,要检查当前工作目录中名为“test_dir查目录是否存在
```python
01
import os
02
03
dir_path = 'test_dir'
检查目录是否存在
if os.path.isdir(dir_path)
检查文件是否存在
```python
import os file_path = 'test.txt'
检查文件是否存在
01
02
if os.path.exists(file_path)
print('文件存在')
03
else
检查文件是否存在
print('文件不存在')
```
检查目录是否存在
检查目录是否存在也是文件操作中常用的一项任务,可 以使用os模块中的os.path.isdir()方法来实现。
使用 `os.rmdir()` 函数删除空目录。
删除非空目录
使用 `shutil.rmtree()` 函数删除非空目录及其所有内容。但需要注意,这个操 作是不可撤销的,因此需要谨慎使用。
03
文件和目录的属性操作
获取文件大小
获取文件大小是文件操作中常见的一项任务,可以使用os模块中的path.getsize()方法来实现。
文件对象
open()函数返回一个文件对象,可以通过该对象进行读取或写入等操作。
读取文件
1 2
读取内容
使用文件对象的`read()`方法读取文件内容。
分块读取
使用文件对象的`readline()`或`readlines()`方法 分块读取文件内容。

PYTHON文件和目录操作方法大全

PYTHON文件和目录操作方法大全

python文件和目录操作方法大全(含实例)一、python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法。

1.得到当前工作目录,即当前Python脚本工作的目录路径:os.getcwd()2.返回指定目录下的所有文件和目录名:os.listdir()3.函数用来删除一个文件:os.remove()4.删除多个目录:os.removedirs(r“c:\python”)5.检验给出的路径是否是一个文件:os.path.isfile()6.检验给出的路径是否是一个目录:os.path.isdir()7.判断是否是绝对路径:os.path.isabs()8.检验给出的路径是否真地存:os.path.exists()9.返回一个路径的目录名和文件名:os.path.split()eg os.path.split('/home/swaroop/byt e/code/poem.txt')结果:('/home/swaroop/byte/code','poem.txt')10.分离扩展名:os.path.splitext()11.获取路径名:os.path.dirname()12.获取文件名:os.path.basename()13.运行shell命令:os.system()14.读取和设置环境变量:os.getenv()与os.putenv()15.给出当前平台使用的行终止符:os.linesep Windows使用'\r\n',Linux使用'\n'而Mac 使用'\r'16.指示你正在使用的平台:对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'17.重命名:os.rename(old,new)18.创建多级目录:os.makedirs(r“c:\python\test”)19.创建单个目录:os.mkdir(“test”)20.获取文件属性:os.stat(file)21.修改文件权限与时间戳:os.chmod(file)22.终止当前进程:os.exit()23.获取文件大小:os.path.getsize(filename)二、文件操作方法大全:1.os.mknod("test.txt")#创建空文件2.fp=open("test.txt",w)#直接打开一个文件,如果文件不存在则创建文件3.关于open模式:fp.read([size])#size为读取的长度,以byte为单位fp.readline([size])#读一行,如果定义了size,有可能返回的只是一行的一部分fp.readlines([size])#把文件每一行作为一个list的一个成员,并返回这个list。

python基础入门之十四——文件操作

python基础入门之十四——文件操作

python基础入门之十四——文件操作一、文件的基本操作1、打开文件•open(name,mode)•name-文件名字符串;mode-访问模式P.s:访问模式r只读。

文件指针位于文件开头,默认模式P.s:打开不存在文件报错rb二进制打开文件用于只读,文件指针位于文件开头r+读写,文件指针位于文件开头P.s:r+打开不存在的文件报错,同r操作rb+二进制打开文件用于读写,文件指针位于文件开头w仅写入,文件指针位于文件开头。

如文件已存在,从开头编辑,会覆盖原内容即原内容删除;如文件不存在创建新文件wb二进制打开文件用于写入。

规则同'w'。

w+读写。

写规则同‘w'P.s: w+打开文件原内容删除,未写入时直接读取为空,因为w操作会覆盖原内容wb+二进制打开文件用于读写规则同'w+'a追加,文件指针位于文件结尾。

如文件已存在,从原内容后添加;如文件不存在创建新文件ab二进制打开文件用于追加,其他同'a'a+二进制打开文件用于读写,写规则同'a'P.s:a+未写入时直接读取为空,因为a操作的文件在文件结尾ab+二进制打开文件用于读写,写规则同'a'2、读取文件read(num)从头读取,num为读取数据长度,不写默认读取全部f = open('test.txt', 'r')content = f.read(7) # P.s:换行占据一个字符print(content)"""aaaaab"""f.close()readlines()按行从头读取,读取数据存入列表,每一行的数据为一个元素f = open('test.txt', 'r')content = f.readlines()print(content) # ['aaaaa\n', 'bbbbb\n', 'ccccc']f.close()readline()一次读取一行内容f = open('test.txt', 'r')content = f.readline() print(content) # aaaaacontent = f.readline() print(content) # bbbbbf.close()3、写入文件:f.write()4、移动光标:f.seek(偏移量,起始位置)起始位置中:•0:文件开头•1:当前位置•2:文件结尾f = open('test.txt','r')f.seek(2,0)con=f.read()print(con)'''aaabbbbbccccc'''f.seek(0) # seek(0)为seek(0,0)简写con=f.read()print(con)'''aaaaabbbbbccccc'''f.close()二、应用案例-备份文件:# 用户输入old_name = input('请输入需要备份的文件名:')# 文件名截取名字和后缀,更改为新名字index = old_name.rfind('.')if index <= 0:print('文件名格式错误!')else:new_name = old_name[:index]+'_副本'+old_name[index:] # 文件写入old_file = open(old_name, 'rb')new_file = open(new_name, 'wb')while True:content = old_file.read(1024)if len(content)==0:print('备份成功!')breaknew_file.write(content)new_file.close()old_file.close()三、文件和文件夹的操作:1、前提:导入os模块import os2、函数重命名文件、文件夹os.rename(目标文件名,新文件名)删除文件os.remove(目标文件名)创建文件夹os.mkdir(文件夹名字)删除文件夹os.rmdir(文件夹名字)获取当前路径os.getcwd()改变默认路径os.chdir(路径)获取目录下文件列表os.listdir(目录)3、应用案例import osprint(os.getcwd()) # 获取当前路径C:\Users\myUserName\PycharmProjects\demoos.mkdir('文件夹') # 新建文件夹# os.remove('文件夹') # 删除的是文件夹,报错os.chdir('文件夹') # 切换路径print(os.getcwd()) # 获取当前路径C:\Users\myUserName\PycharmProjects\demo\文件夹i = 5while i > 0:open('file' + str(i) + '.txt', 'w')i -= 1# 在文件夹下新建file1.txt~file5.txt 5个文件。

python获取当前目录路径和文件

python获取当前目录路径和文件

python获取当前目录路径和文件一、获取当前路径1、使用sys.argv[0]import sysprint sys.argv[0]#输出#本地路径2、os模块import osprint os.getcwd() #获取当前工作目录路径print os.path.abspath('.') #获取当前文件目录路径print os.path.abspath('test.txt') #获取当前目录文件下的文件目录路径print os.path.abspath('..') #获取当前文件目录的父目录!注意是父目录路径print os.path.abspath(os.curdir) #获取当前文件目录路径3、改变当前目录1) 使用: os.chdir(path)。

import os, syspath = "/tmp"# 查看当前工作目录retval = os.getcwd()print "当前工作目录为 %s" % retval# 修改当前工作目录os.chdir( path )# 查看修改后的工作目录retval = os.getcwd()print "目录修改成功 %s" % retval#执行以上程序输出结果为:当前工作目录为 /www目录修改成功 /tmp2) 使用: os.path 路径相关方法的使用:import osprint( os.path.basename('/root/runoob.txt') ) # 返回文件名print( os.path.dirname('/root/runoob.txt') ) # 返回目录路径print( os.path.split('/root/runoob.txt') ) # 分割文件名与路径print( os.path.join('root','test','runoob.txt') ) # 将目录和文件名合成一个路径#输出结果runoob.txt/root('/root', 'runoob.txt')root/test/runoob.txt3) 使用:os.path 文件相关方法的使用:import osimport timefile='/root/runoob.txt' # 文件路径print( os.path.getatime(file) ) # 输出最近访问时间print( os.path.getctime(file) ) # 输出文件创建时间print( os.path.getmtime(file) ) # 输出最近修改时间print( time.gmtime(os.path.getmtime(file)) ) # 以struct_time形式输出最近修改时间print( os.path.getsize(file) ) # 输出文件大小(字节为单位)print( os.path.abspath(file) ) # 输出绝对路径print( os.path.normpath(file) ) # 规范path字符串形式#输出结果1539052805.57357361539052805.57757351539052805.5735736 time.struct_time(tm_year=2018, tm_mon=10, tm_mday=9, tm_h our=2, tm_min=40, tm_sec=5, tm_wday=1, tm_yday=282, tm_is dst=0)7/root/runoob.txt/root/runoob.txt4、组合路径返回no.1#方式一,直接用“+”:>>> print("D:\\home" + "\\report\\" + "config.ini")D:\\h ome\\report\\config.ini#方式二,用join拼接:>>> print os.path.join('D:\home','report','config.ini')D:\home\report\config.ini>>> print os.path.join('D:', 'file_one', 'f ile_two')E:\file_one\file_two>>> print os.path.join('\home', '\ho me\file_one\', '\home\file_one\file_two\')\home\file_one\file_tw o\no.2'''os.getcwd() 是返回当前工作路径例如:file.py文件位于:D:\\Test\\testcase\\file.py,在file.py文件中使用os.getcwd()会获取到D:\\Test路径。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

python文件和目录操作方法大全(含实例)这篇文章主要介绍了python文件和目录的操作方法,简明总结了文件和目录操作中常用的模块、方法,并列举了一个综合实例,需要的朋友可以参考下一、python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法。

1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()2.返回指定目录下的所有文件和目录名:os.listdir()3.函数用来删除一个文件:os.remove()4.删除多个目录:os.removedirs(r“c:\python”)5.检验给出的路径是否是一个文件:os.path.isfile()6.检验给出的路径是否是一个目录:os.path.isdir()7.判断是否是绝对路径:os.path.isabs()8.检验给出的路径是否真地存:os.path.exists()9.返回一个路径的目录名和文件名:os.path.split() eg os.path.split('/home/swaroop/byte/code/poem.txt') 结果:('/home/swaroop/byte/code', 'poem.txt')10.分离扩展名:os.path.splitext()11.获取路径名:os.path.dirname()12.获取文件名:os.path.basename()13.运行shell命令: os.system()14.读取和设置环境变量:os.getenv() 与os.putenv()15.给出当前平台使用的行终止符:os.linesep Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'16.指示你正在使用的平台: 对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'17.重命名:os.rename(old,new)18.创建多级目录:os.makedirs(r“c:\python\test”)19.创建单个目录:os.mkdir(“test”)20.获取文件属性:os.stat(file)21.修改文件权限与时间戳:os.chmod(file)22.终止当前进程:os.exit()23.获取文件大小:os.path.getsize(filename)二、文件操作方法大全:1.os.mknod("test.txt") #创建空文件2.fp = open("test.txt",w) #直接打开一个文件,如果文件不存在则创建文件3.关于open 模式:复制代码代码如下:w:以写方式打开,a:以追加模式打开(从EOF 开始, 必要时创建新文件)r+:以读写模式打开w+:以读写模式打开(参见w )a+:以读写模式打开(参见a )rb:以二进制读模式打开wb:以二进制写模式打开(参见w )ab:以二进制追加模式打开(参见a )rb+:以二进制读写模式打开(参见r+ )wb+:以二进制读写模式打开(参见w+ )ab+:以二进制读写模式打开(参见a+ )fp.read([size]) #size为读取的长度,以byte为单位fp.readline([size]) #读一行,如果定义了size,有可能返回的只是一行的一部分fp.readlines([size]) #把文件每一行作为一个list的一个成员,并返回这个list。

其实它的内部是通过循环调用readline()来实现的。

如果提供size参数,size是表示读取内容的总长,也就是说可能只读到文件的一部分。

fp.write(str) #把str写到文件中,write()并不会在str后加上一个换行符fp.writelines(seq) #把seq的内容全部写到文件中(多行一次性写入)。

这个函数也只是忠实地写入,不会在每行后面加上任何东西。

fp.close() #关闭文件。

python会在一个文件不用后自动关闭文件,不过这一功能没有保证,最好还是养成自己关闭的习惯。

如果一个文件在关闭后还对其进行操作会产生ValueErrorfp.flush() #把缓冲区的内容写入硬盘fp.fileno() #返回一个长整型的”文件标签“fp.isatty() #文件是否是一个终端设备文件(unix系统中的)fp.tell() #返回文件操作标记的当前位置,以文件的开头为原点fp.next() #返回下一行,并将文件操作标记位移到下一行。

把一个file用于for …in file这样的语句时,就是调用next()函数来实现遍历的。

fp.seek(offset[,whence]) #将文件打操作标记移到offset的位置。

这个offset一般是相对于文件的开头来计算的,一般为正数。

但如果提供了whence参数就不一定了,whence 可以为0表示从头开始计算,1表示以当前位置为原点计算。

2表示以文件末尾为原点进行计算。

需要注意,如果文件以a或a+的模式打开,每次进行写操作时,文件操作标记会自动返回到文件末尾。

fp.truncate([size]) #把文件裁成规定的大小,默认的是裁到当前文件操作标记的位置。

如果size比文件的大小还要大,依据系统的不同可能是不改变文件,也可能是用0把文件补到相应的大小,也可能是以一些随机的内容加上去。

三、目录操作方法大全1.创建目录os.mkdir("file")2.复制文件:shutil.copyfile("oldfile","newfile") #oldfile和newfile都只能是文件shutil.copy("oldfile","newfile") #oldfile只能是文件夹,newfile可以是文件,也可以是目标目录3.复制文件夹:4.shutil.copytree("olddir","newdir") #olddir和newdir都只能是目录,且newdir必须不存在5.重命名文件(目录)os.rename("oldname","newname") #文件或目录都是使用这条命令6.移动文件(目录)shutil.move("oldpos","newpos")7.删除文件os.remove("file")8.删除目录os.rmdir("dir") #只能删除空目录shutil.rmtree("dir") #空目录、有内容的目录都可以删9.转换目录os.chdir("path") #换路径四、文件综合操作实例将文件夹下所有图片名称加上'_fc'python代码:复制代码代码如下:# -*- coding:utf-8 -*-import reimport osimport time#str.split(string)分割字符串#'连接符'.join(list) 将列表组成字符串def change_name(path):global iif not os.path.isdir(path) and not os.path.isfile(path):return Falseif os.path.isfile(path):file_path = os.path.split(path) #分割出目录与文件lists = file_path[1].split('.') #分割出文件与文件扩展名file_ext = lists[-1] #取出后缀名(列表切片操作)img_ext = ['bmp','jpeg','gif','psd','png','jpg']if file_ext in img_ext:os.rename(path,file_path[0]+'/'+lists[0]+'_fc.'+file_ext)i+=1 #注意这里的i是一个陷阱#或者#img_ext = 'bmp|jpeg|gif|psd|png|jpg'#if file_ext in img_ext:# print('ok---'+file_ext)elif os.path.isdir(path):for x in os.listdir(path):change_name(os.path.join(path,x)) #os.path.join()在路径处理上很有用img_dir = 'D:\\xx\\xx\\images'img_dir = img_dir.replace('\\','/')start = time.time()i = 0change_name(img_dir)c = time.time() - startprint('程序运行耗时:%0.2f'%(c))print('总共处理了%s 张图片'%(i))输出结果:复制代码代码如下:程序运行耗时:0.11总共处理了109 张图片。

相关文档
最新文档