но ты вроде ответил на свой вопрос, но уже совсем противоположное. виндовс не *.py считает приложение, а сам сам python.exe, которому этот py передается как параметр для запуска.
таже аналогия и с txt. txt это не программа, а файл, но открывается он через notepad.exe которому в качестве параметров система сует txt