Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bolehkah kita melaksanakan skrip pasca pemasangan dalam Python setuptools?

Bolehkah kita melaksanakan skrip pasca pemasangan dalam Python setuptools?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-15 05:06:02241semak imbas

Can we execute a post-installation script in Python setuptools?

Skrip Pasca Pemasangan Tersuai dalam alat persediaan Python

Soalan:

Bolehkah kami melaksanakan skrip selepas pemasangan sebagai sebahagian daripada fail setuptools setup.py? Skrip ini harus berjalan secara automatik selepas melaksanakan python setup.py install secara setempat atau pip install daripada PyPI.

Jawapan:

Keperluan:

Perhatikan bahawa penyelesaian ini hanya aktif semasa pemasangan daripada pengedaran sumber ( zip, tarball) atau apabila memasang dalam mod boleh edit. Ia tidak akan dilaksanakan apabila memasang dari roda binari (.whl).

Penyelesaian Telus:

Untuk melaksanakan tingkah laku yang diingini, kami boleh mengubah suai fail setup.py tanpa mencipta fail tambahan. Kita perlu mempertimbangkan senario berasingan untuk mod pembangunan/boleh edit dan mod pemasangan:

1. Mod Pembangunan:

Buat kelas PostDevelopCommand yang memanjangkan setuptools.command.develop dan termasuk skrip pasca pemasangan anda:

from setuptools import setup
from setuptools.command.develop import develop

class PostDevelopCommand(develop):
    def run(self):
        develop.run(self)
        # Your post-installation script or function can be called here

2. Mod Pemasangan:

Buat kelas PostInstallCommand yang memanjangkan setuptools.command.install dan termasuk skrip pasca pemasangan anda:

from setuptools import setup
from setuptools.command.install import install

class PostInstallCommand(install):
    def run(self):
        install.run(self)
        # Your post-installation script or function can be called here

3. Mengintegrasikan dengan setup.py:

Tambah baris berikut pada fungsi setup() anda dalam setup.py:

setup(
    ...

    cmdclass={
        'develop': PostDevelopCommand,
        'install': PostInstallCommand,
    },

    ...
)

Ini akan membolehkan pelaksanaan skrip pasca pemasangan anda atau berfungsi secara automatik selepas pemasangan daripada sumber atau dalam mod boleh edit.

Atas ialah kandungan terperinci Bolehkah kita melaksanakan skrip pasca pemasangan dalam Python setuptools?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn