Я почав вивчати python, а також я новий користувач Ubuntu. Мені потрібно знати способи складання .pyфайлів. Я спробував з командою
python "hello.py"
Які ще способи складання пітона?
Я почав вивчати python, а також я новий користувач Ubuntu. Мені потрібно знати способи складання .pyфайлів. Я спробував з командою
python "hello.py"
Які ще способи складання пітона?
Відповіді:
Також пам’ятайте, що для його запуску вам не потрібно збирати .pyфайл. Python - це інтерпретована мова, і ви можете запускати сценарії безпосередньо, використовуючи:
python hello.py
Або зробіть свій сценарій виконуваним, додавши #!/usr/bin/env pythonу верхній частині сценарію, зробивши файл виконуваним chmod +x hello.pyта запустивши:
./hello.py
Той факт, що Python внутрішньо компілює ваш .pyсценарій для байт-коду .pycфайлів з міркувань продуктивності, є детальною інформацією про реалізацію, і, якщо у вас немає вагомих причин для цього, нехай python сам вирішує, коли і якщо компілювати.
chmod +x), як інтерпретатор читає сценарій?
#!/path/to/interpreter, ядро фактично виконує все, що там оголошено, передаючи шлях сценарію як аргумент. У моєму прикладі, коли ви запускаєте ./hello.pyте, що насправді виконується /usr/bin/env python ./hello.py. Дивіться en.wikipedia.org/wiki/Shebang_(Unix)
chmod +xгранти виконують і не торкаються існуючих дозволів, так що, імовірно, вони читаються на додаток до тепер виконуваного.
Ознайомтесь із цим посиланням Компілювати в Python
У середині сторінки йдеться про модуль py_compile, який можна імпортувати. Синтаксис такий:
import py_compile
py_compile.compile("file.py")
Цей спосіб компіляції не виконає модуль, як запуск python file.py.
Існує також метод, який компілює ціле дерево каталогів, але я дам вам можливість перевірити посилання, щоб побачити, як це виконується.
Сподіваюся, це допомагає.
Ви також можете спробувати compileall:
python -m compileall ./
Ви можете компілювати сценарії Python у двійковий код за допомогою різних методів, але я з’ясував, що використання Nuitka є більш ефективним.
Nuitka - компілятор Python-to-C ++, який підтримує майже всі версії python.
Синтаксис команд такий же простий, як і
nuitka hello.py
Перейдіть на http://nuitka.net/doc/user-manual.html для отримання додаткової інформації.
-Oпрапор, як-отpython -O -m py_compile …, який "увімкне основні оптимізації". Він здебільшого викреслюєassertвисловлювання таif __debug__код, тому для більшості кодів це не впливає. Дивітьсяman pythonі «Що робить оптимізацію Python ... робити?» Для деталей.