python小总结4(文件)
一、读文件
过程:
a.打开文件:open()
b.读取文件内容:read() readline() readlines()
c.关闭文件:close()
open(path,flag,encoding,errors)
r:以只读的方式打开文件
rb:以二进制格式打开一个文件用于只读,一般用于读取二进制文件,比如:图片,音视频,压缩包等【bin,二进制文件】
r+:打开一个文件用于读写
path:需要被读取的文件的路径【相对路径或者绝对路径,建议相对路径】
flag:打开文件的方式
注意1:如果原文件中非空,则会覆盖原来的内容
a:append,表示追加,区别于w,如果文件非空,则会将新的内容追加到原来内容的后面
注意2:不管使用w还是a,如果写入的文件的不存在,则会自动创建
encoding:编码格式,常用utf-8,gbk
errors:错误处理,一般省略
注意3:
encoding什么时候可以省略:
如果文件本身格式是gbk的,可以不加encoding="gbk“
如果文件本身格式时utf-8,必须加encoding="utf-8"
如果读写文件用的是rb或者wb,则此时必须不能添加encoding,添加则报错
read():默认读取一个指定文件中的全部内容
read(size):表示每次只读取指定大小的内容
readline():每调用一次,读取一行内容,通过换行符【\n】判定,不管有多少个字符
readlines():默认读取所有的内容,返回的是一个列表,一行为列表中的一个元素
二、写文件
过程:
a.打开文件:open()
b.写入数据:write()
c.刷新:flush()
d.关闭文件:close()
f1 = open(r"file1.txt","a",encoding="gbk")
w:打开一个文件用于写入
wb:以二进制格式打开一个文件用于写入
w+:打开一个文件用于读写
注1:写入文件的时候,该文件可以不存在,会自动创建
注意2:使用w之后,原文件中的内容会被覆盖掉
注意3:使用a之后,会将新的内容追加到原内容的后面
注意4:write的时候,需要的参数是字符串
(详细的看http://www.runoob.com/python3/python3-file-methods.html)
python小总结4(文件)的更多相关文章
- python 小程序大文件的拆分合并
1. 将大文件拆分为小文件 I 通过二进制的方式将大文件读取出来,将其拆分存,以不同的文件方式存放在一个目录下面 II 提供两种操作方式交互式和命令行模式 #! usr/bin/python # -* ...
- Python小工具--删除svn文件
有的时候我们需要删除项目下的svn相关文件,但是SVN会在所有的目录下都创建隐藏文件.svn,手工一个个目录查找然后删除显然比较麻烦.所以这里提供了一个Python小工具用于批量删除svn的相关文件: ...
- python小练习1:设计这样一个函数,在桌面的文件夹上创建10个文本,以数字给它们命名。
python小练习1:设计这样一个函数,在桌面的文件夹上创建10个文本,以数字给它们命名. 使用for循环即可实现: for name in range(1,11): desktop_path='C: ...
- Python 小程序,对文件操作及其它
以下是自己写的几个对文件操作的小程序,里面涉及到文件操作,列表(集合,字典)的运用等.比方说,从文件里读取一行数据.分别存放于列表中,再对列表进行操作.如去掉里面的反复项.排序等操作. 常见对文件里行 ...
- 掌握这个Python小技巧,轻松构建cytoscape导入文件
今天小编和大家分享如何借助Python脚本轻松构建cytoscape导入文件.Cytoscape是一个非常适合展示各种相互作用关系的可视化软件. 具体来说就是可以用于蛋白互作网络的展示,miRNA与蛋 ...
- python 实时遍历日志文件
首先尝试使用 python open 遍历一个大日志文件, 使用 readlines() 还是 readline() ? 总体上 readlines() 不慢于python 一次次调用 readlin ...
- Python第五天 文件访问 for循环访问文件 while循环访问文件 字符串的startswith函数和split函数 linecache模块
Python第五天 文件访问 for循环访问文件 while循环访问文件 字符串的startswith函数和split函数 linecache模块 目录 Pycharm使用技巧( ...
- Python之IO编程——文件读写、StringIO/BytesIO、操作文件和目录、序列化
IO编程 IO在计算机中指Input/Output,也就是输入和输出.由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口.从 ...
- python爬虫之下载文件的方式总结以及程序实例
python爬虫之下载文件的方式以及下载实例 目录 第一种方法:urlretrieve方法下载 第二种方法:request download 第三种方法:视频文件.大型文件下载 实战演示 第一种方法: ...
- python小工具myqr生成动态二维码
python小工具myqr生成动态二维码 (一)安装 (二)使用 (一)安装 命令: pip install myqr 安装完成后,就可以在命令行中输入 myqr 查看下使用帮助: myqr --he ...
随机推荐
- BZOJ5279: [Usaco2018 Open]Disruption
题目大意:给你一棵n个节点的树,这n条边称为原边,另给出m条带权值的额外边,求删去每条原边后通过给出的m额外条边变回一棵树的最小价值.题解:看完题面以为是Tarjan连通性之类的题目,冷静分析后想到是 ...
- 编程类-----matlab基础语法复习(2)
2019年美赛准备:matlab基本题目运算 clear,clc %% 计算1/3 + 2/5 + ...3/7 +10/21 % i = 1; j = 3; ans = 0; % while i & ...
- javascript面向对象知识
<html> <head> <script></script> </head> <body> <!-- <scrip ...
- Python3 tkinter基础 Radiobutton 创建三个单选钮
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Java静态代码块与非静态代码块
静态代码块,格式是 static{ },随着类的加载而加载,且只执行一次. 在程序中,执行的优先级最高. 非静态代码块,格式是{ },在创建对象的时候运行(即new一个对象的时候),每创建一次对象就执 ...
- Haystack
什么是Haystack Haystack是django的开源全文搜索框架(全文检索不同于特定字段的模糊查询,使用全文检索的效率更高 ),该框架支持Solr,Elasticsearch,Whoosh, ...
- Valse2019笔记——弱监督视觉理解
程明明(南开大学):面向开放环境的自适应视觉感知 (图片来自valse2019程明明老师ppt) 面向识别与理解的神经网络共性技术 深度神经网络通用架构 -- VggNet(ICLR'15).ResN ...
- ArcGIS JS API4 With VueJS集成开发
1.USING VUEJS WITH ARCGIS API FOR JAVASCRIPT,集成VUE到ArcGIS JS开发中. 2.ARCGIS API 4 FOR JS WITH VUE-CLI ...
- [C#]将数据写入已存在的excel文件
测试如下(xls/xlsx): //将数据写入已存在Excel public static void writeExcel(string result, string filepath) { //1. ...
- MATLAB 符号变量表达式 + 方程求解
源代码见文末 部分源代码: % 符号变量 两种表达方式 a=sym('a'); class(a); syms b; b; % 符号常量 c=sym('); c; % 符号表达式 三种表达方式 f1=' ...