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

python如何读文件

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

python如何读文件

python中文件读写具体可以分为三步

打开文件,获取句柄;操作文件;关闭文件

文件基本操作如下: 

1 f = open("E:person_practicepythontest.txt","r")   #打开文件
2 fr = f.read()                                           #读取文件
3 print(fr)

文件打开时,需指定文件路径、打开方式,windows文件路径如果是“E:person_practicepython est.txt”,需要把""做转移,或者改成:

"E:/person_practice/python/test.txt"

打开方式分为r、w、a三种方式 ,【+】表示可以同时读写

   r  只读,默认模式
  w   只写,不可读,若文件不存在则创建,若存在,则删除内容,写入新内容
  a  只追加,不可读,若文件不存在则创建,存在则追加新内容
  r+  可读、可写、可追加,若文件不存在,则报错
  w+  可读、可写,若文件存在,内容会被清空,可读新写入的内容
  a+  可读、可写、可追加,若文件存在,则追加新内容,读时默认指针在文件末尾,若需读取整个文件,
  需把指针归零【f.seek(0)】

此种方式打开文件,需要在使用结束后及时关闭文件,可以使用【with】方法来解决:

with open("F:python_scriptspytest.txt ","r") as fr:  #以r形式打开文件 
  for line in fr:                              #一行一行读取 
  print(line)

此种方式会在使用完文件句柄后,自动关闭该文件。

常用文件操作命令

    fr.read()           #读取所有内容
    fr.readline()       #读取一行
    fr.readlines()      #读取所有文件内容,返回一个list
    #以上三个命令在大文件时慎用,会把内容读到内存中,占用大内存
    fr.seek(0)          #当前文件指针位置在0位
    fr.writelines(["a","b"])    #把列表写入文件

文件修改

修改文件有两种方式,一种是把文件内容读取到内存,清空并重写;第二种是把修改后的文件内容写到一个新文件中;

第一种方式

1 with open("F:python_scriptspytest.txt","r+") as fr:    #以读的方式打开
2     res = fr.read()                                          #读取文件到内存
3     new_res = res.replace("学习","study")                     #修改文件内容
4     fr.write(new_res)                                        #修改的内容重写进文件
5     print(new_res)

第二种方式

with open("test_1.txt","r") as fr, open("test_2.txt","w+") as fw:   #同时打开多个文件
    for line in fr:                                                 #循环读取每一行
        new_line = line.replace("1","a")                            #把1改为a
        fw_new = fw.write(new_line)                                 #把修改后的内容写到fw里 

另:

因文件流操作包含缓存机制,write方法不直接写入文件,而是先写入内存的缓存区,等缓存区满了之后再写入文件,并清空缓存区;

若要实时写入文件,就需要用到 f.flush()方法:

 1 # 打开文件
 2 f = open("test.txt", "w+")
 3 
 4 f.write("flush")
 5 
 6 # 刷新缓冲区,并写入文件
 7 f.flush()
 8 
 9 # 关闭文件
10 f.close()

 更多技术请关注Python视频教程。

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

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

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