У меня есть простая программа python, и я хочу, чтобы исполняемая версия (для Ubuntu Linux) этой программы не запускала ее в терминале с помощью python myprogram.py
.
Как я могу это сделать?
У меня есть простая программа python, и я хочу, чтобы исполняемая версия (для Ubuntu Linux) этой программы не запускала ее в терминале с помощью python myprogram.py
.
Как я могу это сделать?
Нет необходимости. Вы можете пометить файл как исполняемый файл, используя
chmod +x filename
Убедитесь, что в первой строке есть строка shebang:
#!/usr/bin/env python
И ваш Linux должен уметь понимать, что этот файл должен интерпретироваться с помощью python. Затем он может быть выполнен как
./myprogram.py
Как уже указывали другие, вы можете добавить shebang в начало вашего файла
#!/usr/bin/python
или #!/usr/bin/env python
и добавьте разрешения на выполнение chmod +x program.py
позволяет вам запускать ваш модуль с помощью ./program.py
Другой вариант - установить его pythonic с помощью setuptools. Создайте себе setup.py и поместите в нее:
from setuptools import setup
setup(
name = 'Program',
version = '0.1',
description = 'An example of an installable program',
author = 'ghickman',
url = '',
license = 'MIT',
packages = ['program'],
entry_points = {'console_scripts': ['prog = program.program',],},
)
Предполагается, что у вас есть пакет под названием program и внутри него - файл под названием program.py с помощью метода main(). Чтобы установить этот способ, запустите setup.py, как этот
python setup.py install
Это установит его в каталог sites-packages вашей платформы и создаст консоль script, называемую prog. Затем вы можете запустить prog
с вашего терминала.
Хороший ресурс для получения дополнительной информации о setup.py - это сайт: http://mxm-mad-science.blogspot.com/2008/02/python-eggs-simple-introduction.html
Вы можете попробовать использовать модуль, например cxfreeze
В верхней части программы python добавьте:
#!/usr/bin/python
Я знаю самое простое, точное и лучшее решение. У меня была такая же проблема, как и вы, но теперь я могу запустить свою программу Python/Tkinter (GUI) со своей иконкой.
Когда мы создаем файлы .bat в Windows, мы также можем легко создавать эквивалентные .bat файлы в Linux. Благодаря этому файлу мы можем запускать наши программы без терминала, даже если ему нужно получить команду на запуск терминала (например, программы Python), дважды щелкнув по значку (на самом деле .png значок:)), или мы можем писать команды для облегчить наши работы. Итак, как это произойдет?
Например, если мы хотим запустить нашу .py-программу, нам просто нужно записать эту команду в терминал:
python3 locationOfPyFile
Итак, если мы создадим файл, который может автоматически запускать эту команду, проблема будет решена. В дополнение к этому вы можете иметь свой собственный значок, и даже вам не нужно открывать терминал!
Проверьте эту статью: Запустить команды с ее значка (самый простой способ)