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 ...
随机推荐
- Java中BufferedReader、InputStreamReader、Scanner和System.in区别
Java中获取键盘输入值的方法以前写算法都是C/C++写的,现在用Java写,虽然算法是独立于语言的,但是Java从键盘获取输入确实有些不一样.在C/C++中我们可以用scanf和cin来获取用户从键 ...
- Git 版本还原命令
转载:https://blog.csdn.net/yxlshk/article/details/79944535 1.需求场景: 在利用github实现多人协作开发项目的过程中,有时会出现错误提交的情 ...
- (转)A Recipe for Training Neural Networks
A Recipe for Training Neural Networks Andrej Karpathy blog 2019-04-27 09:37:05 This blog is copied ...
- 【转载】RESTful 架构风格概述
本文转载自https://blog.igevin.info/posts/restful-architecture-in-general/ 在移动互联网的大潮下,随着docker等技术的兴起,『微服务』 ...
- HttpClient throws TaskCanceledException on timeout
error msg: HttpClient throws TaskCanceledException on timeout HttpClient is throwing a TaskCanceledE ...
- gradle project sync failed.please fix your project and try again-Android Studio3.1.2运行出错
原因: 修改了工程中MainActivity.java和app文件夹下的代码后运行不了. 解决办法: 关闭Android Studio,然后再重新启动,它会再次构建gradle.
- EF的优缺点
优点: 1.简洁的Linq to Sql语句大大提高了开发人员的效率,不要再写复杂的sql语句: 2.不再需要再管应用程序如何去连接数据库: 3.EF可以用作用于数据服务和OData Service的 ...
- 剑指offer 10:矩形覆盖
题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? public class Solution { public ...
- Unity3d外包公司|UE4外包公司:谷歌首款Daydream VR设备上手
这款售价仅为79美元(约合人民币525元)的产品内含“够用”的手柄和一台头戴设备,只要你有一台支持月日,10月5日,dream平台的手机(未来将成为安卓平台的标配),就能体验VR的乐趣. 即使该产品最 ...
- 页面对象(Page Object)模式
内容转载自 https://www.cnblogs.com/yytesting/p/6973474.html 页面对象(Page Object)模式是目前自动化测试领域普遍使用的设计模式之一,此模式可 ...