python中文件的使用

1.文件的三种外模式(什么样子的文件)

  • t 模式:只适用于文本文件
  • b 模式:适用于任何文件,如:视频、图片、文本;在b模式下不需要写编码模式
  • + 模式:能写也能读

2.文件的三种内模式(进行对文件的操作)

  • r 模式:用来阅读文件
  • w 模式:用来写文件,调用的时候没有文件会创建一个文件
  • + 模式:用来读文件,也可以用来写文件

小结:外模式与内模式两种搭配使用,举例:

# 案例1:t模式的使用

with open(r't.txt',mode='rt',encoding='utf-8') as f:
    res = f.read()
    print(res)

with open(r't.txt',mode='wt',encoding='utf-8') as f:
    res = f.read()
    print(res)

with open(r't.txt',mode='r+t',encoding='utf-8') as f: # 在+模式下,能写也能读
    res = f.read()
    print(res)


# 案例2:将一个文件复制给另一个文件:

y_file = input('源文件路径是:')
f_file = input('复制文件路径:')
with open(r'{}'.format(y_file), mode='rt', encoding='utf-8') as f1, \
        open(r'{}'.format(f_file), mode='wt', encoding='utf-8') as f2:
    for line in f1:
        f2.write(line)
        
     
# 案例3:b模式的使用
with open(r't.txt',mode='rb') as f:
    res = f.read()
    print(res)

with open(r't.txt',mode='wb') as f:
    res = f.read()
    print(res)

 详细说明:with语句用来访问文件,with( r '文件的路径',mode='内外模式的运用',encoding = '编码模式的格式')

3.文件的两种修改方法

# 方式一:打开文件a,进行读取,然后再重新打开文件a,进行replace修改(注意这时候不能打开两个open,因为是同一个文件,没有关闭,wt会清空文件,进而修改不了文件)

with open('a.txt', mode='rt', encoding='utf-8') as f1:
    res = f1.read()

with open('a.txt', mode='wt', encoding='utf-8') as f2:
    f2.write(res.replace('zt','zx'))  # 将文件a内容中的zt改为zx


# 方式2:这里的文件修改,其实是建了两个文件;将文件a的内容全部复制到文件b,然后将文件b中的内容进行replace修改,将文件b的名字改成文件a,这时候就通过文件b将文件a修改了


import os

with open('a.txt', mode='rt', encoding='utf-8') as f1, \
        open('b.txt', mode='wt', encoding='utf-8') as f2:
    for line in f1:
        f2.write(line.replace('zt', 'lj'))

os.remove('a.txt')
os.rename('b.txt', 'a.txt')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值