1. 关于读取文件

f.read() 读取文件中所有内容
f.readline() 读取第一行的内容
f.readlines() 读取文件里面所有内容,把每行的内容放到一个list里面

注:因为文件指针的作用,如果以上方法连用,会有读取影响

使用方法请参见:http://www.cnblogs.com/yun1108/p/8967334.html

2. f.flush()   :刷新缓冲区,立即写到磁盘上

3. f.seek(index) : 移动文件指针到指定的下标处,即从指定的下标处开始读取文件,但写入还是从最后开始写入

4. with open : 用完后自动关闭文件,省去了手动添加f.close()功能  例子:修改文件

# 第一种,适合读取小一些的文件
with open('users','a+') as fw:
fw.seek(0) #用r+,就可省略这一步
result = fw.read()
new_result = result.replace('bcd','python')
fw.seek(0)
fw.truncate() #清空文件内容
fw.write(new_result)
print(new_result) # 第二种,读取大文件并修改
import os
with open('users') as fr,open('.users','w',encoding='utf-8') as fw: #.users是一个临时文件
for line in fr:#从需要修改的文件里面读文件
new_line=line.replace('python','修改文件')
fw.write(new_line)
os.remove('users') #删除原文件
os.rename('.users','users') #将临时文件重命名为users

5. 循环文件 --- 高效读取文件

f=open('users','a+',encoding='utf-8')  # f:文件对象,或者文件句柄
#文件中内容为:
# abc,123
# qwe,456 # 1. 循环读取文件中的内容并存入字典
d={}
f.seek(0)
while 1: #第一种,但要求文件里不能有空行,如有空行,则只能读取到空行的上一行
line=f.readline().strip()
if line:
# pass #什么也不做
user,passwd=line.split(',')
d[user]=passwd
else:
break
print(d) #输出内容:{'abc': '123', 'qwe': '456'} # 2. 直接循环文件对象f,每次取的就是文件里的每一行
f.seek(0) # 如果open文件时是r+,可省略这步
for i in f:
print('每次循环的是',i)
#输出内容:
#每次循环的是 abc,123
#每次循环的是 qwe,456 l=['abc123\n','bcd123\n']
f.writelines(l)#会循环list里面的每个元素并写进文件中,此方法用于list,如果是字符串则直接用write写即可
#文件中的内容更新为:
# abc,123
# qwe,456
# abc123
# bcd123

6. encoding='utf-8' : 如果读写的文件中有中文,要加上

Python文件读取常用方法的更多相关文章

  1. python文件读取和写入案例

    python文件读取和写入案例  直接上代码吧 都是说明 百度上找了很多,最终得出思路 没有直接可以读取修改的扩展,只能先读取,然后复制一份,然后在复制出来的文件里面追加保存 然后删除读的那个,但是缺 ...

  2. Python文件读取和数据处理

    一.python文件读取 1.基本操作 读取文件信息时要注意文件编码,文件编码有UFT-8.ASCII或UTF-16等. 不过在python中最为常用的是UTF-8,所以如果不特别说明就默认UTF-8 ...

  3. Python 文件读取

    1. 最基本的读文件方法: # File: readline-example-1.py file = open("sample.txt") while 1: line = file ...

  4. Python——文件读取

    我们经常需要从文件中读取数据,因此学会文件的读取很重要,下面来介绍一下文件的读取工作:     1.读取整个文件     pi_digits.text 3.1415926535 8979323846 ...

  5. python文件读取

    1.如何将一个“lessons.txt”文档一行行输出? myfile = file(‘lessons.txt’) for f in myfile.readlines(): print f myfil ...

  6. Python文件读取编码错误问题解决之(PyCharm开发工具默认设置的坑。。。)

    刚接触Python学习,正准备做个爬虫的例子,谁知道代码一开始就遇到了一个大坑,狂汗啊. 问题是这样的:我通过代码爬取了博客园首页的HTML代码并存入到blog.txt文件当中,然后准备读取出来之后进 ...

  7. 初识python 文件读取 保存

    上一章最后一题的答案:infors.sort(key=lambda x:x['age'])print(infors)--->[{'name': 'laowang', 'age': 23}, {' ...

  8. python --文件读取数据

    读取整个文件: 首先创建一个文件,例如我创建了一个t x t文件了. 然后我想读取这个文件了,我首先将上面的这个文件保存在我即将要创建的Python的文件目录下, 即读取文件成功. 解析: 函数ope ...

  9. 超级基础的python文件读取

    读取文件的两种方式: 1.使用os的open函数: import sys,os r=open("data1.txt","r+") fr=r.readlines( ...

随机推荐

  1. 【洛谷P2585】三色二叉树

    题目大意:给定一个二叉树,可以染红绿黄三种颜色,要求父节点和子节点的颜色不同,且如果一个节点有两个子节点,那么两个子节点之间的颜色也不同.求最多和最少有多少个节点会被染成绿色. 题解:加深了对二叉树的 ...

  2. Eclipse 在线安装properties编辑插件

    在eclipse中,如果在properties文件中写中文,会被自动保存成unicode编码,如lab.submitbutton=\u63d0\u4ea4.     这在查看properties文件时 ...

  3. Good Bye 2018 B. New Year and the Treasure Geolocation

    传送门 https://www.cnblogs.com/violet-acmer/p/10201535.html 题意: 在二维空间中有 n 个 obelisk 点,n 个 p 点: 存在坐标T(x, ...

  4. (水题)P1424 小鱼的航程(改进版) 洛谷

    题目背景 原来的题目太简单,现改进让小鱼周末也休息,请已经做过重做该题. 题目描述 有一只小鱼,它上午游泳150公里,下午游泳100公里,晚上和周末都休息(实行双休日),假设从周x(1<=x&l ...

  5. STM32F103 ------ 时钟配置

    由于stm32的库默认是外部晶振8M的情况下实现的,所以配置波特率的时候也是按8M,包括主频,如果用12M晶振就需要改动几个地方: 在system_stm32f10x.c中找到相应类型的文件,进行如下 ...

  6. day16-(listener&filter)

    回顾: ajax: 异步请求 原生的ajax(了解) 1.创建一个核心对象 XMLHttpRequest 2.编写回调函数 xmlhttp.onreadystatechange=function(){ ...

  7. Hbase学习02

    第2章 Apache HBase配置 本章在“入门”一章中进行了扩展,以进一步解释Apache HBase的配置. 请仔细阅读本章,特别是基本先决条件,确保您的HBase测试和部署顺利进行,并防止数据 ...

  8. Weblogic启动服务时候提示:Authentication for user weblogic denied

    一.问题描述: 在Linux系统上对weblogic10.3.6搭建完成后,启动控制台没问题,但是新建的服务怎么都起不来,而且在服务的目录下也有了认证文件boot.properties文件,也确定用户 ...

  9. spring整合curator实现分布式锁

    为什么要有分布式锁? 比如说,我们要下单,分为两个操作,下单成功(订单服务),扣减库存(商品服务).如果没有锁的话,同时两个请求进来.先检查有没有库存,一看都有,然后下订单,减库存.这时候肯定会出现错 ...

  10. python第三次周末大作业

    ''' s18第三周周末⼤作业 模拟博客园系统: 1. 启动程序, 显⽰菜单列表 菜单: 1. 登录 2. 注册 3. ⽂章 4. ⽇记 5. 退出 2. ⽤户输入选项, ⽂章和⽇记必须在登录后才可以 ...