python笔记03-----文件操作
文件操作
创建一个文件名字为filename
内容是
BJ
SH
GD
TW
打印文件编码
f = open("filename",'r',encoding="utf-8")
print(f.encoding)
utf-8
打印在内存的编号
print(f.fileno())
3
1.文件读操作
1.1 open()方法,模式默认读
f = open("filename",encoding="utf-8")
data = f.read()
print(data)
BJ
SH
GD
TW
1.2 读前几行
f = open("filename",encoding="utf-8")
for i in range(2):
print(f.readline().strip())
BJ
SH
1.3 一行行读完
f = open("filename",encoding="utf-8")
for i in f:
print(i.strip())
BJ
SH
GD
TW
1.4 高效读到第x行
count = 0
f = open("filename",encoding="utf-8")
for i in f:
if count == 3:
print('----------------')
count += 1
print(i.strip())
count += 1
BJ
SH
GD
----------------
TW
ssssss
2.文件写操作
2.1 w写模式,如果没有此文件就创建
f = open("filename2",'w',encoding="utf-8")
f.write("wwwww")
f.close()
f1 = open("filename2",encoding="utf-8")
data = f1.read()
print(data)
f.close()
wwwww
2.2 a追加模式
在文件尾部追加
f = open("filename",'a',encoding="utf-8")
f.write("\nssssss")
f.close()
BJ
SH
GD
TW
ssssss
2.3读+追加模式
f = open("filename","r+",encoding="utf-8")
f.write("\n------haha------------")
for i in f:
print(i.strip())
2.4 文件修改
f = open("filename","r",encoding="utf-8")
f1 = open("filename1","w",encoding="utf-8")
for line in f:
if "h" in line:
line = line.replace('h','g')
f1.write(line)
f.close()
f1.close()
3.指针操作
f = open("filename",encoding="utf-8")
print(f.tell()) #查看当前指针位置
print(f.readline())
print(f.tell())
f.seek(0) #指针回到0
print(f.tell())
print(f.readline())
print(f.tell())
0
BJ
4
0
BJ
4
4.判断文件是否可读可移可写
f = open("filename",'r',encoding="utf-8")
print(f.readable())
print(f.seekable())
print(f.writable())
True
True
False
5.flush方法和buffer方法
f = open("filename",'r',encoding="utf-8")
print(f.flush())#从内存写入磁盘
print(f.buffer)
None
<_io.BufferedReader name='filename'>
6.实现进度条
import sys,time
for i in range(10):
sys.stdout.write("#")
sys.stdout.flush()
time.sleep(0.5)
##########
7.截断
f = open("filename","a",encoding="utf-8")
f.seek(0) #指定指针到0的位置
f.write("123456")
f.truncate(2) #截断2字符
filename文件中 只保留2个字符
BJ
python笔记03-----文件操作的更多相关文章
- python笔记3 - 文件操作
file 对象使用 open 函数来创建,下面说一下对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件,读取/写入文件内容 3.关闭文件. 注意: 文件打 ...
- python笔记:文件操作
1.逐行打印整个文件 # -*- coding: utf-8 -*- f = open("test",'r',encoding="utf-8") count = ...
- python os&shutil 文件操作
python os&shutil 文件操作 # os 模块 os.sep 可以取代操作系统特定的路径分隔符.windows下为 '\\' os.name 字符串指示你正在使用的平台.比如对于W ...
- python 历险记(三)— python 的常用文件操作
目录 前言 文件 什么是文件? 如何在 python 中打开文件? python 文件对象有哪些属性? 如何读文件? read() readline() 如何写文件? 如何操作文件和目录? 强大的 o ...
- Python的高级文件操作(shutil模块)
Python的高级文件操作(shutil模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 如果让我们用python的文件处理来进行文件拷贝,想必很多小伙伴的思路是:使用打开2个 ...
- Python入门篇-文件操作
Python入门篇-文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.文件IO常用操作 open:打开 read:读取 write:写入 close:关闭 readlin ...
- python基础篇(文件操作)
Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...
- Python之常用文件操作
Python之常用文件操作
- Python之路第一课Day3--随堂笔记(文件操作)
一.集合的介绍 1.集合操作 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集.差集.并集等关系 常用操作 s = se ...
- python学习笔记4(文件操作)
文件操作: 1.f=open(”caidan”,”w”,encoding=”utf8”) 直接打开一个文件,如果文件不存在则创建文件 f.close() 2.with open (”caid ...
随机推荐
- [javascript]两段 javaScript 代码的逻辑比较
两段 javaScript 代码的逻辑比较: #1 if(tagName.length < 3){ $(this).parent().addClass('active'); tagN ...
- eclipse中配置server中选择tomcat8无法进行下一步处理
在创建server的时候,选择tomcat8后,server name为空,并且无法手动输入,同时无法进行下一步操作. 解决方案如下: 1.退出eclipse. 2.找到eclipse[工作空间][当 ...
- Linux 用户和文件
Linux系统中用户的扩展研究 进程 用户和文件 Linux中的用户及用户组 linux中只有两个等级:root和非root, 一个用户至少属于一个用户组 一个用户可以属于多个用户组 用户本身的区别主 ...
- 切图,css注意事项
1.文字尽量不要独立放在div中,一般放在p,span中(显得不专业) 2.div给了width就不要用padding-left,padding-right:给了height就不给padding-to ...
- Hibernate 之HQL数据查询
1. HQL简介 HQL是面向对象的查询语言,与SQL查询语言相比,虽然在语法上类似,都是运行时进行解析,但HQL并不像SQL那样操作的是数据表,列等数据库对象,HQL所操作的对象是类,对象,属性等. ...
- sql查询优化--数字转换字符串字段
SELECT top 1 pt.* FROM t1where id='20180731223014' SELECT top 1 pt.* FROM t1where id='0180731223014 ...
- .net core 2.1-----Sql Server数据库初体验
刚开始接触asp.net core,在学习的过程中遇到了一些小问题,在这里记录一下! 在我们项目的开发过程中,肯定会和数据库打交道,所以我尝试了一下用asp.net core链接数据库,并读取表中的数 ...
- lamp-linux2
LAMP编程之Linux(2) 一.进阶指令 1.du指令 作用:du表示directory used,显示出目录所占的磁盘空间大小的情况. 语法:#du -sh 目录路径 选项说明: -s:表示su ...
- Nodejs Express模块server.address().address为::
来自 http://blog.csdn.net/medivhq/article/details/74171939 我按照菜鸟教程上的写法为:(http://www.runoob.com/nodejs/ ...
- springBoot整合MyBatise及简单应用
springBoot整合MyBatise及简单应用 我采用的是 工具IDEA 框架是springBoot+maven+Mybatise 第一步: pom.xml 引入相关jar包 <?xml v ...