欢迎访问宙启技术站
智能推送

如何使用Python的os函数对文件和目录进行操作?

发布时间:2023-06-20 03:13:31

Python的os函数是操作系统模块提供的接口,可以和操作系统进行交互,实现对电脑上的文件和目录的操作,包括文件的读写、目录的创建、删除、访问等一些基本操作。下面就详细介绍一下Python的os函数在文件和目录的操作上的使用方法。

一、文件操作

在Python中,使用os模块的函数可以对文件进行基本的操作,比如打开文件,读写文件等等。

1、打开文件

使用open函数对文件进行读写操作,打开一个文件时,需要制定文件的路径、模式以及编码。

语法格式:file = open(file_path, mode, encoding)

其中:

file_path:表示文件路径,可以是绝对路径或者相对路径;

mode:表示文件的打开模式,包括读模式、写模式、追加模式等;

encoding:表示编码方式,比如utf8、gbk等。

代码示例:将一个文件读取到内容中。

with open('file.txt', 'r', encoding='utf-8') as f:
    content = f.read()
print(content)

2、读取文件内容

once文件已经打开,可以使用read()函数或者readline()、readlines()函数来读取文件的内容。read()函数一次性读取整个文件,如果文件较大,内存不够时会出现问题,所以我们可以使用for循环来读取文件。readline()函数是一行一行的读取文件内容,直到读取完毕,readlines()函数是一次性读取所有内容,并且将每行作为一个元素存放到一个列表中。

代码示例:将每一行的内容打印出来。

with open('file.txt', 'r', encoding='utf-8') as f:
    for line in f:
        print(line.strip())

3、写入文件内容

当文件以写模式打开时,可以使用write()、writelines()等函数来对文件进行写操作。write()函数用来写入单行文本,而writelines()函数用来写入多行文本,它接受一个列表作为参数,每个元素表示一行文本。

代码示例:用于写入名字到文件中,并添加时间戳。

import os
import time

name = 'John'
file_path = 'name_list.txt'
timestamp = int(time.time())
with open(file_path, 'a', encoding='utf-8') as f:
    f.write('{} {}
'.format(name, timestamp))

二、目录操作

在Python中,使用os模块的函数可以对目录进行基本的操作,比如创建目录、删除目录、访问目录下的文件等等。

1、创建目录

使用os模块的函数可以很方便地创建一个新的目录,也可以同时创建多层目录,当目录已存在时,无法再次创建,会抛出异常。

代码示例:创建一个名为dir_test的目录。

import os

dir_name = 'dir_test'
if not os.path.exists(dir_name):
    os.mkdir(dir_name)

2、删除目录

使用os模块当函数可以很方便地删除一个目录,也可以同时删除多层目录,当目录不存在时,会抛出异常。

代码示例:删除一个名为dir_test的目录。

import os

dir_name = 'dir_test'
if os.path.exists(dir_name):
    os.removedirs(dir_name)

3、访问目录下的文件

使用os模块的函数可以很方便地访问目录下的文件,可以获取当前目录下的所有文件和目录的列表,以及判断某个文件或目录是否存在。

代码示例:遍历当前目录,获取所有文件名和文件夹名。

import os

for root, dirs, files in os.walk(os.curdir, topdown=False):
    print('dir--->', root)
    for name in files:
        print('file--->', name)

总结:

以上是Python的os函数对文件和目录进行操作的方法,可以看到,使用Python的os模块的函数在文件和目录操作上非常方便,可以很好地实现对电脑上的文件和目录的操作。同时需要注意的是,在进行文件和目录的操作时,一定要保证文件和目录存在和权限问题,避免不必要的麻烦。