python学习-第七周:File操作

Posted yzq2333

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python学习-第七周:File操作相关的知识,希望对你有一定的参考价值。

Python中的File(文件)操作

针对磁盘中的文件的读写操作。
文件操作步骤:

    1. 打开文件 open()  
    2. 读取、写入内容 write()、read()
    3. 关闭文件 close()   

文件操作相关函数

  • open() 打开文件
    open(文件的路径,打开的方式,[字符集])
  • write() 写入内容
    文件对象名.write(字符串)
  • read() 读取内容
    文件对象.read() 从当前指针位置读取到最后
    文件对象.read(读取的字节数) 可以读取指定长度的字符
  • readline() 读取一行
    文件对象.readline() 一次读取一行
    文件对象.readline(字节数) 一次读取一行中指定长度的字节
  • readlines() 读取所有行
    文件对象.readlines() 读取所有行,每一行作为一个元素,返回了一个列表
    文件对象.readlines(6) 按照行进行读取,可以设置读取的字节数,设置的字节数不足一行按一行算
  • close() 关闭文件
    文件对象.close() 关闭打开的文件

Seek() 设置文件指针的位置

对文件操作的理解,关键是要弄清楚光标指针的位置在哪!

fp.seek(0)  # 把文件指针设置到文件的开头位置
fp.seek(10)   # 设置文件指针的位置
fp.seek(0,2)  # 0,2是把文件指定设置在文件的末尾

文件操作的高级便捷写法

‘‘‘
with open(文件路径,打开模式,编码模式) as 变量名:
    变量.操作()
‘‘‘

with open(‘./1.txt‘,‘r+‘,encoding=‘utf-8‘) as fp:
    res = fp.read()
    print(res)

文件的路径:

‘‘‘
相对路径: 就像给别人指路一样: 在某某大厦的对面。。。
    针对文件的相对路径的表示,从当前目录开始计算
     1.txt ==>  具体文件前没有任何表示时,默认为当前目录 和 ./1.txt 是同样的效果
     ./1.txt  ==> ./ 代表当前目录
     ../1.txt ==> ../ 代表当前目录中的 上一级目录
绝对路径: 就像买东西写收货地址一样: 北京市海淀区中关村大街128号xxx小区,xxx号楼xx单元xx室
    windows:  c:/users/appdata/1.txt
    Linux: /user/home/yc/1.txt
‘‘‘

打开的模式:

‘‘‘
一.基础模式:  w  r  x  a
    w w模式  write 写入模式
        1.文件如果不存在,则创建这个文件
        2.文件如果存在,则打开这个文件,并且清空文件内容
        3.文件打开后,文件的指针在文件的最前面

    r r模式: read  读取模式
        1.如果文件不存在,则报错
        2.文件如果存在,则打开文件
        3.文件指针在文件的最前面

    x x模式: xor 异或模式
        1.文件不存在,则创建这个文件
        2.文件已存在,则报错(防止覆盖)
        3.文件的指针在文件的最前面

    a a模式: append 追加模式
        1.文件不存在,则创建文件
        2.文件如果存在,则打开文件 (和w模式的区别在于。a模式打开文件后不会清空)
        3.文件指针在当前文件的最后

二.扩展模式:
            b b模式  bytes   二进制
            + +模式  plus    增强模式(可读可写)
三.文件操作模式的组合:
            w,r,a,x
            wb,rb,ab,xb,
            w+,r+,a+,x+
            wb+,rb+,ab+,xb+
‘‘‘

函数第三部分归纳完毕,下周总结python第三方库的相关操作,下周见~











以上是关于python学习-第七周:File操作的主要内容,如果未能解决你的问题,请参考以下文章

Python学习--第七周

第七周收获

python学习第七周之异常处理

第七周:Python-new

《网络攻防》第七周学习总结

2017-2018-2 20179317 《网络攻防技术》第七周学习心得体会