Purtroppo, non c'è alcun metodo per la follia. Il nome nel numero package index è indipendente dal nome del modulo import
. Disastroso some packages share module names. Se si installano entrambi, l'applicazione si interromperà con quote pari. (Ruby has this problem too)
Il packaging in Python è generalmente disastroso. La causa principale è che la lingua viene fornita senza un gestore di pacchetti. Ruby e Nodejs vengono forniti con i gestori di pacchetti completi Gem e Npm e hanno nutrito comunità di condivisione incentrate su GitHub. Npm rende publishing packages facile come installarli. Nodejs è arrivato nel 2009 e ha già 14k packages. Il venerabile elenco di pacchetti Python elenca 24k. Ruby Gems elenca i pacchetti da 44k.
Fortunatamente, esiste un gestore di pacchetti decente per Python, denominato Pip. Pip è ispirato a Ruby's Gem, ma manca di alcune funzioni vitali (ad esempio elencando i pacchetti e upgrading en mass). Ironia della sorte, Pip stesso è complicated to install. L'installazione sul popolare Windows a 64 bit richiede la creazione e l'installazione di due pacchetti dall'origine. Questo è un grande chiedere a chiunque sia nuovo alla programmazione.
Gli sviluppatori di Python ignorano tutta questa frustrazione perché sono programmatori esperti che si adattano facilmente ai sorgenti e utilizzano le distribuzioni Linux con moduli Python integrati.
Fino a quando Python viene fornito con un gestore di pacchetti, migliaia di sviluppatori sprecano inutilmente tempo a reinventare la ruota.
Python 3 risolve molti problemi con l'imballaggio. Ci aren't any packages for Python 3.
fonte
2012-07-12 14:24:19
Spetta al pacchetto manutentore come denominare il pacchetto e moduli al suo interno. –
Sto votando per riaprire. Solo perché non c'è una buona risposta non significa che non fosse una buona domanda, e mi dispiacerebbe vederlo cancellato in un imprevisto di pulizie. –