栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python Day8 —— 文件

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python Day8 —— 文件

 

目录

一、文件的基本操作

1.打开

1.1写

1.2读

2.关闭

二、文件备份

三、文件和文件夹的操作

1.os模块步骤

2.操作文件

2.1文件的重命名

2.2删除文件

3.操作文件夹

3.1创建文件夹

3.2删除文件夹

3.3获取当前目录

3.4切换到目标文件夹

3.5获取目录列表

3.6重命名文件夹

3.7删除文件夹


将一些内容(数据)存储起来,可以让程序下一次执行的时候直接使用,不用重新制作一份。

一、文件的基本操作

1.打开

使用open()函数,可以打开一个已经存在的文件,或创建一个新文件:

open(name, mode)

name:要打开的目标文件名的字符串(可以包含文件所在的具体路径)。

mode:设置打开文件的模式 (访问模式):只读,写入,追加等。

访问模式 :可以省略,若省略,则默认为‘r’

模式描述
r以只读方式打开文件。文件的指针会放在文件开头(默认模式)
rb以二进制格式只读模式打开一个文件。文件的指针会放在文件开头(默认模式)
r+打开一个文件用于读写。文件的指针会放在文件开头。能读取出数据
rb+以二进制格式打开一个文件用于读写。文件的指针会放在文件开头
w打开一个文件只用于写入。如果文件已存在就打开文件,从头开始编辑,原有内容会被删除;若文件不存在,创建新文件。
wb以二进制格式打开一个文件只用于写入。如果文件已存在就打开文件,从头开始编辑,原有内容会被删除;若文件不存在,创建新文件。
w+打开一个文件用于读写。如果文件已存在就打开文件,从头开始编辑,原有内容会被删除;若文件不存在,创建新文件。不能读取出数据,还会删除原数据。
wb+以二进制格式打开一个文件用于读写。如果文件已存在就打开文件,从头开始编辑,原有内容会被删除;若文件不存在,创建新文件。
a打开一个文件用于追加。如果文件存在,文件指针会放在文件的结尾,新内容会被写入原有内容之后;若文件不存在,创建新文件并写入。
ab以二进制格式打开一个文件用于追加。如果文件存在,文件指针会放在文件的结尾,新内容会被写入原有内容之后;若文件不存在,创建新文件并写入。
a+打开一个文件用于追加。如果文件存在,文件指针会放在文件的结尾,文件打开时是追加模式;若文件不存在,创建新文件用于读写。不能读取出数据,但不会删除原数据。
ab+以二进制格式打开一个文件用于追加。如果文件存在,文件指针会放在文件的结尾,文件打开时是追加模式;若文件不存在,创建新文件用于读写。
r_若文件不存在,报错;不支持写入操作,为只读。
w_若文件不存在,新建文件;只写,若执行写入,会覆盖原有内容。
a_若文件不存在,新建文件;追加,若执行写入,会在原有内容基础上添加新内容。
_b二进制格式
_+可读可写

1.1写

文件对象.write(’内容’)

1.2读

 

read()

文件对象.read(num) 

num表示要从文件中读取的数据的长度(单位是字节)。若不写,默认读取文件中所有数据。

'''
#'aaa'后有一个‘n’换行符占位,占输出位的一位
aaa
bb
'''
f = open('test.txt', 'r') # f是文件对象
print(f.read(6))
f.close()

readline()

readline()一次读取一行内容。

'''
第一行内容aaa

第一行内容bbb
'''
f = open('test.txt') # f是文件对象
content = f.readline()
print(f'第一行内容{content}')
content = f.readline()
print(f'第一行内容{content}')
f.close()

 readlines()

readlines可以按照行的方式把整个文件中的内容进行一次性的读取,并返回一个列表,其中每一行的数据为一个元素。

'''
['aaan', 'bbbn', 'ccc']
'''
f = open('test.txt', 'r') # f是文件对象
print(f.readlines())
f.close()

tell()

返回一个整数,表示当前文件指针的位置(到文件开头的比特数)。

seek()

用来移动文件指针。

语法

文件对象.seek(偏移量,起始位置)

起始位置:

0:文件开头1:当前位置2:文件结尾

2.关闭

文件对象.close()

先打开的先关闭

# 1.打开文件open()
f = open('test.txt', 'w') # f是文件对象
# 2.读写操作write() read()
f.write('write sth')
# 3.关闭文件close()
f.close()

二、文件备份

用户输入当前目录下任意文件名,程序完成对该文件的备份功能(以 [备份] 为后缀)。

filename = input('请输入要备份的文件名:')
# 提取后缀,找到文件名中的‘.’ (最右侧的‘.’)  eg.file.txt.pdf ————字符串查找rfind()
index = filename.rfind('.')# ‘.’的位置  index:不存在时报错

# 判断用户输入的文件名是否标准
if index > 0:
    flag = filename[index:]
else:
    print('文件名输入有误')
#切片[开始:结束:步长]
# 文件名:filename[:index]
# 后缀:filename[index:]
new_filename = filename[:index] + '[备份]' + flag

# 备份文件内容
# 打开文件
f = open(filename, 'rb')
new_f = open(new_filename, 'wb')
# 不确定目标文件大小,循环读取写入,至文件结尾
while True:
    content = f.read()
    if len(content) == 0:
        break
    new_f.write(content)
# 关闭文件
f.close()
new_f.close()

三、文件和文件夹的操作

python中文件和文件夹的操作要借助os模块中的相关功能。

1.os模块步骤

导入os模块

import os

使用os模块相关功能

os.函数名()

2.操作文件

2.1文件的重命名

os.rename(目标文件名,新文件名)

2.2删除文件

os.remove(目标文件名)

3.操作文件夹

3.1创建文件夹

os.mkdir(文件夹名)    →      

3.2删除文件夹

os.rmdir(文件夹名)    →    

3.3获取当前目录

os.getcwd()

3.4切换到目标文件夹

os.chdir(文件夹)    →    

3.5获取目录列表

os.listdir(目录)  →  返回一个列表

3.6重命名文件夹

os.rename(目标文件夹名,新文件夹名)

3.7删除文件夹

os.remove(目标文件夹名)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/741478.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号