美文网首页
Python(六)文件和目录操作

Python(六)文件和目录操作

作者: 晓看云 | 来源:发表于2019-05-29 18:32 被阅读0次

    一、文件操作

        Python提供了必要的函数和方法进行默认情况下的文件基本操作。你可以用file对象做大部分的文件操作。

        (1)打开文件:

            Python内置了一个打开文件的函数,open()函数,用来代开一个文件,创建一个file对象,然后就可以对该打开的文件做任何你想做的操作。            

            File_object = open(file_name,[access_mode],[buffering])    

            file_name:file_name变量是一个包含了你要访问的文件路径及文件名称的字符串值。

            access_mode:决定了打开文件的模式,是只读、写入、追加等等。这个参数是非强制的,默认文件访问模式为只读(r)

            buffering:如果buffering的值被设置为0,就不会有缓存;如果值为1,访问文件时会缓存行;如果值为大于1的整数,表明了这就是寄存区的缓冲大小;如果取负值,寄存区的缓冲大小则为系统默认。该参数也是非强制性的。

            **当语句表示返回的File_object是一个指向文件的指针(一个文件对象)。当以只读模式(r)打开一个不存在的文件时,就会报IOError异常(文件不存在),但如果是以写或追加模式(w/a/a+)打开一个不存在的文件时,默认会创建该文件。但如果是所在路径中有目录不存在,也会报IOError异常。

           open() 函数

        demo1:

            >>> fp.open("/Users/admin/1.txt",'w')

            >>> fp.write("glory road is great!")

            >>> fp.close()

        demo2:

            >>> fp = open("/Users/admin/1.txt",'r')

            >>> print fp.readline()

                    glory road is great!

            >>> fp.close()

            demo3

    Python os模块提供了一个统一的操作系统接口函数,这些接口函数通常是平台指定的,os模块能在不同操作系统平台(如nt 或posix)中特定函数建自动切换,从而实现跨平台操作.

        python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块

    目录操作:

    1、os.getwd( )

          获取当前工作目录,即当前Python脚本工作的目录路径.

        #encoding=utf-8

        import os

        CurrentPath = os.getcwd( )

        print u"当前工作目录:",CurrentPath

    2.os.chdir(path)

    改变当前脚本工作目录;相当于shell下的cd命令

    3.os.curdir

    返回当前目录的父目录('..')

    4.获取当前使用的操作系统类型(其中,'nt'是windows,'posix'是linux或者unix)

    5.os.makedirs(path,[mode=0777])

    可生成多层递归目录,父目录如果不存在,递归生成.

    参见mode表示生成的目录的权限,默认是超级权限,也就是0777

    import os

    一.文件操作函数

    1.open( )函数

        File_object = open(file_name,[access_mode],[buffering])

        file_name:file_name变量是一个包含了你想要访问的文件路径及文件名称的字符串值

        access_mode:决定了打开文件的模式,是只读、写入、追加等等.这个参数是非强制的,默认文件访问模式为只读(r)

        buffering:如果bufferting的值被设置为0,就不会有缓存;如果值为1,访问文件时会缓存行;如果值大于1的正数,表明这就是寄存区的缓冲大小;如果取负值,寄存区的缓冲大小则为系统默认。该参数也是非强制性的.

        该语句表示返回的File_object是一个执行文件的指针(一个文件对象).

        当以只读模式(r)打开一个不存在的文件时,就会报IOError异常(文件不存在),但如果是以血或追加模式(w /a /a+)打开一个不存在的文件时,默认会创建该文件,但如果是所在路径有目录不存在,也会报IOError异常.

    2.读取带有中文的文件

    3.打开文件

    4.文件操作模式

    (1)r  以只读方式打开文件,文件的指针会放在文件的开头,这是默认模式

    (2)rb 以二进制格式打开一个文件用于只读.文件指针将会放在文件的开头,这是默认模式,

    (3)r+  打开一个文件用于读写,文件指针将会放在文件的开头

    (4 )rb+ yi

    (1)fileObject.read([size])

    size为读取的长度,以Byte为单位.如果不指定参数,表示一次性读取全部内容,以字符串形式返回,并且每一行结尾会有一个"\n"符号

    F1:

    #encoding=utf-8

    fp = open("c:\\file.txt",'r')

    content = fp.read()

    print u"读取的文件内容如下:\n",content

    #关闭文件

    fp.colse()

    例题:

    #encding=utf-8

    import time

    def str_concate():

        result=""

        for i in xrange(1000000):

            result+="a"

        return result

    start_time = time.time()

    str_concate()

    end_time = time.time()

    result = end_time - start_time

    with open("e:\\1.txt","w") as fp:

        fp.write(u"函数执行的结果:".encode("gbk")+str(result)+u"秒".encode("gbk"))

    2.writeliness(seq)

    3.进程:进程是操作系统的最小单元

       线程:线程是公用晋城的,进程的组成,线程内存更少

        进程/线程控制器

    4.flush( )函数

    5.seek( )函数

        seek(offset[,from])这是一个文件定位函数,该方法改变当前文件的位置

            Offset变量表示要移动的字节数,

            From变量执行开始移动字节的参考位置,如果from被设为0,这意味着将文件的开头作为移动字节的参考位置.

            如果设为1,则使用当前位置作为参考位置,

            如果设为2,南无该文件的末尾将作为参考位置.

    6.fileObject.truncate([size])

    把文件裁成规定的大小,默认的是裁到当前文件操作标记的位置.如果size比文件的大小还要大,依据系统的不同可能是不改变文件,也可能是用0把文件补到相应的大小,也可能是以一些随机的内容加上去.

    7.序列化:变量内容存在文件里,下次可以取出复用.

    相关文章

      网友评论

          本文标题:Python(六)文件和目录操作

          本文链接:https://www.haomeiwen.com/subject/mkzytctx.html