Python3第二十八课:文件的使用

Python3文件处理:

其实一直想搞一个小工具来处理信息预埋后,产品的数据返回,比方说我发了100个帖子,他们有多少被删除了,有多少的浏览量,有多少被搜索引擎收录了,有多少用户回复,回复的重点是什么?

这些数据如果不靠机器去处理的话,人力的成本太大,且资源的浪费也是很吓人的。

文件打开模式

  • r,只读方式打开文件(默认)
  • w,写入的方式打开文件,覆盖原文本
  • x,如果违建已经存在,使用此模式打开引发异常
  • a,写入模式打开,如果文件存在,则在末尾追加写入
  • b,以二进制模式打开文件
  • t,以文本模式打开
  • +,可读写模式(可添加到其他模式中使用)
  • U,通用换行符支持

 

Python3文件对象方法

  • 文件打开open()
  1. open(filemode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

常用file(文件地址和文件名,如下面的直接是文件名,则在当前目录中查找),mode支持多种打开模式,mode='r'默认为只读不可写

  1. f = open('record.txt')
  2. for i in f:  # 遍历变量f中的内容
  3.     print(i)
  4. #
  5. f.close()  # 文件关闭
  • 文件关闭close()

不关会死,记得关。

  • read()
  1. f = open('record.txt')
  2. print(f.read(10))  # 从文件读取size个字符,当为给定sieze或给定负值的时候,读取剩余的所有字符,然后作为字符串返回
  3. f.close()
  • readline()
  1. f = open('record.txt')
  2. print(f.readlinereadline(10))  # 从文件中读取并返回一行(包括行结束符),如果有size有定义则返回size个字符
  3. f.close()
  • readlines()
  1. f = open('record.txt')
  2. print(f.readlines())  # 读出所有行的内容
  3. f.close()
  • write()
  1. f = open('record.txt','a')
  2. print(f.write('李金龙到此一游'))  # 将字符串str写入文件
  3. f.close()
  • writelines()
  1. f = open('text.txt','a')
  2. a = ['Hello','123','4567','www.lijinlong.cc']
  3. f.writelines(a)  # 向文件写入字符串序列seq(内容中的a),seq应该是一个返回字符串的可迭代对象
  4. f.close()
  • tell()
  1. f = open('text2.txt')
  2. print(f.read(10))
  3. print(f.tell())  # 返回当前位置
  4. f.close()
  • truncate()
  1. f = open('text2.txt','w') #写入的模式下,使用read是会报错的哦
  2. print(f.truncate(10)) #截取文件到size个字节,默认是截取到文件指针当前位置
  3. f.close()
  • seek()
  1. f = open('text2.txt')
  2. f.read(10)
  3. f.seek(0,0)  # 移动到开头,在文件中移动文件指针,从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)偏移offset个字节)

单词扩展:

  • open:打开
  • close : 关闭
  • read : 读取
  • read line:读取一行(两个单词)
  • write:写
  • tell :告诉
  • truncate : 截断
  • file : 文件
  • mode : 模式

扩展阅读:


版权注释:

Python课程来源于鱼C论坛:http://bbs.fishc.com/forum-243-1.html 版块,课程内容为免费内容,如果你喜欢该课程,建议购买VIP账号支持小甲鱼,官方网店:https://fishc.taobao.com/)。

本内容为在李金龙在学习课程中做的日记记录,方便自己以后查找相关信息,另一方面也希望自己写下的东西可以帮助到别人。

课程内容:http://blog.fishc.com/3274.html

李金龙

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: