python自学记录-文件操作篇

1. 文件的两个属性:
    1.文件名
    2.文件路径
    例如:文件 C:\Project\mytest.txt的文件名为mytext.txt,文件路径为C:\Project

2.window里面文件夹的分隔符使用反斜杠(倒斜杠),以1中举例:C:\Project\mytest.txt
  os和linux里面文件夹的分隔符使用正斜杠 ,以1中举例:C:/Project/mytest.txt

3.window文件夹名称和文件名称不区分大小写
  os和linux文件夹名称和文件名称区分大小写

4.join函数可以针对运行环境去自动处理路径

    import os
    print(os.path.join('C:\\usr','bin','spam'))

    #windows处理结果 C:\usr\bin\spam
    #os和linux处理结果 C:/usr/bin/spam

5.os的getcwd函数可以获取当前工作目录

    import os
    print(os.getcwd())

6.os的chdir可以改变当前工作目录
    import os
    print(os.getcwd())    
    os.chdir('C:\\usr\\bin')
    print(os.getcwd())

    最后一个print打印出的就是修改后的路径了

7.绝对路径和相对路径
    绝对路径从根文件夹开始。
    相对路径它相对于当前程序的当前工作目录。
    .和..不是真正的文件夹,而是使用的指代文件夹的符号,其中.代表的当前工作目录。两个..代表的是当前工作目录上一级父目录。

8.使用os的makedirs创建新的文件夹,如果创建的文件夹的父文件夹不存在,则同时创建父文件夹

    import os
    os.makedirs('d:\\pj\\haha')

9.获取文件的绝对路径

    import os
    print(os.path.abspath('regtext.py'))

    #执行结果 D:\pj\regtext.py

10.判断当前路径是否为绝对路径

    import os
    print(os.path.isabs('regtext.py'))

    #执行结果 False

11.os.path.relpath(path,start)返回从start开始到结尾的路径,不包括start

    import os
    print(os.path.relpath('D:\pj\haha\good.txt','haha'))

    #执行结果 good.txt


12.调用os.path.dirname返回文件的目录名称

    import os
    print(os.path.dirname('D:\pj\haha\good.txt'))

    #处理结果  D:\pj\haha

13.调用os.path.basename返回文件基本名称

    import os
    print(os.path.basename('D:\pj\haha\good.txt'))

    #处理结果  good.txt

14.调用os.path.split可以返回目录名称和基本名称

    import os
    print(os.path.split('D:\pj\haha\good.txt'))

    #处理结果  ('D:\\pj\\haha', 'good.txt')

15.调用os.path.getsize获取文件的大小

    import os
    print(os.path.getsize('regtext.py'))

    #处理结果 98

16.调用os.listdir返回目录下的文件列表

    import os
    print(os.listdir('D:\pj\haha'))

    #处理结果 ['better.txt.txt', 'good.txt.txt']

17.计算文件夹下所有文件总大小

    import os

    totalsize=0

    for file in os.listdir('D:\pj\haha'):
        totalsize=totalsize+os.path.getsize(os.path.join('D:\pj\haha',file))

    print(totalsize)
    #处理结果 5

18.检查路径是否存在

    import os

    print(os.path.exists('d:\pj'))

    #返回结果为 True

19.判断是否为文件夹
    import os

    print(os.path.isdir('d:\pj'))

    #返回结果True

20.判断是否为文件

    import os

    print(os.path.isfile('d:\\pj\\regtext.py'))

    #返回结果True

21.纯文本文件
    概念:只包含基本文本字符,不包含字体、大小和颜色信息,可以用Notepad或TextEdit打开,例如:带.txt  .py扩展名的文件

22.二进制文件
    概念:除纯文本文件的其他文件。例如字处理文档、PDF、图像、电子表格和可执行程序。用Notepad或TextEdit打开会出现乱码。

23.python中读文件的三个步骤
    前提:导入os
    一.调用open()函数,返回一个File对象
    二.调用File对象的read()或write()方法
    三.调用File对象的close()方法,关闭该文件

24.python读取文件
    import os

    myfile=open('d:\\pj\\haha\\good.txt')
    print(myfile.read())

    #返回结果 good day


25.python按行读取文件,并存到数组里

    import os

    myfile=open('d:\\pj\\haha\\good.txt')
    print(myfile.readlines())

    #返回结果 ['good morning\n','good night']


26.python写入文件---更新方式

    import os

    myfile=open('d:\\pj\\haha\\good.txt','w')
    myfile.write('hello world\n')

    #执行结果  如果原来没有文件,就新建文件,如果原来有文件就更新文件内容为hello world

27.python写入文件----追加方式

    import os

    myfile=open('d:\\pj\\haha\\good.txt','a')
    myfile.write('hello world2\n')

    #执行结果  如果原来没有文件,就新建文件,如果原来有文件就在原文件内容最后写入hello world2


28.python使用shelve保存变量
    import shelve

    shelfFile=shelve.open('mydata')
    cats=['good','better','best']
    shelfFile['cats']=cats
    shelfFile.close()

    #执行结果  在当前工作目录创建了3个文件mydata.bak、mydata.dat 和 mydata.dir。如果在OS上执行,则只会创建一个文件mydata.db

29.python读取shelve里面的数据

    import shelve

    shelfFile=shelve.open('mydata')
    print(type(shelfFile))

    print(shelfFile['cats'])
    print(list(shelfFile.keys()))
    print(list(shelfFile.values()))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值