ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python文件操作

2019-02-18 20:42:33  阅读:319  来源: 互联网

标签:文件 读取 libai python read print 操作 readline open


文件操作模式

 

读取文件

文件内容

床前明月光,疑是地上霜
举头望明月,低头思故乡

1.read()

读取文件所有内容

f = open('libai',encoding = 'utf-8')
print(f.read())

床前明月光,疑是地上霜
举头望明月,低头思故乡

2.readline()

只读取一行内容

f = open('libai',encoding = 'utf-8')

print(f.readline())

床前明月光,疑是地上霜

3.readlines()

把文章以换行符分割i,并生成list格式(数据量大的时候,不建议使用)

f = open('libai',encoding = 'utf-8')

print(f.readlines())

['床前明月光,疑是地上霜\n', '举头望明月,低头思故乡']

4.seek和tell光标

f = open('libai',encoding='utf-8')
data = f.read()     #默认光标在起始的位置,read()读取完后,光标停留到文件末尾
data2 = f.read()    #data2读取的内容为空
print(data)
print(data2)
f.close()          #关闭文件

 

文件内容

abcdefg
hyjklmn
opqrstu
vwxyz
f = open('libai',encoding='utf-8')
#tell获取当前的光标
print(f.tell())    #0

print(f.readline().strip())
print(f.readline().strip())
print(f.tell())
f.seek(0)     #移动光标到文件起始的地方
print(f.readline().strip())


结果:
0
abcdefg
hyjklmn
18
abcdefg

 

5.flush刷新

模拟进度条

import sys,time

for i in range(40):
    sys.stdout.write('#')
    sys.stdout.flush()     #flush强制舒心缓存到内存的数据写入硬盘
    time.sleep(0.1)

 

6.with语句

with代码执行完后,文件会自动关闭

with open('libai') as f:
    print(f.read())

 

7.二进制读取"rb"

#rb  二进制模式读取
f = open('libai','rb')  #主要用于网络传输
print(f.readline())


b'\xe5\xba\x8a\xe5\x89\x8d\xe6\x98\x8e\xe6\x9c\x88\xe5\x85\x89\xef\xbc\x8c\xe7\x96\x91\xe6\x98\xaf\xe5\x9c\xb0\xe4\xb8\x8a\xe9\x9c\x9c\r\n'

8.二进制写"wb"

f = open('libai','wb')
f.write('中文'.encode()) 

 

编码与转换

方法

 

标签:文件,读取,libai,python,read,print,操作,readline,open
来源: https://www.cnblogs.com/xuyxbiubiu/p/10397734.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有