Rumah > Soal Jawab > teks badan
用pycharm自动生成的setup文件,使用的是distutils.core里的setup
from distutils.core import setup
但我看很多人写的setup,用的是setuptools
from setuptools import setup, find_packages
这个distutils和setuptools分别是什么背景,怎么同样功能出现两个包呢?
巴扎黑2017-04-18 09:29:25
Belajar membaca dokumen rasmi, distutils
pengenalan (distutils - python2):
Pakej distutils menyediakan sokongan untuk membina dan memasang modul tambahan ke dalam pemasangan Python Modul baharu mungkin sama ada Python 100% tulen, atau mungkin modul sambungan yang ditulis dalam C, atau mungkin koleksi pakej Python. yang termasuk modul berkod dalam Python dan C.
Dalam erti kata lain, keseluruhan pakej distutils
bertanggungjawab untuk mencipta pemasang untuk modul pengembangan Python
.
Kemudian perenggan kedua dokumen:
Kebanyakan pengguna Python tidak mahu menggunakan modul ini secara langsung, sebaliknya menggunakan alatan versi silang yang diselenggara oleh Pihak Berkuasa Pembungkusan Python Khususnya, setuptools ialah alternatif yang dipertingkatkan kepada distutil yang menyediakan:
Seperti yang anda lihat, kebanyakan pengguna Python
akan menggunakan modul setuptools
yang lebih maju. Terdapat beberapa kelebihan setuptools
yang disenaraikan di bawah dalam dokumen, yang saya tidak akan siarkan di sini.
Jadi mengapa Pycharm
menggunakan distutils
? Bukankah ini bermakna setuptools
lebih berkuasa?
Sebabnya mudah: distutils
ialah Python
modul standard dan setuptools
ialah modul pihak ketiga. Dan Pycharm
Saya tidak tahu jika anda telah memasang setuptools
Untuk mengelakkan masalah yang tidak perlu, sudah tentu anda mesti menggunakan modul standard.
Kemudian mari kita lihat apa itu setuptools.setup
terdapat ayat ini dalam setuptools/__init__.py
:
setup = distutils.core.setup
Itu sahaja.