我一直在通過Python工作,但似乎無法通過字符串比較。我寫了一個函數,它接受用戶輸入並對其進行評估。用戶輸入只能是「a」或「b」,否則會發生錯誤。我一直用這個:python中的字符串比較
def checkResponse(resp):
#Make the incoming string trimmed & lowercase
respRaw = resp.strip()
respStr = respRaw.lower()
#Make sure only a or b were chosen
if respStr != "a" | respStr != "b":
return False
else:
return True
然而,當我輸入a
或b
,我收到這個:TypeError: unsupported operand type(s) for |: 'str' and 'str'
這是不正確的方法來比較字符串?有沒有一個內置函數可以像Java一樣執行此操作?謝謝!
「if」對應於你的'elif'在哪裏? – ThiefMaster 2012-07-16 17:00:19
我把它剪掉以減少一些不必要的代碼,但我會修復......謝謝! – 2012-07-16 17:01:37
除了以下答案中的關於運算符的要點之外,您還可以鏈接字符串方法,因此('a','b')'中的return resp.strip()。lower()可以是整個函數。 – geoffspear 2012-07-16 17:23:17