python(五)文件操作
1、打开文件
f = open('db','r') #只读
f = open('db','w') #只写,先清空原文件
f = open('db','x') #文件存在,报错,不存在,创建并只写
f = open('db','a') #追加
所有后边加b的,都是以字节的方式打开文件,不需要python帮助转换成字符串类型。如:ab、rb、wb、xb
f = open("db","ab")
#当以字节的方式打开时,往文件中写入的时候也要用写入字节,写字符串会报错。
f.write(bytes("坚持",encoding="utf-8"))
f.close()
"+"表示可以同时读写文件
r+, 读写【可读,可写】
w+, 写读【可读,可写】
x+ ,写读【可读,可写】
a+, 写读【可读,可写】
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
f = open("db","r+",encoding="utf-8")data = f.read()print(data)f.write("111")f.close()#文件有一个指针,f.read读文件了,指针就会到最末尾。#f.seek(1) 功能是主动把指针调到一个位置,f.seek(1),把指针跳到1的位置。写的时候会从指针#开始往后覆盖,不是追加。#python只要一读,再往里写内容时,会默认在最后追加。所以此时需要通过tell和seek来把指针移到当前位置#seek的时候永远是以字节的方式找位置。即使有中文,如果f.seek(1),就会把中文给分开。#如果打开模式无b,则f.read(1) 如果以字符串的方式打开,就会读取一个字符。#print (f.tell()) 获取当前指针的位置。(字节)#f.seek(f.tell()) 调整当前指针的位置。(字节)#f.write("888") #当前指针位置开始向后覆盖 |
2、操作文件
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
read() #无参数,读全部;有参数: b:按字节 无b:按字符tell() #获取当前指针位置write() #写数据,b:字节; 无b,字符close()fileno() #文件描述符flush() #强刷,强制保存到硬盘。在文件close之前,写入的内容此时如果其他程序去读,是看不到的。如果使用f.flush(),就会强制把内容刷进去,#即使没有close,其他程序也可以看到文件中更新的内容了。readline() #仅读取一行,不会出现文件巨大,把内存撑爆truncate() #截断,执行truncate()后,指针后边的内容会全部删除,例:f = open("db","r+",encoding="utf-8")f.seek(3)f.truncate()f.close#for循环文件对象f = open(xxx) |
3、关闭文件
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
f.close()with open('db','r+',encoding="utf-8") as f: pass#使用with open方式打开文件,当代码块执行完后,文件自动关闭。#with打开多个文件with open('db') as f1, open('db2') as f2: pass示例:读取一个文件前十行,写入到另一个文件中with open('db','r',encoding='utf-8') as f1, open('db2','w',encoding='utf-8') as f2: times = 0 for line in f1: time += 1 if times <= 10: f2.write(line) else: break |
python(五)文件操作的更多相关文章
- 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容
孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...
- python中文件操作的其他方法
前面介绍过Python中文件操作的一般方法,包括打开,写入,关闭.本文中介绍下python中关于文件操作的其他比较常用的一些方法. 首先创建一个文件poems: p=open('poems','r', ...
- Python :open文件操作,配合read()使用!
python:open/文件操作 open/文件操作f=open('/tmp/hello','w') #open(路径+文件名,读写模式) 如何打开文件 handle=open(file_name,a ...
- Python 常见文件操作的函数示例(转)
转自:http://www.cnblogs.com/txw1958/archive/2012/03/08/2385540.html # -*-coding:utf8 -*- ''''' Python常 ...
- 孤荷凌寒自学python第三十三天python的文件操作初识
孤荷凌寒自学python第三十三天python的文件操作初识 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天开始自学python的普通 文件操作部分的内容. 一.python的文件打开 ...
- python中文件操作的六种模式及对文件某一行进行修改的方法
一.python中文件操作的六种模式分为:r,w,a,r+,w+,a+ r叫做只读模式,只可以读取,不可以写入 w叫做写入模式,只可以写入,不可以读取 a叫做追加写入模式,只可以在末尾追加内容,不可以 ...
- Python常见文件操作的函数示例
# -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname() ...
- python的文件操作及简单的用例
一.python的文件操作介绍 1.文件操作函数介绍 open() 打开一个文件 语法:open(file, mode='r', buffering=-1, encoding=None, errors ...
- python基本文件操作
python文件操作 python的文件操作相对于java复杂的IO流简单了好多,只要关心文件的读和写就行了 基本的文件操作 要注意的是,当不存在某路径的文件时,w,a模式会自动新建此文件夹,当读模式 ...
随机推荐
- bug1
1从相册中获取图片,低版本可以,高版本不行.看见抛出 Bitmap too large to be uploaded into a texture 原来是高版本的android,机子好点,相机就好点, ...
- classmethod一个用处是创建可选类构造器
Definition and Introduction通常来说, descriptor 是一种绑定着特殊行为属性的对象, 在访问它时行为被descriptor协议定义的方法所重载.这些方法是__get ...
- Ubuntu下编译第一个C程序的成功运行
1. 打开控制台:使用快捷键 Ctrl + Alt + T: 2. 安装gcc为C语言编译器,g++为C++ 语言编译器 sudo apt-get install g++. 3. 编辑好hello ...
- Android课程---Activity的创建
一.为了创建一个新的Activity,你需要继承Activity类,定义UI,实现功能.新的Activity的最基本的框架代码如下所示: package com.paad.myapplication; ...
- 故障处理-ORA-00376/ORA-01110
数据库实例启动之后发现,9号数据文件发生故障,file 9 cannot be read at this time, ORACLE Instance ilndb2 (pid = 16) - Error ...
- python - ConfigParser
ConfigParse 作用是解析配置文件. 配置文件格式如下 [test1]num1: 10[test2]num1: 35 配置文件两个概念section和option, 在这个例子中第一个sect ...
- 基于 ThinkPHP 3.2.3 的页面静态化功能的实现
PHP 的页面静态化有多种实现方式,比如使用输出缓冲(output buffering),该种方式是把数据缓存在 PHP 的缓冲区(内存)中,下一次取数据时直接从缓冲区中读取数据,从而避免了脚本的编译 ...
- nba技能表
球员名 主动技能名 主动技能效果 拆解技能名 拆解技能效果 巅峰-纳什 跑投三分 全队三分出手概率提高X%,但体力消耗增加Y% 稳固进攻 全队进攻增加X%,持续整场比赛 巅峰-科比 肉搏 对方全体行动 ...
- 有趣的BAT
最近某个用到的第三方程序会产生很多日志文件在logs目录中,每天一个log文件,类似 2014-05-07001.log.日积月累这个目录文件数量非常多,手动清除还是比较麻烦的. 由于这个软件不是自己 ...
- 【转】NGUI研究院之为什么打开界面太慢(十三)
NGUI打开界面太慢了,起初一直以为是unity的问题,最近经过我的全面测试我发现这和unity没有关系.一般一个比较复杂的界面大概需要150个GameObject 或者 UISprite .我用N ...