当前位置:
首页 > temp > python入门教程 >
-
python基础--文件操作
# python想要将编写的应用程序,数据永久的保存下来,必须要将它保存在硬盘中, # 这就涉及到应用程序操作硬件,而我们都知道,应用程序是无法直接操作硬件的,要用到计算 # 机操作系统提供给我们的接口操作系统把复杂的硬件操作封装成简单的接口给用户/应用程序使用, # 其中文件就是操作系统提供给应用程序来操作硬盘虚拟概念,用户或应用程序通过操作文件,可以 # 将自己的数据永久保存下来。 # 操作文件的流程 # 1 打开文件,得到文件句柄并赋值给一个变量 # 2,通过句柄对文件进行操作, # 3,关闭文件 ###强调,打开文件包含两部分资源:操作系统打开的文件和应用程序的变量 # 操作一个文件完成时,要将这两个资源收回 # python有垃圾回收机制,因此变量不用我们自己删除,但文件需要我们手动关闭 f = open('a.text','w+',encoding = 'utf-8') f.read() # f.close() # 关闭文件 # 再次强调:打开文件时需要指定编码格式,如果不指定就会按照系统默认的编码格式来打开 # Windows默认为gbk,Linux默认utf-8。 # 打开文件的方式 # 变量 = open('文件路径','模式') # 模式 # r,只读模式,(默认模式,文件必须存在,不存在则抛出异常) # w,只写模式,(不可读,不存在则创建,存在则清空内容) # a,只追加模式(不可读,不存在则创建,存在则只追加内容) # 对于非文本文件,我们只能使用b模式,“b”表示以字节的方式操作。 # rb,wb,ab, # 注意:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码 # +:表示可以同时读写某文件 # r+ 可读可写 # w+ 可读可写 # a+ 可读可写 # 操作文件的方法 # f.read()读取所有的内容,光标移动到文件末尾 # f.readline()读取一行内容,光标移动到第二行首部 # f.readlines() 读取每一行内容,存放于列表中 # f.write("wang\ncong\n") 针对文本模式的写,需要自己写换行符 # f.write("wang\ncong\n".encode("utf-8"))# 针对b模式的写 # f.writelines(['333\n','444\n']) #文件模式 # f.writelines([bytes('333\n',encoding='utf-8'),'444\n'.encode('utf-8')]) #b模式 f.readable() # 文件是否可读 f.writable() # 文件是否可写 print(f.closed) # 文件是否关闭 print(f.encoding) # 文件的编码格式 f.flush() # 立即将内容保存到硬盘 print(f.name) # 文件的名字(个人认为没什么意义) # 文件的修改: # 文件的数据是存放在硬盘上的,因此只能覆盖,而没有修改这种说法, # 我们平时所说的修改,只是模拟出来的效果 # 1,将硬盘存放的文件内容全部加载到内存中,在内存中是可以进行修改的, # 修改完毕后,再由内存覆盖到硬盘,(nodepad++,word,vim) # 2,将硬盘存放的文件内容一行一行的读入内存,修改完毕就写入新文件,最后 # 用新文件覆盖源文件。 # 大文件情况下是使用第二种情况,假如一个文件有十个G,将它全部存入内存的话, # 先不说可不可以存放,内存较大的电脑就算能够存放,但也会影响性能。 # 小文件就用第一种情况,若一个文本文件只有几十K,用第二种需要很多次进行访问硬盘, # 范文硬盘也是需要时间的啊。
来源:https://www.cnblogs.com/cong12586/p/11352932.html
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数