Yakshemash!我是一名Java程序員,學習python來製作一次性腳本。我想製作一個解析器,它顯示在下面的代碼中。爲什麼if塊中的條件無法正常工作?
class Parser(object):
def parse_message(self, message):
size= len(message)
if size != 3 or size != 5:
raise ValueError("Message length is not valid.")
parser = Parser()
message = "12345"
parser.parse_message(message)
此代碼引發錯誤:
Traceback (most recent call last):
File "/temp/file.py", line 9, in <module>
parser.parse_message(message)
File "/temp/file.py", line 5, in parse_message
raise ValueError("Message length is not valid.")
ValueError: Message length is not valid.
什麼是我的錯誤,我該如何改正呢?
你的消息具有長度5,這與3個不同的,所以ValueError被掛起。你想要'如果size!= 3和size!= 5:'而不是? –
@ tommy.carstensen - 什麼是:5之後?我想拒絕一個消息,如果它的大小不是3或不是5。不知道爲什麼會用「和」來滿足我的需求。 –
請參閱下面@idjaw的明確/詳細答案。 –