在Windows资源管理器中拖放到Python脚本

时间:2020-03-06 14:49:03  来源:igfitidea点击:

我想将数据文件拖放到Python脚本上,并使其处理文件并生成输出。 Python脚本接受数据文件的名称作为命令行参数,但是Windows资源管理器不允许该脚本作为放置目标。

为此需要在某处进行某种配置吗?

解决方案

当然。从一篇没用的技术文章"在Windows中使Python脚本可放置"中,可以通过添加注册表项来添加放置处理程序:

Here’s a registry import file that you can use to do this. Copy the
  following into a .reg file and run it
  (Make sure that your .py extensions
  are mapped to Python.File).

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Python.File\shellex\DropHandler]
@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"

这使得Python脚本使用WSH删除处理程序,该处理程序与长文件名兼容。要使用短文件名处理程序,请将GUID替换为" 86C86720-42A0-1069-A2E8-08002B30309D"。

该帖子中的评论表明,可以使用Python.NoConFile和Python.CompiledFile来启用"无控制台Python文件(.pyw)"或者"编译的Python文件(.pyc`)"。类。

尝试使用py2exe。使用py2exe将python脚本转换为Windows可执行文件。然后,我们应该能够将输入文件拖放到Windows资源管理器中的脚本中。我们还应该能够在桌面上创建快捷方式并将输入文件拖放到该快捷方式上。并且,如果python脚本可以获取文件列表,则我们应该能够在脚本(或者快捷方式)上拖放多个文件。