Python_文本的读写操作
【需求】
1. 获取文本内容,提取内容中的可用信息,对信息进行清洗等一系列处理
2. 算法输出一些内容,保存到文本文件中,便于使用
【函数】
在Python中open()函数是用来打开文件的,包括文本文件
# 在Python3.x中 open函数的原型 默认mode = 'r'
f = open(file, mode='r', buffering=None, encoding=None, errors=None, newline=None, closefd=True)
file: 文件名 (eg: 'example.txt') 前提是改文件在当前路径下,如果不在需要增加路径(eg: E:\\'example.txt')
mode: 文件打开的方式
#目前最常使用的是 'r' :只读(需求1中可用)
# 另外一个是 'a' : 追加写入(不会清空文本中的原有数据)
# 'w':写入,但会清空原有数据,重新创建文本,覆盖之前
#其他还有很多,实际使用用不到,值得注意的是 ‘b’ 二进制读取 和 写入 即‘rb’'wb'等 如图像或音频等
buffering: 缓冲 默认为0 无缓冲 1是按行缓冲 >1是按设定字节缓冲
初步理解:在文本写入的时候,是先写到内存中在写入磁盘的,也只有写入磁盘中的文本我们才能打开看到。
无缓冲 -> 写入的文本直接进入磁盘
有缓冲 -> 内容先暂存在内存中,只有f.close() 关闭文件,才将内容刷新到磁盘中保存起来
## 暂时用不到该参数
encoding: 文件编码方式 常用‘utf-8’ 【注】用什么方式写入就要以什么方式打开 否则就会出现乱码
可以用Notepad++ 打开文本,上面可以看到文件的编码方式,同时可以更改编码方式

【示例】
# 文本写入
f = open("E:\Learning_2019\write_somthing.txt",mode= 'w',encoding='utf-8')
f.write("1. keep working\n 2. do yourslef\n 3. to be NO.1\n 4. what are you 弄啥嘞 ")
f.close()
# 文本读取
f = open("E:\Learning_2019\write_somthing.txt",mode= 'r',encoding='utf-8')
print(f.read())
"""
1. keep working
2. do yourslef
3. to be NO.1
4. what are you 弄啥嘞
"""
文本读取:
f.read() 读取文本中的所有内容
f.readline() 读取文本中的一行,从第一行开始
f.readlines() 读取文本中的所有行 输出列表
2019.09.24更新
Python读取json文件中的内容
逐行获取json内容得到的是str,需要json.loads()转换成字典,之后在根据字典['keys'] 提取value
import json
with open(f'123.json','r') as f:
while(1):
# 读取每行内容 类型str
line = f.readline()
total_num += 1
if not line:
break
# 将str转换成dict
dict_line = json.loads(line)
Python_文本的读写操作的更多相关文章
- python中文本的读写操作
文本的操作 函数的排序操作: def func(i): return i[2] list=[('曹操',101,'c'),('吕布',100,'d'),('刘备',200,'l'),('大乔',50, ...
- C++对txt文本进行读写操作
输入输出,是每个程序员的基本功,尤其是对文本的输入和输出.最近,自己在这方面做了一些总结,不是很全面,希望在以后学习和工作的过程中慢慢补充,积累点点滴滴.P.S. 今天天气不错,雾霾散了,天空晴朗,惠 ...
- FileStream对文本进行读写操作
class FileHelper { /// <summary> /// 检验文件路径是否合法 /// </summary> /// <param name=" ...
- 【PyQt5-Qt Designer】文本框读写操作
主要内容: 1.读.写 输入控件(Input Widgets)中的内容(str) 2.保存数据到txt文件 3.从txt文件中读内容,与输入控件中内容比较 将上述各种输入控件(Input Widget ...
- python_线程读写操作<一>
线程读写操作 import threading,random,queue q = queue.Queue() alist=[] def shengchan(): for i in range(10): ...
- JAVASE02-Unit08: 文本数据IO操作 、 异常处理
Unit08: 文本数据IO操作 . 异常处理 * java.io.ObjectOutputStream * 对象输出流,作用是进行对象序列化 package day08; import java.i ...
- JAVASE02-Unit07: 基本IO操作 、 文本数据IO操作
基本IO操作 . 文本数据IO操作 java标准IO(input/output)操作 package day07; import java.io.FileOutputStream; import ja ...
- 使用Python对Excel表格进行简单的读写操作(xlrd/xlwt)
算是一个小技巧吧,只是进行一些简单的读写操作.让人不爽的是xlrd和xlwt是相对独立的,两个模块的对象不能通用,读写无法连贯操作,只能单独读.单独写,尚不知道如何解决. #①xlrd(读) #cod ...
- io流对文件读写操作
public static void main(String[] args) throws IOException { BufferedReader reader = new BufferedRead ...
随机推荐
- GC垃圾收集算法
JVM中的垃圾收集算法实现涉及大量的程序细节,而且各个平台的虚拟机操作内存的方法又各不相同,这里介绍几种垃圾收集算法的思想. 1.标记-清除算法 这是最基础的垃圾收集算法,分为“标记”和“清除”两个阶 ...
- Slickflow.NET 开源工作流引擎快速入门之三: 简单或分支流程代码编写示例
前言:对于急切想了解引擎功能的开发人员,在下载版本后,就想尝试编写代码,完成一个流程的开发和测试.本文试图从请假流程,或分支模式来快速了解引擎代码的编写. 1. 创建或分支流程图形 或分支流程是常见的 ...
- 使用HTML制作网页
网页基本信息[编码格式] gb2312:简体中文,一般用于包含中文和英文的页面 ISO-885901:纯英文,一般用于只包含英文的页面 big5:繁体中文,一般用户带有繁体字的页面 utf-8:国际通 ...
- Webdriver元素定位的方法
webdriver提供了8种元素定位方法: 1.id 2.name 3.tag name 4.class name 5.link text 6.partial link text 7.xpath 8. ...
- Cookie的有效路径
程序实现: protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletE ...
- CSS——边框设置
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Swoole入门到实战 打造高性能 赛事直播平台(完整版)
Thinkphp+Swoole入门到实战打造高性能赛事直播平台 第1章 课程介绍 欢迎大家来到swoole的课程!本章主要是介绍了swoole的一些特性,以及使用场景,并且分享了swoole在其他公司 ...
- Python Api接口自动化测试框架 excel篇
工作原理: 测试用例在excel上编辑,使用第三方库xlrd,读取表格sheet和内容,sheetName对应模块名,Jenkins集成服务发现服务moduleName查找对应表单,运用第三方库req ...
- Chrome 查看产品原型图
1.找到产品发的原型图 2.找到文件resources\chrome\axure-chrome-extension,修改文件的后缀为rar,然后解压 3.找到chrome的extensions,找到开 ...
- UVM——寄存器模型相关的一些函数
0. 引言 在UVM支持的寄存器操作中,有get.update.mirror.write等等一些方法,在这里整理一下他们的用法. 寄存器模型中的寄存器值应该与DUT保持同步,但是由于DUT的值是实时更 ...