文件关联行为与 Windows 10 不一致

文件关联行为与 Windows 10 不一致

更新 Python 后,我的文件关联不知怎么就变得混乱了,我一直在尝试让它们恢复正常。这是我的测试程序 PyArgs.py:

import sys, os 
print ("Arguments count  : " + str (len (sys.argv)))
print ("Arguments        : " + str (sys.argv))
print ("Python version   : " + sys.version) ;
print ("Python executable: " + sys.executable) ;
print ("Script path      : " + os.path.realpath(__file__))
exit

并且有一个控制台转储可以说明我的问题:

C:\TOOLS>"C:\Users\Raymond\AppData\Local\Programs\Python\Python38\python.exe" pyargs.py 1 2 3
Arguments count  : 4
Arguments        : ['pyargs.py', '1', '2', '3']
Python version   : 3.8.2 (tags/v3.8.2:7b3ab59, Feb 25 2020, 23:03:10) [MSC v.1916 64 bit (AMD64)]
Python executable: C:\Users\Raymond\AppData\Local\Programs\Python\Python38\python.exe
Script path      : C:\TOOLS\pyargs.py

C:\TOOLS>pyargs.py 1 2 3
Arguments count  : 1                                                     <=========================== ??
Arguments        : ['C:\\TOOLS\\pyargs.py']                              <=========================== ??
Python version   : 3.8.2 (tags/v3.8.2:7b3ab59, Feb 25 2020, 23:03:10) [MSC v.1916 64 bit (AMD64)]
Python executable: C:\Users\Raymond\AppData\Local\Programs\Python\Python38\python.exe
Script path      : C:\TOOLS\pyargs.py

C:\TOOLS>assoc .py
.py=Python.File

C:\TOOLS>ftype Python.File
Python.File="C:\Users\Raymond\AppData\Local\Programs\Python\Python38\python.exe" "%L" %*

因此,如果我使用 的路径明确调用脚本python.exe,脚本就会看到参数,但如果我通过.py文件关联调用它,它就不会看到参数。我遗漏了什么?

我已将问题标记为,python但我不确定这与 python 有什么关系,只是我对文件关联的配置不完整。

如果我进入文件关联设置,我会看到:

在此处输入图片描述

第二个Python图标看起来可能与命令行操作有关。无论如何,我将.py文件关联更改为该图标,行为没有改变。

相关内容