这是我现在正在做的事情:
mysock = urllib.urlopen('http://localhost/image.jpg')
fileToSave = mysock.read()
oFile = open(r"C:\image.jpg",'wb')
oFile.write(fileToSave)
oFile.close
f=file('image.jpg','rb')
ftp.storbinary('STOR '+os.path.basename('image.jpg'),f)
os.remove('image.jpg')
将文件写入磁盘,然后立即删除它们似乎是应该避免的系统额外工作。我可以使用Python将内存中的对象上传到FTP吗?
由于使用鸭式输入,因此文件对象(f
在您的代码中)仅需要支持.read(blocksize)
与一起使用的调用storbinary
。当遇到这样的问题时,我转到源代码,在本例中为lib
/ python2.6 / ftplib.py:
def storbinary(self, cmd, fp, blocksize=8192, callback=None):
"""Store a file in binary mode. A new port is created for you.
Args:
cmd: A STOR command.
fp: A file-like object with a read(num_bytes) method.
blocksize: The maximum data size to read from fp and send over
the connection at once. [default: 8192]
callback: An optional single parameter callable that is called on
on each block of data after it is sent. [default: None]
Returns:
The response code.
"""
self.voidcmd('TYPE I')
conn = self.transfercmd(cmd)
while 1:
buf = fp.read(blocksize)
if not buf: break
conn.sendall(buf)
if callback: callback(buf)
conn.close()
return self.voidresp()
如前所述,它只需要一个类似文件的对象,实际上它甚至不需要,特别是类似于文件的对象read(n)
。StringIO提供了这种“内存文件”服务。
问题内容: 这是我的工作脚本,它生成图,将其本地保存到磁盘,上载到S3并删除文件: 我想要的是跳过磁盘写入操作,直接从内存中上传绘图。 任何建议如何实现这一目标? 问题答案: 放在一起: 感谢@ padraic-cunningham和@ guyb7的提示!
问题内容: 我有一个Go对象,我想保持其地址在内存中不变。在C#中,可以将对象的位置固定在内存中。Go中有办法做到这一点吗? 问题答案: 保留引用的对象不会移动。没有句柄或间接寻址,并且您获得的地址是永久性的。 从文档中: 请注意,与C语言不同,完全可以返回局部变量的地址。函数返回后,与变量关联的存储仍然存在 设置变量时,可以使用运算符读取此地址,然后可以传递它。
下面您将找到应该调用的函数,而不是: 我可以为这些自定义类型创建工厂,并根据值生成类型,而不是传递给的类型,或者传递一个字符串化的对象(对象/数组、更多的对象/数组)。但我想知道(尤其是后者,它让我发冷)是否真的有必要。文档只提到这个函数,作为向区块链提交事务的一种方式。 我应该用我的工厂解决方案吗?是否有另一个函数,我可以使用它来提交使用类型的事务?或者这不是我应该构造我的链码的方式,我应该考虑
通常,我会这样做: 然而,有没有一种简单的方法可以做到这一点?基本上,类似于:<代码>(窗口)父级。dispose() 还是我总是需要创建一个窗口来存储我的演员?
问题内容: 我想控制全局变量(或全局范围的变量),使其在程序初始化代码中仅设置一次,然后将其锁定。 我对全局变量使用UPPER_CASE_VARIABLES,但是我想有一种确定的方法,无论如何不要更改变量。 python是否提供(或类似)功能? 您如何控制全局范围的变量? 问题答案: Activestate有一个由古老的Alex Martelli 撰写的题为“ Constants in Pytho
本文向大家介绍Python ftp上传文件,包括了Python ftp上传文件的使用技巧和注意事项,需要的朋友参考一下 以下代码比较简单,对python实现ftp上传文件相关知识感兴趣的朋友可以参考下 下面给大家介绍python实现ftp上传下载文件的方法 python本身自带一个FTP模块,可以实现上传下载的函数功能。