python基础语法4 文件处理

1、什么是文件
操作系统提供给你操作硬盘的一个工具

2、为什么要用文件
因为人类和计算机要永久保存数据

3、怎么用文件

相对路径:a.txt # 必须与当前py文件在同一级目录
绝对路径:D:\项目路径\python13期\day07\a.txt

读文件

f=open('a.txt')

print(f.readable()) #判断当前文件是否可读   True
print(f.writable()) #判断当前文件是否可写  False

f.close()   #回收操作系统的资源
#\可以实现换行   以下为相对路径     同时读和写操作
with open('a.txt',mode='r')as rf,\
    open('a.txt',mode='w')as wf:    # with会自动帮你回收操作系统的资源,无需自己操作,关闭
    print(rf.readable())    #True
    print(rf.writable())    #False

#r进行转义     以下为绝对路径
with open(r'D:\oldboy_edu\python_code\day7\a.txt',encoding='utf-8')as f:    # 不加encoding = 'utf-8'出现乱码,原因不明
    print(f.read())     #读取文件

th.jpg(原素材)lixiaoran.png(生成图片)

# 默认打开文件的模式:rt  read text   和r相同
# rb  read bytes
with open('a.txt',mode='rb')as f:       # 内容为:今天天气真好
    print(f.read())
# b'\xe4\xbb\x8a\xe5\xa4\xa9\xe5\xa4\xa9\xe6\xb0\x94\xe7\x9c\x9f\xe5\xa5\xbd'

#读取jpg图片为二进制,再把二进制数据写入png文件,生成新的图片
with open(r'th.jpg',mode='rb')as rf,\
        open('lixiaoran.png',mode='wb')as wf:
    lixiaoran = rf.read()
    print(lixiaoran)
    wf.write(lixiaoran)

打开文件的三种模式:
r :  1、只读  2、如果文件不存在,会报错
w:(慎用)  1、只写  2、如果文件不存在,则新建一个文件写入数据  3、如果文件内存在数据,会将数据清空,重新写入
a:  1、追加写  2、如果文件内存在数据,会在已有数据的后面追加数据  3、如果文件不存在,则新建一个文件写入数据
处理文件的模式:
t  #txt模式
b    #二进制模式
"""

with open(r'dir\b.txt','r',encoding='gbk')as f:
    print(f.readable())
print(f.read())
print(f.readline()) # 执行一次,打印一行内容
print(f.readlines())    #打印所有内容
print(f.read())
print(f.readable())
print(f.read())
for i in f:
    print(i)

with open('b.txt', 'w', encoding='gbk')as f:
    f.write("上海校区第一帅-sean")
    f.writelines(["上午没翻车\n",'我很高兴'])  


with open(r'dir\aaaaa.txt','a',encoding='gbk')as f:
    print(f.writable())
    f.write("\n翻车是不可能的")

猜你喜欢

转载自www.cnblogs.com/ludingchao/p/11815321.html
今日推荐