web.py获取上传文件名的正确方法

yipeiwu_com6年前Python基础

直接切入主题,从HTML页面上传文件,Python接收处理。但其中发现有些小问题,把它写出来,算是积累吧!

HTML页面代码:

复制代码 代码如下:

<form action="/admin/addgoodsaction/" method="post" enctype="multipart/form-data">
    <input type="file" name="image" />
</form>

Python处理部分代码:
复制代码 代码如下:

i=web.input()
return i.image.filename

执行结果切提示:
复制代码 代码如下:

<type 'exceptions.AttributeError'> at /admin/addgoodsaction/
'str' object has no attribute 'filename'

提示这个对象没有找到filename这个属性,一开始以为是接收对象错了,于是我直接
复制代码 代码如下:

i=web.input()
return i.image

结果能正常打印上传的图片。证明接收对象没有错误,可为什么接收的对象正确,却提示没有filename这个属性呢?
我改写了一下代码:
复制代码 代码如下:

i=web.input(image={})
return i.image.filename

上传一个hello.jpg的图片,结果打印hello.jpg,问题解决。从以上代码看如果不初始化image对象就找不到filename这个属性,而初始化以后才能获取filename属性从而获取上传的文件名。

相关文章

Python实现破解猜数游戏算法示例

本文实例讲述了Python实现破解猜数游戏算法。分享给大家供大家参考,具体如下: QQ群里的聊天机器人会发起猜数小游戏. 玩法如下: 1. 用户发 #猜数  &nbs...

Python 获取主机ip与hostname的方法

->基础环境 Linux:ubuntu 16.04 Python ; 2.7 ->修改hostname 1:$sudo hostname 2tong-slavetwo 2:$...

python写一个md5解密器示例

python写一个md5解密器示例

前言: md5解密,百度了一下发现教程不是很多也不详细。 这个图都没一张。。。 0x01 windows环境,kali也可以啊 burpsuite requests模块 bs4模块 0...

pytorch中的transforms模块实例详解

pytorch中的transforms模块中包含了很多种对图像数据进行变换的函数,这些都是在我们进行图像数据读入步骤中必不可少的,下面我们讲解几种最常用的函数,详细的内容还请参考pyto...

Python中py文件引用另一个py文件变量的方法

最近自己初学Python,在编程是遇到一个问题就是,怎样在一个py文件中使用另一个py文件中变量,问题如下: demo1代码 import requests r = requests...