我剛剛開始使用python進行TCP服務器和客戶端編程。然而的一個if語句不工作,它沒有任何意義:如果聲明被跳過,即使聲明爲真
while (1):
data = s.recv(1024)
if data == 'finish':
break
print data
print 'Finish'
有時最後通道將在「完成」代替打印「完成」,它不能退出循環。這應該永遠不會發生,因爲如果data ='finish','print data'語句會被跳過。有人能告訴我爲什麼會發生這種情況嗎?
保存自己的頭痛,只是做'data.lower()'如果你正在「完成」不同的腸衣。 – idjaw
,因爲我在服務器端使用c.send('finish'),因此數據不會'完成'。 –
嘗試'打印repr(數據)',而不是看看你到底在收到什麼。可能有一個隱藏的角色。 –