2013-08-24 249 views
-1

我有一個變量,其值爲input(「」),我希望它檢查輸入是否包含某個單詞。如何檢查用戶是否輸入了某個詞

代碼:

print("John: Hello!") 

print('') 

talkingToJohn = '' 

while talkingToJohn != "Bye": 
    talkingToJohn = input("") 
+2

你確實是獲取輸入,你就做什麼,但循環使用它的時候了。 – Makoto

+2

你嘗試過什麼可能性? –

+0

這是爲什麼得到downvoted? –

回答

0

您可以使用此代碼:

a=''  
while a!="bye": 
    a=raw_input('input') 
+1

請注意,如果OP使用的是python 3.x,那麼'raw_input'不存在,'input'是正確的函數。在這種情況下,除了「bye」是小寫之外,你所擁有的與他們所擁有的完全相同。由於他們使用print(),它看起來像是在python 3.x – SethMMorton

5

下面的代碼應該做的工作:

print("John: Hello!") 

talkingToJohn = '' 
while not "bye" in talkingToJohn: 
    talkingToJohn = input().lower() 

    if "how old" in talkingToJohn: 
     printMyAge() 
    elif "where" in talkingToJohn: 
     askLocation(talkingToJogn) 

它會循環,而用戶沒有按」 t輸入「再見」(這裏不區分大小寫)

編輯:如果你想從用戶管理問題,你必須建立一個系統,將解析用戶輸入。不是很容易(Cleverbot和co。不是很容易編程...),但我給了你一個簡單的第一種方法。每種方法(printMyAge,askLocation)都應該通過打印某些內容來向用戶返回文本。

+0

這實際上並不是我想要做的。以下是我想要做的事情:如果用戶輸入了「今天過得怎麼樣?」我想要一個if語句來查看用戶輸入的字符串是否包含單詞「How」 – Noah

+0

查看我更新的anwser。 –

+0

@Noah未來,你需要提出問題陳述你想要的。如果你沒有列出要求,沒有辦法給予好的迴應。這包括example.s – SethMMorton

2

這裏我檢查字符串中的每個單詞,看看它是否是Bye

talkingToJohn = raw_input() 
talkingToJohn = talkingToJohn.split(" ") 
for a in talkingToJohn: 
    if a == "Bye": 
     print "talkingToJohn conatins Bye" 
3

很簡單:

>>> message = input(':') 
:Hello World! 
>>> if 'Hello' in message: print(True) 
... 
True 
>>> message = input(':') 
:hEllO wOrLd! 
>>> if 'hello' in message.lower(): print(True) 
... 
True 
>>> 
+0

@Noah - 沒問題。不要忘了接受一個答案(http://stackoverflow.com/help/accepted-answer)來保持SO的清潔和組織。 – iCodez

相關問題