Python之文件操作
1.打开文件
打开文件的三步:打开 --> 操作 --> 关闭
f = open(’/tmp/passwdd’,‘w’) ##打开文件
content = f.read() ##操作
f.close() ##关闭文件
#打开文件
f = open('/tmp/passwdd','w')#读操作
# content = f.read()
# print(content)
# print(f.writable())
# print(f.readable())#写操作
f.write('hello')#关闭
f.close()
2.文件的读写(文本文件)
操作符 | 功能 |
---|---|
r:默认 | 只能读不能写读取的文件不存在会报错 |
r+ | 可以执行读写操作,文件不存在会报错,默认情况下从文件指针所在位置开始写入 |
w:write only | 会清空文件之前的内容,文件不存在不会报错,会创建新的文件并写入 |
w+ | 可读可写,会清空源文件内容,文件不存在时不会报错,会建立文件并写入 |
a:write only | 不会清空文件内容,文件不存在会建立文件 |
a+ | 可读可写,不会清空原来的内容,在原文件末尾追加,文件不存在会自动建立并写入 |
例:
f = open('/mnt/passwd','r+') print(f.tell()) ###查看当前指针所在的位置
f.write('python') ##写入print(f.tell()) ###查看当前指针所在的位置
content = f.read()
print(content) ##读操作f.close()
运行:你可能会遇到下面的报错——这是因为文件的权限不够
实验:
<1>r:可读不可写
<2>r+:可读可写
<3>w:可写,会清空文件之前的内容,文件不存在不会报错,会创建新的文件并写入
当我们使用w时,文件不存在,竟然报错了,不是说文件不存在时会自行建立并写入吗?仔细查看报错我们发现,它告诉我们权限不够,好的,文件不存在那么权限也无从谈起,我们试试更改/mnt的权限
3.文件指针与读取操作
为了方便理解,我们先准备下面的文件/mnt/test(权限加满):
文件指针
seek方法,移动指针
seek的第一个参数是偏移量:>0,表示向右移动,<0表示向左移动
seek的第二个参数是:
0:移动指针到文件开头
1:不移动指针
2:移动指针到末尾
文件读取操作
- f = open(’/mnt/test’,‘rb’)
- read() ------>读取文件内容,并将内容一行输出
- readilne()------>读取文件内容,写入几行readilne(),输出几行
- readlines()------>读取文件内容,返回一个列表,列表的元素分别是文件内行的内容
(1)readlines():读取文件内容,返回一个列表,列表的元素分别为文件
行内容
(2)默认情况下读取文件的所有内容,小文件可以直接用read读取,如果
是大文件(文件大小>内存大小),不能通过read一次性读取所有内容
操作演示:
1)查看当前指针所在的位置f.tell()------->‘hello’ 共5个字节,‘a+’ 是在文件末尾操作,末尾指针118+5=123
2)区别使用read,readline,readlines
read:读取文件内容,并将内容一行输出
read:取出文件的前四个字符(相当于head -c 4)
readline:读取文件内容,写入几行readilne(),输出几行
readlines:读取文件内容,返回一个列表,列表的元素分别是文件内行的内容
去掉文件每一行的空格(strip 取出广义的空格,\n \t 都属于广义的空格)
3)文件指针seek方法的使用
4.非纯文本文件读取
文件类型 | 相关查看方法 |
---|---|
读取文本文件 | r r+ w w+ a a+ |
读取二进制文件 | rb rb+ wb wb+ ab ab+ |
示例:
我们试试读取下面的二维码
当然我们也可以复制这个二维码------->生成了111.jpg,与源文件相同
5.上下文管理器
有时候打开文件忘记关闭,可以用以下方法解决
不用写f.close()
简单的即条命令生成了和/etc/passwd相同的文件
练习题:
创建文件data.txt,文件共100000行,每行存放一个1~100之间的整数
Python之文件操作相关推荐
- python写文件追加 按行追加_你真的会用python进行文件操作吗
本篇文章主要比较系统的介绍了python中文件操作,以及在在使用中需要注意的问题. 什么是文件 文件是系统存储区域的一个命名位置,用来存储一些信息,便于后续访问.能够在非易失性存储器中实现持续性存储, ...
- Python基础-文件操作
Python基础-文件操作 1.文件的打开和关闭 # 1.打开文件 # 默认r模式 只读 文件不存在,报错 # f = open('a.txt')# w模式 写权限 # 如果文件不存在,就会创建文件 ...
- python的文件操作、模块操作、os模块、time、datatime模块以及模块的制作
Day12新手小白学python 第十二节 python的文件操作.模块操作.os模块.time.datatime模块以及模块的制作 目录 Day12新手小白学python 前言 一.文件打开关闭 二 ...
- 15 python的文件操作
一.文件打开 文件(file) 通过Python程序来对计算机中的各种文件进行增删改查的操作,文件也叫I/O(Input/Output) 文件的操作步骤 打开文件 对文件进行各种操作(读.写)然后保存 ...
- python通过内置的什么函数打开一个文件_利用python进行文件操作
这篇文章主要介绍了如何利用python进行文件操作,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下 什么是文件 文件是系统存储区域的一个命名位置,用来存储一些信息,便于后续访问.能够在非 ...
- Python之文件操作_读取_编码_os模块
目录 前言 一.文件基本操作 1.什么是文件 2.操作文件的步骤 3.文件的路径 4.open函数操作权限总结 5.文件读取 6.with-open-as 7.文件定位读取 8.文件编码 二.OS模块 ...
- python对文件操作-python中文件操作的其他方法
Python中文件操作的一般方法,包括打开,写入,关闭.本文中介绍下python中关于文件操作的其他比较常用的一些方法. 首先创建一个文件poems: p=open("poems" ...
- python:文件操作
一.文件操作 1.介绍 f:变量,f_obj,file,f_handler.....文件句柄 open window的系统功能 windows默认编码方式:gbk',linux默认编码方式是 ...
- Python基础--文件操作
文件操作通常用来存储程序结果,以便下次可以直接使用,不必要重新运行一遍.文件操作最基本的三步:1.打开文件或者新建文件 2. 读或者写 3 关闭文件流保存数据. Python 访问模式如下: 打开 ...
- python对文件的读操作有哪些方法-Python之文件操作:文件的读写
一.open函数:对文件读写之前,需要先打开文件,获取文件句柄 注意:open() file() 尽量使用open(),Python3以后不支持file()了 1.open(file_name[,ac ...
最新文章
- git源码服务器搭建,树莓派3-搭建GIT代码服务器
- 关于寻路算法的一些思考(5):处理移动中的障碍物
- 面试官给我挖坑:单台服务器并发TCP连接数到底可以有多少 ?
- WPF实现物理效果 拉一个小球
- Linq表达式和Lambda表达式用法对比
- IP: 169.254.0.0/16 地址用途
- vim 强制保存只读文件
- 3D远方纯动态白云页面源码
- keybd_event()使用方法
- 汇编学习--6.13--基础知识
- 从JavaEye社区被迫改名说起(转载他人博客)
- 微信小程序实现垂直tab标签页的切换及动态的选中下划线移动-纵向
- 如何听懂画外音-《用事实说话》:听懂“暗语”,让沟通透明化
- bgp状态idle什么原因_BGP - 2,BGP报文和BGP状态(转)
- vscode插件Todo Tree配置
- python搭建简易的https服务器
- 云计算技术与应用(高职组)赛题库 2019 年全国职业院校技能大赛题库
- 一个简单炫酷的前端小项目(html+css+js)----3D图片演示
- java设计模式--设配器adapter
- python入门基础笔记
热门文章
- R语言with函数和within函数:with函数基于表达式在dataframe上计算、within函数基于表达式在dataframe上计算并修改原始数据
- Python裁剪图片(Crop an Image)
- Error in eval(predvars, data, env) : object ‘**‘ not found
- 3D Slicer画病灶可能产生的问题+核磁共振影像数据处理-14-3d slicer画病灶“三宗罪”|常见bug(错误)汇总
- LSTM模型(基于Keras框架)预测特定城市或者区域的太阳光照量实战
- python检查目录是否存在,如果不存在则创建
- linux下文件夹函数,如何从linux上的文件夹中找到一个函数
- 音频编辑软件_Audacity2.12版
- 中国知网PCNI号码
- DrugBank数据库