2012-01-06 94 views
3

我剛剛開始使用RubyPython,雖然文檔說可以加載模塊,但它沒有任何示例或指示來做到這一點。Python模塊與RubyPython

我已經在我的機器上安裝了Python NLTK(如果它很重要),並且可以在從命令行運行Python時導入模塊。

但是,我的印象是RubyPython gem安裝了Ruby的另一個版本,即Ruby與Ruby交互(儘管我可能是錯的)。

是否有需要安裝NLTK的其他文件夾,或者我需要做什麼以通過RubyPython從Ruby訪問NLTK?

我已經確認RubyPython本身正確加載到Rails代碼中。

我跑的代碼只是

 
     RubyPython.start 
     import nltk 
     RubyPython.stop 

,我得到

 
undefined local variable or method `nltk' 

我不能創建標籤RubyPython這就是爲什麼這篇文章不是標記爲此類。

+1

我不知道這RubyPython,但是這不是從消息一個'ImportError'。我認爲你應該使用不同的語法。 – 2012-01-06 21:10:28

+0

@larsmans - 你應該把它作爲答案,我會接受它。我需要把它寫成RubyPython.import(「nltk」)..謝謝 – pedalpete 2012-01-06 21:23:14

回答

3

正確的語法是:

RubyPython.start 
nltk = RubyPython.import("nltk") 
RubyPython.stop 

你也可以指定你想這樣做要使用的Python解釋器:

RubyPython.start(:python_exe => "python2.7") # Can also be a full path 
+0

感謝@ free-dom,有沒有你見過的任何地方記錄過的例子或者在RubyPython中使用nltk的例子?我還沒有拿出任何東西 – pedalpete 2012-01-06 21:36:10

+1

我沒有看到太多關於nltk的具體內容,但是我沒有理由認爲它在RubyPython中表現不好。你只需要記住「rubify」從你調用的python方法返回的任何字符串,它應該都可以正常工作。使用RubyPython的最好的例子在這裏:http://rubypython.rubyforge.org/,但你現在可能已經看到了。 – apiguy 2012-01-07 05:39:37