Ответ 1
python yourfile.py
Сначала вы должны установить python. Он автоматически скомпилирует ваш файл в двоичный файл .pyc, а затем запустит его для вас. Он будет автоматически перекомпилироваться в любое время, когда ваш файл изменится.
Как я могу скомпилировать и запустить файл python (расширение *.py)?
python yourfile.py
Сначала вы должны установить python. Он автоматически скомпилирует ваш файл в двоичный файл .pyc, а затем запустит его для вас. Он будет автоматически перекомпилироваться в любое время, когда ваш файл изменится.
Python компилирует свои файлы в байт-код перед их исполнением. Это означает, что на целевой машине должен быть установлен интерпретатор Python.
Если вы не хотите устанавливать Python на целевой машине, используйте py2exe, py2app или что-то подобное.
Если вы просто хотите скомпилировать источники, не запуская их, вы можете сделать это
compileall.py <directory>
эта команда будет компилировать код python в этом каталоге рекурсивно
compileall script обычно находится в каталоге, например
/usr/local/lib/python2.6
то есть. <prefix>/lib/python2.6
(или аналогичный, в зависимости от префиксов, задает конфигурацию питона)
Как предлагает Lulu, вы должны убедиться, что полученные .pyc и .pyo файлы исполняются пользователями, которых вы заботитесь.
compileall также может использоваться как модуль
import compileall
compileall.compile_dir(path)
Python - интерпретируемый язык, поэтому вам не нужно его компилировать; просто чтобы запустить его. Как это бывает, стандартная версия python будет компилировать это в "байт-код", как и Java и т.д., И сохранит это (в .pyc файлах) и запустит его в следующий раз, экономя время, если вы не обновили файл с тех пор. Если вы обновили файл, он будет автоматически перекомпилирован.
Вы также можете запустить python с флагом -O, который будет генерировать файлы .pyo вместо .pyc. Я не уверен, что это имеет большое значение. Если скорость важна, используйте psyco.
И да, в Unix (включая Linux, BSD и Mac OS X или в оболочке unix на окнах) вы можете использовать строку shebang в верхней части файла, чтобы файл автоматически запускался с использованием python. В Windows эквивалент должен связывать файлы .py с файлом python.exe, а затем убедитесь, что переменная среды PATHEXT включает расширения ".PY".
Однако для Windows вы, скорее всего, захотите написать GUI-программу в python (возможно, используя PyQT4 и ERIC4), которая имеет файл .pyw в качестве основного script и имеет .pyw, связанный с pythonw (который поставляется с python на окнах). Это позволит вам запускать скрипты python на окнах, как и другие графические программы. Для публикации и распространения вы, вероятно, захотите скомпилировать исполняемый файл, используя что-то вроде py2exe, как упоминалось в других.
Чтобы добавить к ответ Paul McMillan, если вы находитесь в Windows и у вас установлен Python, то любые файлы, заканчивающиеся расширением ".py", должны быть связаны с исполняемый файл python
, позволяющий запускать его следующим образом:
> myfile.py
В * nix вы можете начать файл с #!/usr/bin/python
и запустить его так:
$ ./myfile.py
В системах * nix, если первые два символа файла #!
, тогда он выполнит файл с указанным исполняемым файлом, который я установил здесь как /usr/bin/python
.
Если вы хотите преобразовать исходный файл python в двойное нажатие .exe
на окнах, вы можете использовать py2exe, который может помочь вам создать простой для распространения пакет.
В большинстве Unix-подобных систем вы можете использовать shebang, чтобы сообщить операционной системе, которую должен вызывать интерпретатор. Вы просто ставите
#!/path/to/python
в первой строке вашего файла, где, конечно, вы должны заменить "/path/to/" на путь, который у вас есть в вашей системе. В большинстве случаев это будет "/usr/bin/python" или "/usr/local/bin/python". В системах Unix вы также можете искать путь с помощью
"#!usr/bin/env python"
или вызовите команду
which python
чтобы найти путь. Затем вы можете запустить свою программу с помощью команды
./yourprogram.py
Если он сообщает вам, что у вас нет разрешения на это, вы должны использовать команду
chmod a+x yourprogram.py
Ответ для Windows
теперь код python автоматически компилируется и показывает результат.