如何让 Python 脚本默认打开某个文件扩展名?

如何让 Python 脚本默认打开某个文件扩展名?

我正在制作一个用 Python 编写的应用程序,我需要它成为打开 .adv 文件扩展名的默认程序。

我在网上寻找答案,发现我需要一个 .bat 文件(批处理文件)来将 Python 应用程序设置为打开 .adv 文件的默认程序。我还发现我需要编写类似 python C:\Path\To\Script\script.py 的内容,当我尝试这样做时,它不起作用。

我还发现了许多适用于 MacOS 和其他 Apple 操作系统的解决方案,但没有适用于 Windows 的解决方案。我还发现有些人说要将 .py 转换为 .exe,但提供的步骤不起作用。

我正在寻找一个一体化解决方案,其中有明确的步骤说明如何在安装了该应用程序的任何计算机上将 Python 脚本设置为 .adv 文件扩展名的默认打开程序(这意味着 Windows 会自动将该应用程序识别为默认打开程序)。如果不将 .py 文件转换为 .exe,这甚至可能是不可能的,但我想要最简单的解决方案。

Stack Overflow 上的用户告诉我在这里发布这个问题,因为它与编程没有直接关系。

答案1

该脚本应该是:

import sys     
with open(sys.argv[1]) as f:
           #Do whatever operation you want here

此外,bat 文件应该是

python "C:\Your\Path\To\Script" %*

因此,当您将 bat 文件指定为文件类型的默认处理程序时,bat 文件将运行 python 脚本。现在,%*bat 文件中的意味着所有参数都将提供给 python 脚本。

现在,进入脚本部分,sys.argv返回文件给出的参数列表.bat。现在 sys.argv[1](即列表的第二个元素)指的是.adv您要打开的文件的路径。因此,文件会为您打开....希望对您有所帮助!

相关内容