2017-06-14 51 views
0

我正在創建一個程序,該程序與用戶保持基本對話,但在考慮如何讓該程序處理用戶投入,我遇到了一個小問題:我將如何讓Python識別字符串的類別(即不同的語法類型的字詞)

print "(Computer:)then what would you like to talk about?" 
ci= raw_input("") 
print "(Computer:)why do you want to talk about",ci,"?" 

大多數我不得不應對程序的問題,包含其內響應物主或人稱代詞,但由於代詞的含義取決於人們賴以人說它,該程序的反應是無意義的。我已經想出了兩種方法,我個人可以糾正這種情況:

  1. 我可以讓程序以指示代詞(this,these,that,those)來回應。雖然這可以消除這個問題,但它使得用戶和程序之間的交流變得更加乏味。
  2. 我可以手動有程序檢查,其中包含英語每一個字或收縮的響應「我」或「你」(或從其)

然而,因爲那裏只是要比這個計劃枯燥無味,或者花費我餘下的時間在腳本中輸入'if'陳述來更好地解決這個問題;我想請求幫助。 (如果這個問題有明顯的解決方案,我很抱歉,我對編碼還是比較陌生)。

+0

機器學習\ m/ –

+0

不是答案,但我認爲你應該去這裏https://www.ibm.com/cloud-computing/bluemix/watson/cognitive-chat-solution –

+0

我有一個不同的圖片記住當我第一次閱讀「字符串類型」(基於類型理論)。你在問自然語言處理,所以不,沒有簡單的解決方案。 – chepner

回答

0

能否請你問正是你想要的?根據我的理解回答我的問題 。 也許你必須看看NLTK和類似的NLP庫,這個應用程序需要自然處理,不可能從用戶的輸入中獲得感覺。請閱讀關於chatbots和NLP。謝謝