Python文件I/O

Posted 陈肉包

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python文件I/O相关的知识,希望对你有一定的参考价值。

一、文件打开/关闭

访问模式 说明
r 以只读方式打开,文件指针会放在文件开头,这是默认访问模式
w 以写的方式打开,如已存在文件,则写进的新内容会覆盖原本的文件;如果不存在文件,系统则会新建一个空文件写入
a 以追加方式打开,顾名思义,如文件内有内容,则新写进去的内容会在原来的内容后面追加进去;如文件不存在,系统则会新建一个文件写入
rb 以二进制格式、只读的方式打开,文件指针会放在文件开头,这是默认访问模式
wb 以二进制格式、只写的方式打开,如已存在文件,则新内容会覆盖旧内容;如不存在文件,则新建一个文件
ab 以二进制格式、追加的方式打开,如已存在文件,文件指针会放在文件结尾,

注:用文本模式打开文件,会进行换行符的转换

用二进制模式打开文件,不会进行换行符的转换(文件拷贝时,用二进制可实现原封不动的拷贝)

二、文件操作

 1 # 文件打开
 2 file = open(myfile.txt,w)
 3 write函数一次写一行
 4 file.write(若无若无
)
 5 # writelines函数一次可以写多行,参数是一个列表,列表中每个元素占一行
 6 file.writelines([aaa
,bbb
,ccc
])
 7 file.close() #文件打开后要关闭,因为会占用系统资源
 8 # 文件读取
 9 file2 = open(file2.txt,r)
10 content = file2.readline()
11 content2 = file2.readline()
12 line = file2.readlines()
13 print(line)
14 # 去掉换行
15 for i in line:
16   if i[-1] == 
:
17    print(i[:-1])
18   else:
19    print(i)
20 file2.close()
21 
22 # 文件复制(拷贝)
23 old_file = input(请输入要拷贝的文件)
24 new_file = old_file + .bk
25 f_old = open(old_file,rb)
26 f_new = open(new_file,wb)
27 old_content = f_old.read()
28 f_new.write(old_content)
29 f_old.close()
30 f_new.close()

 

 1 import os
 2 def file_rename():
 3  """文件重命名"""
 4  os.rename(myfile.txt,file1.txt)
 5  
 6 file_rename()
 7 
 8 def file_remove():
 9  os.remove(myfile.txt.bk)#只写文件名,就默认在同级目录下找
10  os.remove(E:\11.txt)#要加斜杠,‘\‘表示‘‘ 不然会报错
11 file_remove()
1 #创建和删除目录
2 os.mkdir(E:WEN.txt)
3 os.rmdir(E:WEN.txt)
4 # 获得指定目录下的文件列表
5 list = os.listdir()
6 print(list)
7 # 获得和设置工q作目录
8 cwd = os.getcwd() #当前目录
9 print(cwd)
1 #修改默认工作路径
2 os.chdir(F:Apple) #这行代码似乎要一直保留,不能注释,不然在后面创建新文件夹时会跑到之前的工作路径上建立。这里搞了好久。。。
3 a = os.getcwd()
4 print(a)
5 os.mkdir(bapple)         

 

以上是关于Python文件I/O的主要内容,如果未能解决你的问题,请参考以下文章

Python文件操作 I/O

17python 文件I/O

2017.12.20 Python 文件I/O

Python 15 I/O编程

Python 文件 I/O

Python 文件I/O