Как связать py расширение со средством запуска Python на Mac OS X?

Все текущие основные компиляторы выполняют оптимизацию последнего вызова довольно хорошо (и делали больше десятилетия), даже для взаимно рекурсивных вызовов , таких как:

int bar(int, int);

int foo(int n, int acc) {
    return (n == 0) ? acc : bar(n - 1, acc + 2);
}

int bar(int n, int acc) {
    return (n == 0) ? acc : foo(n - 1, acc + 1);
}

Разрешение компилятору сделать оптимизация проста: Просто включите оптимизацию для скорости:

  • Для MSVC, используйте /O2 или /Ox.
  • Для GCC, Лязга и ICC, использования -O3

простой способ проверить, сделал ли компилятор оптимизацию, состоит в том, чтобы выполнить вызов, который иначе привел бы к переполнению стека — или рассмотрение вывода блока.

Как интересный исторический очерк, оптимизация последнего вызова для C была добавлена к GCC в ходе тезис диплома Mark Probst. Тезис описывает некоторые интересные протесты в реализации. Это стоит считать.

5
задан meagar 7 November 2011 в 13:46
поделиться

3 ответа

Установщики Python для OS X python.org включают приложение под названием «Python Launcher.app», которое делает именно то, что вы хотите. Он устанавливается в / Applications / Python nn / для nn> 2.6 или / Applications / MacPython nn / для 2.5 и ранее. На его панели предпочтений вы можете указать, какой исполняемый файл Python запускать; это может быть любой путь в командной строке, включая установленный Apple по адресу /usr/bin/python2.5. Вам также необходимо убедиться, что .py связан с «Python Launcher»; вы можете использовать команду Finder Get Info, чтобы сделать это, как описано в другом месте. Однако имейте в виду, что это может быть угрозой безопасности, если загруженные скрипты .py автоматически запускаются вашим браузером (-ами). (Обратите внимание, что поставляемый Apple Python в версии 10.5 не включает "Python Launcher.app").

6
ответ дан 13 December 2019 в 19:32
поделиться

Ассоциации файлов выполняются с помощью «Get Info». Вы выбираете файл .PY, выбираете меню «Файл»; Пункт меню Get Info.

В середине страницы Get Info находится «Открыть с помощью».

Вы можете выбрать Python Launcher. Есть Изменить все .. кнопка, которая изменяет ассоциацию для всех файлов .py .

3
ответ дан 13 December 2019 в 19:32
поделиться

Стив, добавьте следующее в начало вашего скрипта python:

#!/usr/bin/env python

Это должно быть первой строкой файла.

Затем сделайте файл исполняемым следующим образом:

daves-macbookpro ~: chmod +x foo.py

Тогда все, что вам нужно сделать, чтобы запустить это, это ввести

./foo.py
2
ответ дан 13 December 2019 в 19:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: