python基础--文件操作

Posted 笨笨的妞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础--文件操作相关的知识,希望对你有一定的参考价值。

打开文件

f=open(笔记2.txt,a+,encoding=utf-8)

文件打开的方式--如果打开文件没有指定默认读模式

r读模式     文件不存在是报错,不可写
r+读写模式 文件不存在时报错
w写模式 不可读,写的内容会覆盖之前的内容
w+写读模式 写的内容会覆盖之前的内容
a 追加不可读
a+ 追加读写模式 文件不存在是新建,可读可写,追加不覆盖

文件方法

f=open(笔记2.txt,w+,encoding=utf-8)#打开文件
print(f.read())#读文件
print(f.readline())#只读取一行
print(f.readlines())#读取所有的内容,返回的是list,每行都是一个list元素
f.write(names)#write只接收str
f.writelines(names)#writelines传入的可迭代的对象,包括list,tuple,dict
f.seek(0)#seek移动指针,但对读有效,对写无效,移动后写还是写在最后
f.truncate()#清空文件内容
print(f.tell())#查看当前文件指针的位置

文件指针

#问题1
f=open(笔记2.txt,a+,encoding=utf-8)
print(f.read())
#问题2
f=open(笔记2.txt,w+,encoding=utf-8)
f.write(666+\n)
print(f.read())
#问题3
print(f.readline())#只读取一行
print(f.readlines())#读取所有的内容,返回的是list,每行都是一个一个list元素,上边read了第一行,再read指针就到了第二行,从第二行开始读

问题1:打开笔记2后read为空,因为以“a+”模式打开文件,默认指针指向最后,所以读不出内容,需要手动把指针指向文件开始

问题2:write后,read为空,因为write后指正指向文件末尾,需要重新打开文件或指定指针位置       

问题3:读取一行后,再读,发现少了第一行,是因为指针到了第二行,从第二行开始读 

高效处理文件实例 

#内存8G,文件7g,打开,把所有内容放在了内存里,一下内存就满了,电脑就卡死了
#解决,读一行处理一行,readline不可以,因为不知道多少次

fw=open(lsy.txt,encoding=utf-8)
#直接循环文件对象的话,就是循环文件里的每一行
for f in fw:
    f =f.strip()
    nu=f.split(,)
    print(nu)

 







以上是关于python基础--文件操作的主要内容,如果未能解决你的问题,请参考以下文章

python基础之文件基本操作

python如何操作excel 基础代码

python如何操作excel 基础代码

python常用代码片段总结

我在哪里更改此 Python 代码片段以将临时文件保存在 tmp 文件夹中?

[vscode]--HTML代码片段(基础版,reactvuejquery)