码迷,mamicode.com
首页 > 编程语言 > 详细

2018-6-13-Python全栈开发day18-文件操作

时间:2018-06-14 01:15:28      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:day   读取文件   encoding   转换   flush   文件打开   判断   4.4   自动   

文件操作,打开文件,读取文件,写入文件,关闭文件

1.文件操作的步骤

  打开文件

  操作文件

  关闭文件

2.打开文件

  

f=open(xxx.txt,r,encoding=utf-8)
data=f.read()
f.close

  2.1 readline

    一次读取文件的一行

  2.2 readbale

    判断文件是否可读

  2.3 readlines

    将文件中的内容以一行为一个元素,放到一个列表中

   2.4 打开文件的另外一种形式

    

with open(xxx,r,encoding=utf-8) as f

    这种写法,python会自动关闭文件,不用再close

  2.5 写入文件

    写入w模式,相当于自己先创建一个空白文件,写好内容之后再覆盖原文件,在w的时候就已经覆盖掉了

  2.6 追加 a

    在文件的最后面进行追加内容,不会将文件内容删除

  2.7 r+,a+,w+

    r+ 可读可写

    a+ 可读可写追加

    w+ 可读可写

3.rb  

   以字节的形式打开文件

   字符串---bytes  这个是encode      将我写的东西转化为二进制,编码

   bytes---字符串 这个是decode       将二进制转换为我看得懂的东西 解码

    以二进制形式打开时,不能指定编码

4.各种方法

  4.1 f.encoding()

    文件打开时,以何种编码方式打开

  4.2 f.flush()

    将在内存上对文件的修改,写入到硬盘当中

  4.3 f.tell()

    显示光标目前所在的位置。#除了read是显示光标所在字符的位置,其他的都是显示字符位置

  4.4f.seek()

    有三种模式

    4.4.1 0

      f.seek(4.0)第一种方式,从文件开头,移动四个字节

    4.4.2 1

      f.seek(3.1),从光标相对位置,移动三个字节

    4.4.3 2

      f.seek(-10,2)从文件的末尾,向前移动十个字节

 

 

练习题:读取文件最后一行数据

f=open(xxx.txt,rb)
offs=-3

while True:
    f.seek(offs,2)
    data=f.readlines()
    if len(data) > 1:
        print(data[-1].decode(utf-8))
        break
    offs *=2

 

2018-6-13-Python全栈开发day18-文件操作

标签:day   读取文件   encoding   转换   flush   文件打开   判断   4.4   自动   

原文地址:https://www.cnblogs.com/hai125698/p/9180663.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!