Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python/Django:如何以最快的速度获取文件(基于路径和名称)_Python_Operating System - Fatal编程技术网

Python/Django:如何以最快的速度获取文件(基于路径和名称)

Python/Django:如何以最快的速度获取文件(基于路径和名称),python,operating-system,Python,Operating System,我的网站用户可以上传图像文件,然后需要在页面上显示图像文件时找到它们(使用src=“”)。目前,我将所有图像放在一个目录中。如果有很多文件怎么办?找到正确的文件是否很慢?它们有索引吗?我应该创建子目录吗 我使用Python/Django。所有内容都在网络上。单个文件的访问时间不受同一目录中文件数量的影响 当然,在包含更多文件的目录上运行ls-l需要更长的时间。与在文件浏览器中查看该目录相同。当然,如果将这些图像存储在由用户名定义的子目录中,可能会更容易处理它们。但这取决于你将如何处理它们。没有技

我的网站用户可以上传图像文件,然后需要在页面上显示图像文件时找到它们(使用src=“”)。目前,我将所有图像放在一个目录中。如果有很多文件怎么办?找到正确的文件是否很慢?它们有索引吗?我应该创建子目录吗


我使用Python/Django。所有内容都在网络上。

单个文件的访问时间不受同一目录中文件数量的影响

当然,在包含更多文件的目录上运行
ls-l
需要更长的时间。与在文件浏览器中查看该目录相同。当然,如果将这些图像存储在由用户名定义的子目录中,可能会更容易处理它们。但这取决于你将如何处理它们。没有技术上的理由这样做


这样想吧。图像文件的完整路径(
/srv/site/images/my_pony.jpg
)是该文件的实际地址。您的web服务器进程在那里查找,并返回它找到的任何数据,如果没有,则返回404。它没有做的是列出
/srv/site/images
中的所有文件,并查看该列表是否包含名为
my\u pony.jpg
的项

如果只是为了组织目的,并且为了帮助系统维护,您应该创建子目录。否则,您几乎不会遇到目录所能容纳的内容

对于web来说,性能影响可以忽略不计。但对于其他应用程序(文件列表、ftp、备份等),可能会有后果,但前提是您访问的文件数量非常大