10.Python的文件操作

匿名 (未验证) 提交于 2019-12-02 22:51:30

1.文件的基本操作

打开关闭文件

推荐

<_io.TextIOWrapper name='file.py' mode='r' encoding='UTF-8'> <_io.TextIOWrapper name='file.py' mode='r' encoding='UTF-8'>

文件打开方式



加个b的作用:以二进制的格式打开文件,进行上述操作 。

读取/写入文件


注意:文件读取完后光标移动到文尾,再读取则为空白。


读文件实例

with open('mypython.py') as f:     content = f.read() #    print(content) #    content2 = f.read()     print(content2) #     f.seek(0) #    con = f.read(10) #10    print(con)  #10    con2 = f.read() #     f.seek(0)     cont = f.readline() #    print(cont) #     f.seek(0)     conten =f.readlines() #    print(conten)

写文件实例

with open('mypython.py','w') as f: #    content = ''     f.write(content) #    f.flush() #    f.close() # with open('mypython.py','a') as f: #    content = ''     f.write(content)     f.flush()     f.close()  with open('mypython.py','w+') as f:     content = ''     f.write(content)     f.flush()     f.seek(0) #    con=f.readline()     print(con)     f.close()

文本模式与二进制模式

1)文本模式


2)二进制模式


2.StringIO与BytesIO

即是假文件,暂存于内存中,用于临时使用,关闭后数据全部丢失

首先导入io模块

import io

例:

import  io f = io.StringIO() f.write('\n') print(f.getvalue())
第一行 第二行 

3.上下文管理

即第二种打开文件的方法

with...as..




4.常见问题处理

文件访问编码

open(file_path, mode='r', encoding='utf-8')

文件打开编码若和文件写的编码不一致会出现乱码

以下两个模块是对操作系统的文件进行的操作,也就是虚拟机下的文件

os模块的目录及文件操作


os模块的路径操作


使用前需导入os模块 import os

例:遍历某目录下的所有文件和文件夹

import io import os filelist = list() #directorylist = list() #def traverse(path): #    if os.path.isfile(path): #        filelist.append(os.path.basename(path))     else: #        li=os.listdir(path)         for i in li: #            if os.path.isdir(i):                 directorylist.append(os.path.basename(i))             traverse(os.path.join(path,i)) # file = traverse('/home/pyvip/py_case') #print(':',filelist) print(':',directorylist) 
文件: ['file.py', 'fity.py', 'mypython.py', 'city.py', 'newfile.py', 'new.py', 'newfile.py'] 文件夹: ['a', 'venv']  

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!