Nėra modulio, pavadinto „sąrankos įrankiai“

Nera Modulio Pavadinto Sarankos Irankiai



Nesvarbu, ar tik pradedate dirbti su Python, ar patyręs profesionalas, retkarčiais turėsite įdiegti išorinius paketus, kuriuos naudosite savo projektuose. Tačiau kai kuriais atvejais galite susidurti su „Modulio, pavadinto 'setuptools', kai bandote įdiegti konkretų paketą.

Šioje pamokoje sužinosite apie įvairius metodus ir būdus, kuriuos galite naudoti norėdami ištaisyti šią klaidą.

Kas yra Python sąrankos įrankis?

Prieš pasinerdami į tai, kas sukelia klaidą „nėra modulio, pavadinto „setuptools“, verta suprasti, kas yra sąrankos įrankiai.







Python yra du pagrindiniai paketų kūrimo ir platinimo būdai:



  1. Distutil
  2. Sąrankos įrankiai

„Distutils“ yra numatytasis „Python“ pakavimo įrankis. Jis yra integruotas į standartinę Python biblioteką ir slepia žemo lygio Python paketo kūrimo detales.



Kita vertus, „Setuptools“ yra alternatyva distutilams. Jis sukurtas ant distutils ir suteikia daugiau funkcijų bei patobulinimų, palyginti su analogu.





Atminkite, kad vargu ar atskirsite paketus, sukurtus naudojant distutils ir sąrankos įrankius.

Kas sukelia klaidą „Nėra modulio, pavadinto „setuptools“?

Nieko nėra labiau varginančio nei paleisti kodą ir gauti klaidą, kaip parodyta:



Atsekti ( paskutinis skambutis paskutinis ) :

Failas 'setup.py' , linija 1 , in < modulis >

sąrankos įrankiai importuoti *

ModuleNotFoundError: nėra modulio pavadinimo 'setuptoosl'

Nors universalios tokio tipo klaidų priežasties nėra. Yra trys pagrindinės galimos priežastys. Jie apima:

  1. Trūksta sąrankos įrankių bibliotekos
  2. Sąrankos įrankių bibliotekos nėra sistemos kelyje
  3. Neteisingi Python ir Pip versijos.

Pakalbėkime apie tai, kaip galime bandyti išspręsti klaidą.

1 sprendimas – įdiekite sąrankos įrankių biblioteką

Pagrindinė klaidos „nėra modulio, pavadinto „setuptools““ priežastis yra trūkstama biblioteka. Sąrankos įrankių paketas nėra standartinės Python bibliotekos dalis. Taigi, prieš jį importuojant, verta įsitikinti, kad paketas yra įdiegtas.

Galite įdiegti sąrankos įrankių paketą paleisdami toliau pateiktą kodą:

$ pip įdiegti sąrankos įrankius

$ pip3 įdiegti sąrankos įrankius

Aukščiau pateikta komanda įdiegs jūsų sistemos sąrankos įrankius. Prieš paleisdami aukščiau pateiktą kodą įsitikinkite, kad sistemoje įdiegtas pip.

„Linux“ sistemose gali tekti įdiegti setuptools paketą naudojant paketų tvarkyklę.

Toliau pateiktos populiarių Linux platinimų komandos:

Debian/Ubuntu pagrindu

$ sudo apt-get įdiegti python3-setuptools -y

Fedora / REHL

$ sudo yum įdiegti python3-setuptools -y

Arch/Manjaro pagrindu

$ sudo pacman -S python-setuptools

Aukščiau pateiktos komandos turėtų atsisiųsti ir įdiegti jūsų sistemoje Python setuptools paslaugų programas.

2 sprendimas – įtraukite sąrankos įrankius į sistemos kelią.

Kai kuriais atvejais galite susidurti su „jokiu moduliu, pavadintu „setuptools“, net ir įdiegę sąrankos įrankių biblioteką.

Tai dažniausiai atsitinka, jei pip nėra jūsų sistemos kelyje. Šią klaidą galite ištaisyti pridėdami pip prie kelio.

Pagal numatytuosius nustatymus pip katalogas yra:

C:\Vartotojai\vartotojo vardas\AppData\Local\Programs\Python310\Scripts

C:\Users\username\anaconda3\pkgs\pip\Scripts

Atminkite, kad kelias gali skirtis priklausomai nuo diegimo metodo ir įdiegto Python interpretatoriaus.

Suradę kelią į pip, rankiniu būdu pridėkite jį prie sistemos kelio ir atnaujinkite terminalo seansą, kad pritaikytumėte pakeitimus.

Tada galite iš naujo įdiegti setuptools paketą naudodami pip, kaip parodyta aukščiau esančioje komandoje.

3 sprendimas – neteisingas paketas

Kita šios klaidos priežastis yra paketo su neteisingu pip įdiegimas. Norėdami tai išspręsti, įsitikinkite, kad įdiegėte „Python“ vertėjo sąrankos įrankius su pip.

Pavyzdžiui, Python3 įdiekite sąrankos įrankius naudodami komandą:

$ pip3 įdiegti sąrankos įrankius

Python 2 paleiskite komandą:

$ pip įdiegti sąrankos įrankius

Uždarymas

Šiame straipsnyje sužinojote apie galimas „Python“ modulio, pavadinto „setuptools“, priežastis ir apie tai, kaip ją išspręsti.