文件

文件是一个存储在辅助存储器上的数据序列,可以包含任何内容,文件中的内容读取出来内容全部字符串类型。

对于文件,Python自带提供两个类型文本文件和二进制文件。对于文件而言,我们常用的函数是打开open()和关闭close(),一般而言,为了文件的安全,我们打开时候,处理完文件,会立马的关闭。打开文件我们提供三种模式:'r','w','a'。

 

 

对于python而言,自带一些非常好用的模块,如os 模块提供了非常丰富的方法用来处理文件和目录,模块主要包含系统的环境、文件、目录等操作系统的函数。

这里我们给出常用的文件的操作的代码展示。

批量创建文本并在文本中写入内容

 

#批量创建文本并在文本中写入内容
import os

#给出创建文件夹的地址
path = '../文本/'
def creat_wenjianjia():
    file_name = 'example'
    target_path = os.path.join(path, file_name)
    if not os.path.isdir(target_path):
        os.mkdir(target_path)
    return target_path
def creat_wenjian():
    for i in range(3):
        txt = open("file_{}.txt".format(i), "w")
        for j in range(100):
            txt.write( str(i*10 +j) + '\n')
        txt.close()

f_path = creat_wenjianjia()
#获取当前所在的路径
print(os.getcwd())
print(os.listdir())
#改变文章的路径
os.chdir(f_path)
print(os.getcwd())
creat_wenjian()
#获取当前路径下都有哪些文件
print(os.listdir())

 

获取当前路径下所有文本文件的内容,并写在一个文件中

 

#批量创建文本并在文本中写入内容
import os

#给出创建文件夹的地址
path = '../文本/example'
os.chdir(path)
files = os.listdir()
# print(files)
wenben = ""

#获取内容
for i in files:
    txt = open(i,'r').read()
    wenben += txt

#打开新的文本,将获取的内容输入
txt = open("总内容.txt",'w')
txt.write(wenben)

 当前路径下重命名所有的文件

import os

path = 'E:/Python_Project/文本/example/'
os.chdir(path)
files = os.listdir()
print(files)

n = 0
for i in files:
    file_path = os.path.join(path, i)
    if os.access(file_path, os.F_OK):
        new_file_path = path + "0_" + str(n) + '.txt'
        os.rename(file_path, new_file_path)
    else:
        continue
    n = n+1

其中,os.access(path,mode)函数的主要作用是查看path的访问权限

path -- 要用来检测是否有访问权限的路径。

mode -- mode为F_OK,测试存在的路径,或者它可以是包含R_OK, W_OK和X_OK或者R_OK, W_OK和X_OK其中之一或者更多。

os.F_OK: 作为access()的mode参数,测试path是否存在。
os.R_OK: 包含在access()的mode参数中 , 测试path是否可读。
os.W_OK 包含在access()的mode参数中 , 测试path是否可写。
os.X_OK 包含在access()的mode参数中 ,测试path是否可执行

如果允许访问,返回值为True,不能则返回False。

posted @ 2019-10-20 16:36  壹碗  阅读(237)  评论(0编辑  收藏  举报