2013-01-14 18 views
9

Bu konuyla ilgili diğer soru/cevapların çoğuna baktım ama boşuna değil.Kitaplıkların İçe Aktarılması Sorunu - "İçe Aktarımcı: Yok adlı bir modül yok"

Pip kullanarak numpy ve nltk'i indirdim ve yükleme konumunun bildiğim mesajlara dayanarak: Requirement already satisfied (use --upgrade to upgrade): nltk in /usr/local/lib/python2.7/site-packages, bu sürüm 2.7 için dizinde kurulu gibi görünüyor.

python'u çalıştırdığımda Python 2.7.3 (v2.7.3:70274d53c1dd, Apr 9 2012, 20:52:43) alıyorum, bu da açıkça 2.7 sürümü. Ancak, Python konsolunda "import nltk" veya "import numpy" yi denediğimde, her zaman ImportError: No module named nltk hatasını alıyorum. Üste | Herhangi bir tavsiye büyük takdir edilecektir!

+1

Birden çok python yüklemesi var gibi görünüyor ve 'nltk 'diğer python'a yüklenir. 'PYTHONPATH'ı değiştirmek çirkin bir numaradır. Bu cevaba bir göz atın ve durumunuza bakın: http://stackoverflow.com/a/12206868/565999 –

cevap

17

PYTHONPATH ortam değişkenini değiştirmeyi deneyin. BASH kullanıyorsanız, aşağıdakiler işe yarayacaktır. Diğer Linux kabukları, ortam değişkenlerini nasıl atadıkları konusunda biraz farklı olacaktır.

export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages 
+2

Bir çekicilik gibi çalıştık, teşekkürler! – NeelPatel

+0

nltk ve python terminali üzerinden erişilebilen diğer paketler yapmak için .../dist-pack ihraç etmeliydim. Bu ipucu için teşekkürler. –

+0

PYTHONPATH değiştirme de çalıştı python34 C: \ Python34 \ Lib \ site-paketleri (yol sys.path pth için ithalat sys tarafından verilen listede gösterildi: baskı pth ama bir şekilde pythonpath düzenlenmiş kadar işe yaramadı – JinSnow

9

sorun /usr/local/lib/python2.7/site-packages varsayılan yolu listesinde olmadığıdır. Bunu doğrulamak için, aşağıdaki komutları çalıştırın: Sen dizinlerin listesini alacak

import sys 
for pth in sys.path: 
    print pth 

modüllerin aradık. muhtemelen listede /usr/local/lib/python2.7/site-packages olmaz üzere, aşağıdaki seçenekler vardır:

  1. , Debian o mesela, bu /usr/local/lib/python2.7/dist-packages olabilir nltk çıkarın ve dizinleri yollarının biri (notunda tekrar yükleyin

    . her çalışma günü
  2. , set PYTHONPATH değişken:. export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages (eğer $HOME/.bashrc dosyasında bu komutu koyabilirsiniz)

  3. /usr/lib/python2.7/site-packages veya /usr/lib/python2.7/dist-packages bir dosyayı local.pth koy Tek bir satır içerir, (yukarıdaki senaryonun çıktı bağlı olarak):

    /usr/local/lib/python2.7/site-packages 
    

    Bu kalıcı olarak varsayılan yolu listesine bu dizini ekleyecektir.

  4. aşağıdaki kodu ekleyin (import nltk öncesi) Senaryonuzun başında (Bu seferki sadece muhtemelen bazı garip konuma yüklenir bazı nadiren kullanılan standart dışı paketleri değil, davanız için önerilir):

    import sys 
    sys.path.append("/usr/local/lib/python2.7/site-packages")