python之文件读写(1)
1. 从文件读取数据
关于对文件的操作,使用open(filename, mode),打开文件。与之对应的,close()用来关闭文件。对文件操作完毕切记要关闭。
open函数参数:
mode 参数有:
模式 | 描述 |
---|---|
t | 文本模式 (默认)。 |
x | 写模式,新建一个文件,如果该文件已存在则会报错。 |
b | 二进制模式。 |
+ | 打开一个文件进行更新(可读可写)。 |
U | 通用换行模式(不推荐)。 |
r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。 |
r+ | 打开一个文件用于读写。文件指针将会放在文件的开头。 |
rb+ | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。 |
w | 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
wb | 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。 |
w+ | 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
wb+ | 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。 |
a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
ab | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
a+ | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
ab+ | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。 |
其中重点要理解r,r+,w,w+,a,a+.
博主理解是:
r(read):可读
w(write): 可写
a(append):追加
+:权限升级
1.1 读取整个文件
读取文件我们使用的函数是read()。read函数可以传递参数,下一小节会用到。
file = open("test_data.txt", "r", encoding="UTF-8") # open的参数有兴趣的小伙伴可以自己查一下
res = file.read()
print(res)
file.close()
1.2 读取指定字节的内容
读取指定字节,首先我们要知道什么是字节:字节(Byte /bait/ n. [C])是计算机信息技术用于计量存储容量的一种计量单位,通常情况下一字节等于八位,也表示一些计算机编程语言中的数据类型和语言字符。
Ascll码:一个汉字=2个英文字母=2字节。
如果我们要读出文件中前13个字节,只需要在read中传入参数read(13)。试一下
file = open("test_data.txt", "r",)
res = file.read(13)
print(res)
file.close()
当在read中输入负数时,是读取全部内容。
file = open("test_data.txt", "r",)
res = file.read(-1)
print(res)
file.close()
1.3 读取包含中文内容的文本
utf-8下回车也占1字节,其他也是一字节。
file = open("test_data.txt", "r",encoding="UTF-8")
res = file.read(6)
print(res)
file.close()
结果:
1.4 按行读取内容
1.4.1 读一行
按行读取文件内容使用的是readline方法。实际操作一下哎。
readline方法也可以传入参数。我们分别看一下不传参与传参的区别:
不传参:
传参:
传入的参数其实是限制作用,可以限制读取该行的前几个字节。
总结:这是按行读取的,读完第一行,会根据光标所在的位置,如果该行未读取完,再执行则继续读取该行。如果完整读取完一行,再执行则读取下一行。建议读者配合记事本模拟方便理解。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time :2018/11/28 16:11
# @Author :Yosef
# @Email :wurz529@foxmail.com
# @File: :class26.py
# @Software :PyCharm Community Edition
file = open("test_data.txt", "r",encoding="UTF-8")
res_1 = file.readline(3)
res_2 = file.readline()
res_3 = file.readline()
res_4 = file.readline()
print(res_1)
print(res_2)
print(res_3)
print(res_4)
file.close()
结果:
有一点需要提醒,这种读行也读取了换行,不想换行的话,可以使用strip(“\n”)来去掉。应该还记得这个函数吧,忘记的话自行百度或者看我字符串那边的博客。
#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Time :2018/11/28 16:11
# @Author :Yosef
# @Email :wurz529@foxmail.com
# @File: :class26.py
# @Software :PyCharm Community Edition
file = open("test_data.txt", "r",encoding="UTF-8")
res_1 = file.readline(3)
res_2 = file.readline().strip("\n")
res_3 = file.readline().strip("\n")
res_4 = file.readline().strip("\n")
print(res_1)
print(res_2)
print(res_3)
print(res_4)
file.close()
1.4.2 读多行
读多行用的是readlines方法。看一下下图:
参数可以传入动态参数以及关键字动态参数。
先不考虑传参的问题,直接运行结果如下:
我们发现结果是一个列表,而且换行都用“\n”来表示了。
python之文件读写(1)的更多相关文章
- 【转】Python之文件读写
[转]Python之文件读写 本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 ...
- 【Python】文件读写操作
Python的文件读写有点类似php的文件读写.php的文件读写已经在<[php]让记事本成为你调控变量的控制台>(点击打开链接)说过了,以下用一个小样例说明Python的文件读写. 在F ...
- (转)Python之文件读写
Python之文件读写 原文:https://www.cnblogs.com/huilixieqi/p/6494891.html 本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 ...
- python 基础-文件读写'r' 和 'rb'区别
原文链接: python基础-文件读写'r' 和 'rb'区别 一.Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 1.文件使用方式标识 'r ...
- Python之文件读写
本节内容: I/O操作概述 文件读写实现原理与操作步骤 文件打开模式 Python文件操作步骤示例 Python文件读取相关方法 文件读写与字符编码 一.I/O操作概述 I/O在计算机中是指Input ...
- python之文件读写详解
打开文件 函数open() 参数说明: file:文件路径 mode: 文件的读写方式,默认'r',只读方式: buffering:设置缓冲策略,0用于二进制文件,1为行缓冲,用于文本模式:默认二进制 ...
- python中文件读写
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...
- python的文件读写笔记
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...
- python里文件读写操作
文件读写操作一种基本操作,但是里面也存在很多需要注意的问题,例如字符编码.内存缓冲.指针位置等等.如果忽视这些问题就会引起很多不必要的麻烦.简单来说,文件的读写分为几个过程: 打开文件,并定义操作文件 ...
- Python的文件读写
目录 读文件 操作文件 读取内容 面试题的例子 写文件 操作模式 指针操作 字符编码 读文件 操作文件 打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): 文件使用完毕后必 ...
随机推荐
- 关于windows的锁定状态
本来以为要在项目里用上的,现在看来不需要了,把相关的函数列一下吧,以后如果用到了,再写详细点 锁定计算机 : LockWorkStation 注册Windows状态变化的监听函数: BOOL WTSR ...
- c++ 桥接模式(bridge)
桥接模式的目的是分离抽象实现部分,把数据和实现分开,降低耦合.桥接模式和适配器模式不同之处是,桥接模式一般会在软件设计初考虑使用,适配器模式在软件设计之后为了实现接口兼容时使用. 下面是系统和电脑之间 ...
- TOP命令 详解CPU 查看多个核心的利用率按1
top命令是linux下常用的工具,可以查看各个进程的CPU使用情况.先看一个实例: 这是Ramnode双核VPS的top显示结果: 左上角可以看到CPU的使用率是11.3%,但是看下面的进程,plu ...
- sencha表单入门例子
来自于<sencha touch 权威指南> ------------------------------- 一.网站结构 二.index.html代码 <!DOCTYPE HTML ...
- jquery中children()
- 2.2开源的魅力:编译opencv源代码
1.下载安装CMake 要在Windows平台下生成opencv的解决方案,需要一个名为CMake的开源软件.CMake的全称是crossplatform make.它是一个跨平台的安装(编译)工具, ...
- Mac10.9下的libtiff编译
libtiff介绍 libtiff下载 libtiff编译 libtiff介绍? 参考:http://en.wikipedia.org/wiki/Tiff libtiff下载 直接到官网下载:http ...
- HttpUploader7-授权码配置
1.1. 七牛云存储 配置方式: 1.配置授权码 2.配置云存储 3.配置空间名称 4.配置上传地址 1.2. 阿里云存储 配置方式: 1.填写授权码 2.配置云存储为阿里云 ...
- javaweb dom4j解析xml文档
1.什么是dom4j dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的.dom4j是一个十分优秀的JavaXML API,具有性能优异.功能强大和极其易使用的特点,它 ...
- APP压力稳定性测试
转自:https://www.cnblogs.com/nuonuozhou/p/8643735.html 1.android系统自带monkey程序,模拟用户触摸屏幕,滑动track ball,按键等 ...