Приближается день рождения моего друга, поэтому мы с другим другом работаем над поздравительной открыткой/розыгрышем. Мы написали короткий скрипт на Python, который после выполнения засыпает на определенное время, а затем запускает виртуальную поздравительную открытку. Мы хотим отправить нашему другу файл (скажем, за день до его дня рождения), сказав ему, что это наша фотография или что-то подозрительное (имя файла, конечно, должно заканчиваться на .jpg или что-то в этом роде), но когда он открывает его, на самом деле он просто активирует спящего (который затем запустит виртуальную поздравительную открытку на следующий день или что-то еще, в зависимости от того, когда мы ее отправим) и удивит его в его настоящий день рождения. (Он никогда не выключает свой компьютер, так что нас не беспокоит весь этот «сон».)
Так что в любом случае. Проблема в том, что если мы назовем его filename.jpg, его компьютер автоматически откроет его с помощью средства просмотра изображений (например, Preview на Mac). Можем ли мы программно изменить приложение по умолчанию, которое пытается запустить нашу программу? То есть возможно ли, чтобы его компьютер запускал файл Python, дважды щелкнув (или иным образом попытавшись открыть) файл?