flask 上传文件,flask 上传
指尖生活
使用
Request.files.get(pic )接收上传的文件并返回当前上传文件的file对象。
# -*-编码:utf-8 -*-
从烧瓶导入烧瓶,请求
app=Flask(__name__)
@app.route(/upload ,methods=[POST])
定义上传():
接收前端发送的文档。
file _ obj=request . files . get( pic )
#判断是否上传
如果file_obj为None:
返回“无上传操作”
#将文件保存在本地
# 1.创建文件
f=打开(。/demo.jpg , wb )
# 2.读取上传文件的二进制内容。
data=file_obj.read()
# 3.将文件的二进制内容写入新文件。
f .写(数据)
f.close()
返回“文件上传成功”
if __name__==__main__ :
App.run(debug=True)流程:
前端提交的文件名收到后会返回给file对象。确定文件对象是否为空,在本地保存文件,并关闭资源句柄。
#将文件保存在本地
# 1.创建文件
f=打开(。/demo.jpg , wb )
# 2.读取上传文件的二进制内容。
data=file_obj.read()
# 3.将文件的二进制内容写入新文件。
f .写(数据)
用于烧瓶中
file_obj.save(。/demo . jpg’)
而不是完成以上三句话。
With方法常规语法
带开(。/1.txt , wb )作为f:
文件操作代码在类中有两个神奇的方法,专门用于操作。
不言而喻,分为两部分
__enter__()是在使用输入时调用的。
__exit__()调用with末尾的主代码区,它是在类的__enter__ magic方法中编写的。
一个是结束代码,接收错误区,写在类的__exit__ magic方法中。
类Foo(对象):
def __enter__(自身):
输入时立即调用此代码。此方法代码
打印(“回电”)
def __exit__(self,exc_type,exc_val,exc_tb):
以结尾时呼叫
打印(“结束回电”)
打印( exc_type : %s % exc_type )
print(exc_val : %s % exc_val
打印( exc_tb : %s % exc_tb )
用Foo()作为f:
#在输入with后立即调用__enter__中的方法。
打印(“你好python”)
如果with中的语句报告错误,将在__exit__和输出中获取错误详细信息。
请联系作者,否则将追究法律责任。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。