zoukankan      html  css  js  c++  java
  • Python学习笔记(12)-文件操作、应用小练习

    文件操作

    使用文件的目的:把执行代码时产生的数据存储起来,下一次执行代码时直接使用,不必重新在制作一份

    文件操作方式:打开文件、读/写文件数据、关闭文件

    打开文件

    表现形式1:f = open("test.txt","r")

    以读的方式打开已存在的名为test.txt的文件,使用变量f指向打开的test.txt文件

    注意事项:

    1、文件test.txt若不存在代码将报错并退出

    2、以读的方式打开的文件无法向文件中写入数据

    3、文件名与操作方式(读/写)都要加成对引号

    4、如果是以读的方式打开文件"r"可省略不行,默认为以读的方式打开,也可以写成f = open("test.txt")

    表现形式2:f = open("test.txt","w")

    以写的方式打开文件test.txt,test.txt文件若存在,则覆盖,test.txt文件若不存在,则创建文件test.txt,使用变量f指向打开的test.txt文件

    注意事项:

    以写的方式打开的文件无法读取文件内容

    表现形式3:f = open("test.txt","a")

    以写的方式打开文件test.txt,test.txt文件若存在,写入的内容会追加在原文件内容末尾,test.txt文件若不存在,则创建文件test.txt,使用变量f指向打开的test.txt文件

    关闭文件

    表现形式:close()

    例如:关闭文件test.txt

    f = open("test.txt","w")

    f.close()

    注意事项:关闭文件与打开文件成对使用,不可以打开文件操作后不关闭文件

    文件的读写

    向文件中写入数据(write):

    如图:

    注意:

    1、如果文件不存在则创建,如果存在就先将文件清空,然后写入数据

    2、写入文件操作是从文件开头开始

    3、图中的11表示向文件中写入了多少字节内容

    从文件中读取数据(read):

    1、按文件内容中长度读取read(num),如图:

    注意:

    num的单位是字节,表示每次读取的字节数

    多次读取时下一次读取的内容是从上一次读取完内容的位置开始的

     2、将文件中内容全部读取read(),如图:

    注意:一般不建议使用这种读取方式,因为如果文件过大(比如5G),内存很小(比如4G)的情况下,一次全部读取文件内容会令程序死掉

    3、将文件中内容全部读取,但按照行的方式显示readlines(),如图:

    注意:readlines读取方式得到的是一个列表,每行的内容为一个元素

    4、按文件内容中行内容读取readline(),如图:

    文件的定位读写

    文件的定位读写就是从文件的某一位置开始进行读写

    表现形式:seek(offset,from)

    offset:偏移量(单位:字节)

    from:从哪个位置开始便宜,共有三个参数(0:表示文件开头 1:表示当前位置 2:表示文件末尾)

    例如:

    从文件开头并且偏移3个字节开始读取

    文件的重命名、删除

    说明:文件重命名、删除操作需要python的os模块支持

    重命名:os.rename(需要修改的原文件名, 新的文件名)

    删除:os.remove(需要删除的文件名)

    如:

    import os

    os.rename("test.txt","新test.txt")

    os.remove("test.txt")

    文件夹的相关操作

    说明:文件夹的相关操作需要python的os模块支持

    获取当前所在目录:os.getcwd()

    创建文件夹:os.mkdir("test")

    删除文件夹:os.rmdir("test")

    跳转到其他目录:os.chdir("aaa")

    获取目录下文件夹和文件名称:os.listdir()(得到的数据类型是列表)

    应用小练习

    制作文件的备份

    要求:通过输入的文件名称备份该文件内容,且将文件名字更改成原文件名【复件】

    注意点:

    1、想要在test.txt更改成test[复件].txt先要找到点的索引值,然后将字符串切片重组

    2、尽量不要一次全部读取原文件,所以使用每次读取1024字节来读取

    3、读取或者写入文件后不要忘记关闭文件

    批量修改文件名

    要求:通过输入的文件夹名称将文件夹下的所有文件全部重命名,在每个文件名开头上加上【测试修改】

    如图:

    图1:重命名前

    图1

    图2:重命名后

    注意事项:

    1、需要python下os模块支持

    2、rename()只能修改当前路径下的文件,所以需事先跳转到test文件夹下

    3、获取文件名称操作得到的是列表,所以可以通过遍历列表来获取每一个文件名

  • 相关阅读:
    系统分析师考试
    系统分析师
    软件设计师考试
    海恩法则”的启示:制度不落到实处事故必发
    eclipse下生成Java类图和时序图,生成UML图
    bzoj4010【HNOI2015】菜肴制作
    atitit.提升开发效率---MDA 软件开发方式的革命(5)----列表查询建模
    【数据结构和算法16】堆排序
    这一路走来,冷暖自知 (附算法demos)
    c++实现二叉搜索树
  • 原文地址:https://www.cnblogs.com/lidongaistudy/p/9560562.html
Copyright © 2011-2022 走看看