Python 文件操作

来源:互联网 发布:合并pdf软件 编辑:程序博客网 时间:2024/06/05 07:24
【阅读导引】
下面就Python3.6进行讲解Python中的文件操作方法,主要有:显示输出、键盘输入、打开/关闭文件、写入/读取文件、指针位置操作(显示/位移)、文件操作(重命名/删除)、目录操作(显示/新建/变更/删除)。
显示输出:
语法:  print("[显示固定内容]",[显示变量内容])
例如:  print("hello world")    #只显示固定内容
     print("hello world", str)  #显示固定内容后,在其后追加str的内容。
       print(str)    #只显示变量" str "的内容
      print("hello", str1 ,str2, str...)   #同时显示多个变量的内容。


键盘输入:
语法:   input([提示字符串])
例如:  str = input("请输入:")
解释:屏幕输出显示“请输入”字样(提示部分非强制写入),让后将输入的内容赋值给变量 str 。


打开文件:
语法:    file_object = open(file_name [, access_mode][, buffering])
参数如下:
file_object:接收问文件状态信息的对象,非强制存在。
file_name:要访问的文件名称的字符串值。
access_mode:文件的打开模式(默认为只读),该参数非强制输入,具体如下:
buffering:如果该变量取值为" 0 ",就不会有寄存;取" 1 "时,访问文件时会寄存行。如果取" >1 "的整数值,表示当前的寄存区的缓冲大小。如果取" <0 ",寄存区的缓冲大小则为系统默认。


例如:    op = open("test.txt","r+")
解释: 以“读写”方式打开名为" test.txt"的文件。


a)文件对象属性:
当使用对象属性接收文件的各种状态信息时,可以执行以下的一些操作:
file_object.name       #返回文件的名称
file_object.mode       #返回文件的打开模式
file_object.closed     #查看文件是否关闭,如果已关闭返回 "true",否则返回"false"
file_object.softspace   #如果用print输出后,有空格符返回" false ",否则返回" true "


例如: op = open("test.txt","r+")
       print("文件名:", op.name)
       print("文件打开模式:", op.mode)
       print("文件是否关闭:", op.closed)


关闭文件:
语法:    file_Object.close()
注意:当使用同一个对象打开多个多个文件时,前面的文件会被系统关闭,只打开最后一个文件,被关闭的文件系统会自动刷新该寄存器缓存的内容,并保存到文件中。


例如:  op.close()      #关闭对象" op "对应的文件
提示:文件使用完毕后,应使用close()该文件,是学习编程应该养成的一个好习惯。


写文件:
语法:     file_object.write(string)
说明: file_object:写入内容的对象名
       string:要输入的内容
注意:write()方法不会在字符串的结尾添加换行符('\n'),同时在写入内容时应注意文件的打开模式。


例如:   op = ("test.txt", "r+")    # 以读写模式打开文件
         op.write("welcome to python\n")   #写入字符串


读文件:
语法:     file_object.read([count])
说明:   file_object: 读取文件的对象名
         count:读取内容的数量;缺省该参数时,系统会尽最大能力将文件的全部内容读出。


例如: op = open("test.txt", "r")
       op.read( 10 )     #从文件开始处往后读取10个字节的内容
       op = read()    #读取文件所有内容


指针(光标)定位:
语法:     file_object.tell()       # 获取当前指针位置信息
           file_object.seek(offset [,from])      # 重设指针位置
说明: offset表示要移动指针的字节数;from表示起始指针参考的位置,设为“ 0 ”表示以文件的开始处作为指针移动的参考位置,设为" 1 "表示以当前指针位置做为参考位置,设为" 2 "表示以文件的末尾作为参考点。


例如: op = open("test.txt", "r+")    #以读写模式打开文件
      position = op.tell()     # 获取当前文件指针位置
      print("光标当前位置:", position)   # 打印指针值


      position = op.seek(2, 1)     #从当期指针位置,往后移动2个字节

      print("移动后的光标位置:", position)   # 再次打印指针值
      op.clos()   #关闭文件


【拓展用法】

python 中还提供了一些专门处理文件写入、读取的方法,具体如下:

读文件:
    object.readline( )        #  执行一次读取文件一行内容 ( 注:该方法不会识别是否读取完毕文件,当文件读完时,再次读会返回空字符  )
    opject.readlines( )         # 以列表形式返回读取到的所有内容(一行为一个元素)
    opjece.next( )                      #执行一次读取文件一行内容( 注:该方法会判断是否读取完毕,文件读完时,自动终止)

写文件:

     object.writelines( list )       # 写入列表元素(需换行时各元素末端加入 \n)

刷新文件:

    object.flush( )          # 将缓冲区的内容写入到文件当中(相当于保存)


文件操作:

python提供了os模块,用于对文件的重命名、删除等操作,在执行这些操作时需先导入os模块,具体如下:


a)重命名文件:
语法:    os.rename(current_file_name, new_file_name)
例如:    import os
          os.rename("test.txt", "test1.txt")   #重命名"test.txt"为"test1.txt" 
          
b)删除文件:
语法:    os.remove(file_name) 
例如:     import os
           os.remove("test1.txt")    #删除名为"test1.txt"的文件。 


目录操作:

python 的os模块同样提供对文件目录的操作,执行这些操作时,导入os模块即可,具体如下:


a)显示当前工作目录
语法:  os.getcwd()
例如:  print("当前工作目录:",os.getcwd() )


b)新建目录
语法:  os.mkdir("directort_name")
例如:  os.mkdir("python")   #在当前目录下创建一个名为"python"的目录(文件夹)


c)变更目录
语法:  os.chdir("new_directort")
例如:  os.chdir("C:/Users/admin/Desktop/Python")  #变更目录到指定的位置
注意:目录使用的间隔符为斜杠( / ),与windows下的存在差异。


d)删除目录

语法:  os.rmdir("directort_name")
例如:  os.rmdir("python")   #删除当前目录下名为"python"的目录(文件夹)
注意:当删除的目录下有其它文件时,需要执行另外的操作才可以删除。
原创粉丝点击