python文件操作with
『壹』 python文件处理相关
search第一个参数扩展名,第二个参数根路径
importos
defsearch(s,path=os.path.abspath('.')):
forzinos.listdir(path):
ifos.path.isdir(path+os.path.sep+z):
print('Currnet:',path)
path2=os.path.join(path,z)
print('future:',path2)
search(s,path2)
elifos.path.isfile(path+os.path.sep+z):
ifos.path.splitext(z)[1].upper()==s:
withopen(os.path.join(path,z),'r')asf:
withopen('新的.txt','a')asfw:
fw.write(f.read())
print(os.path.join(path,z))
search('.TXT','H:\TEMP')
『贰』 python文件写操作
这样把 教你个简单的办法
python一般不会在原文件中操作的,一般会读出来,操作,然后再写入的。代码如下:
#encoding:gbk
insert='123' #你想插入的字符串
line='' #最终文件内容
f=open("1.txt","r")
i=f.readline() #读取文件内容
f.close()
pre=i[0:3]
last=i[3:]
line=pre+insert+last
f=open("1.txt","w")
f.write(line)
f.close()
『叁』 python文件操作
>>>classFileAppend():
def__init__(self,fpath):
self.filepath=fpath
defAppend(self,txt,afterStr=','):
index=open(self.filepath).read().find(afterStr)+1
ifindex!=-1:
f=open(self.filepath,'r+')
f.seek(index,0)
f.write(txt)
f.close()
returnTrue
else:
returnFalse
defAppendCover(self,txt,afterStr=','):
text=open(self.filepath).read()
index=text.find(afterStr)+1
needLen=len(text)-index
ifindex!=-1:
f=open(self.filepath,'r+')
f.seek(index,0)
txt=txt+(''*(needLen-len(txt)))
f.write(txt)
f.close()
returnTrue
else:
returnFalse
>>>open('a.txt','w').write('hellooworld,thisisatest!')
>>>f=FileAppend('a.txt')
>>>f.AppendCover('fuck')
>>>
如果新写入的字符串不够长,则无法完全覆盖,AppendCover会自动补空白字符串,以保证视觉上完全覆盖
『肆』 Python在with open as语句之外,将读取的CSV文件内容转为列表,报错:对已关闭的文件进行操作
你用CSV模块读的时候,返回的是一个对象,这个对象关闭了就没了。
直接读取文件,非csv模块方式,返回的则是str或list
『伍』 Python3.5 文件操作问题
withopen('Python.txt','r+',encoding='utf8')asf:
print(f.read().strip())
f.write(' cd ')
f.close()
#不提畅这样边读边写,想了解下可以.
『陆』 python 文件操作,求大神
直接的文本方式读确实是把值当成字符串,可以在读入后进行转换。对于列表,也可以用对象持久化的方式进行保存成文件和读入,有相应的库支持,也比较简单。
『柒』 关于python中的文件操作问题
思路
使用json模块,储存是最方便的,下面给出具体代码示例
代码
"""
我现在有一张列表,列表里边回是若干个字典答,这个列表可以作为参数给到一个函数里,打印出一张表格。
现在我把列表写到一个txt文件中,当然保存到文件中的是字符串形式,我再重新读取这个文件中的内容时,
之前的列表只能以字符串的形式取出,请问怎么把这个字符串再转换为之前的列表来使用?
"""
importjson
defprint_list(my_list):
print(my_list)
my_list=[
{
'name':'singi'
},
{
'name':'sunjun'
}
]
file_name='my_list.json'
#写入文件
withopen(file_name,'w')asf:
json.mp(my_list,f)
#读取文件
withopen(file_name)asf:
my_list_load=json.load(f)
print_list(my_list_load)
输出
[{'name':'singi'},{'name':'sunjun'}]
『捌』 python可以同时对文件进行读写操作吗
对文件的操作,步骤为:打开一个文件-->读取/写入内容-->保存文件
文件读写的3中模式
# 1、w 写模式,它是不能读的,如果用w模式打开一个已经存在的文件,会清空以前的文件内容,重新写
# w+ 是读写内容,只要沾上w,肯定会清空原来的文件
# 2、r 读模式,只能读,不能写,而且文件必须存在
# r+ 是读写模式,只要沾上r,文件必须存在
# 3、a 追加模式,也能写,在文件的末尾添加内容
# 4、rb+、wb+、ab+,这种是二进制模式打开或者读取,一些音乐文件
test1.txt
1 如果无情的风摘走了那片树叶
2 如同摘走了我的心
3 在每一个想你的夜晚
4 请允许我将你抱紧
5 我不像一只大雁可以秋去春来
6 衔回丢失的缘分
7 所以从来不敢回忆离别
8 越是清晰 越是伤心
9 你说所有的城市没有不同
10 我宁愿相信你心中有片草原
1、循环读取文件中的每一行内容:
demo1.py1 file = open('test1.txt','r+')# 打开test1.txt 文件
2 for line in file: # 遍历file文件
3 print('line里面存放的是:',line) # 循环打印文件中每一行内容
4 print(type(line)) # <class 'str'> 类型是字符串
5 file.close()# 关闭文件
用with的方式打开文件,不用担心使用完文件后忘记关闭,它会自动将文件关闭1 with open('test1.txt','r+') as file:
2 for line in file:
3 print('line里面存放的是:',line) # 循环打印文件中每一行内容
4 print(type(line)) # <class 'str'> 类型是字符串
3、向文件中写入内容
1 with open('users','a+') as fw: # 打开文件
2 fw.write('写入文件内容')
4、用函数的方式读取文件
1 def read_file(filename):
2 '''
3 用来读取文件内容
4 :param filename: 文件名
5 '''
6 with open(filename,'a+') as fr:
7 fr.seek(0) # 移动文件指针
8 content = fr.read() # content 类型是字符串
9 print('content:',content)
10 read_file('users') # 调用函数
5、用函数的方式写文件
1 def write_file(filename,content):
2 '''
3 用来读取文件内容的
4 :param filename: 文件名
5 '''
6 with open(filename,'a+') as fw:
7 fw.seek(0) # 移动文件指针
8 fw.truncate() # 清空文件内容
9 fw.write(str(content))
10 write_file('a','hello world') # 调用函数
『玖』 Python如何用文件操作把执行结果保存到文件里
最简单的写法是用with,比如:
list1=['aaa','bbb','ccc']
with open('filename.txt','w')as fl:
for line in list1:
fl.write(line + '\n')
上面的运行结果会生成那个名字的文本,没有则会创建。我这里只是展示一下最简单的文本操作方法。请自行网络自己认真了解一下。小甲鱼视频里面有相关教程和许多关于这个的练习题,你也可网络看看。
『拾』 python文件操作问题
由于你写的是相对路径,运行时要注意当前工作目录是什么,在CMD中,就是前面提版示符的权路径。CMD的默认工作目录是当前用户目录,即C:\Users\用户名,此时运行你的python程序,那么open("yesterday.txt")将会试图在这个目录下寻找yesterday.txt文件,找不到则会报错。