欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python 文件操作

程序员文章站 2022-09-02 23:01:33
Python 文件操作。 下面就Python3.6进行讲解Python中的文件操作方法,主要有:显示输出、键盘输入、打开/关闭文件、写入/读取文件、指针位置操作(显示/位移)、文...
Python 文件操作。
下面就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提供了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"的目录(文件夹)
注意:当删除的目录下有其它文件时,需要执行另外的操作才可以删除。