Python编程进阶——文件处理与os模块

这篇博客详细介绍了文件操作的基本步骤,包括打开、读取、写入、追加和关闭文件。讨论了文件路径、访问模式(如'r'、'w'、'a'等)及其应用场景,并展示了读取文件的不同方法,如read(), readline(), readlines()。此外,还涉及到文件和文件夹的操作,如创建、删除、重命名,以及使用os模块进行文件路径处理。内容涵盖了文本和二进制文件的处理,为日常编程工作提供了实用的知识。
摘要由CSDN通过智能技术生成


1.文件基本操作

# 文件处理
# 文件: 音频,视频,照片,html
# 文件基本操作 打开文件 读取文件数据 写入文件数据 关闭文件数据
# 作用:为了方便管理数据 存储数据 下次可以直接使用
# 打开 open(文件路径,)
# 读取 read
# 写入 write
# 关闭 close

2.写入数据

# 打开test1.txt文件,写入数据 w
f = open('test1.txt','w',encoding = 'utf-8')
f.write('哈喽你好')
# print(f.read())
f.close()

3.读取数据

f = open('test1.txt','r',encoding = 'utf-8')
print(f.read())
f.close()

4.追加写入

# w是写入,没有文件创建文件 w会覆盖原有的内容
# r是读取, 没有文件不会创建文件
# a是追加
f = open('test1.txt','a',encoding = 'utf-8')
f.write('你真好玩')
f.close()

f = open('test1.txt','w',encoding = 'utf-8')
f.write('你是来开玩笑的吗?')
f.close()

5.文件路径

# open(文件路径,访问模式)
# 绝对路径:详细地址
# 相对路径:运行文件 相对于你的路径

# ./当前目录 运行文件在根目录 你要找文件夹的内容 找到class06房间里的test1.txt 怎么找 相对路径
# f = open('./class06/test1.txt','r')
# print(f.read())
f.close()

# ../上级目录 运行文件在文件夹里面 我要找class05文件夹里面的test1.txt
f=open('../class06/test1.txt','r',encoding='utf-8')
print(f.read())
f.close()

# 注意:你的运行文件在哪

# 绝对路径:详细地址
f = open(r'C:\Users\user\PycharmProjects\cema\class06\test1.txt','r',encoding='utf-8')
print(f.read())
f.close()

# 文件路径 open(文件路径,访问模式
# 相对路径 绝对路径

6.访问模式 r w a r+ w+ a+

# r+读取可以写
f = open('test1.txt','r+',encoding='utf-8')
print(f.read())
f.close()

f = open('test1.txt','r+',encoding='utf-8')
print(f.tell())
# tell指针位置
# 指针放到最后,偏移指针位置seek seek(字节数,指针位置)0开头,1当前位置 2结尾位置
# f.seek(0,2)
f.seek(0,1)
print(f.tell())
f.write('司小幽')
f.close()

# w+是会覆盖掉
f = open('test1.txt','w+',encoding='utf-8')
print(f.tell())
f.seek(0,2)
f.write('你好,妈妈咪呀')
f.close()

# a+
f = open('test1.txt','a+',encoding='utf-8')
print(f.tell())
f.seek(0,0)
f.write('\n我是来追加的')
f.close()

# rb wb ab二进制文件
# 二进制文件:不能用txt打开
# 文本文件:能用txt打开

7.读取操作

# read() 读取整个文件
# readline():读取一行
# readlines():读取所有的放在列表中
# 读取某一行的内容

f=open('test1.txt','r',encoding='utf-8')
# print(f.read())
# print(f.readline())
# print(f.readlines())
print(f.readlines()[1])
f.close()

8.读取文件的方式

# with open(路径,访问模式) as 变量名:
# 代码块
with open('test1.txt','r',encoding='utf-8') as f:
    print(f.read())

# 这种方式不用关闭
# 文件路径和读取文件的操作 读取yaml文件

9.文件和文件夹的操作

# os模块:提供了处理文件和文件目录的操作
import os

# 创建一个文件夹 w文件路径
file=r'C:\Users\user\PycharmProjects\cema\class06\sixiaoyou'
# os.mkdir((file))

# 删除文件夹
# os.rmdir(file)

# 非空文件夹
# import shutil
# shutil.rmtree(file)

# 文件重命名
# os.rename('test1.txt','test55.txt')

# 判断是文件
# print(os.path.isdir(file))
# 判断是文件
print(os.path.isfile(file))

# 获取文件路径
# 获取文件夹绝对路径
print(os.getcwd())

# 文件的绝对路径
# print(os.path.abspath(__file__))
print(__file__)

# 当前路径的父路径
# print(os.path.dirname(os.path.abspath(__file__)))

# 数据库 绝对路径 config/conf.ini
print(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
# C:\Users\user\PycharmProjects\cema\class06\config
a = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))),'config')
print(a)
print(a+'\conf.ini')
print(a+'\info.yaml')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

司小幽

真诚赞赏,手留余香。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值