0
具有2 Python程序,host1.py
和同時運行,並且經由socket
使得通信host2.py
-socket.recv(256)如何返回None?
host1.py
具有reciveSock = socket(AF_INET,SOCK_DGRAM)
和host2.py
具有sendSocket = socket(AF_INET,SOCK_DGRAM)
。
兩個套接字都相互綁定。
在host1.py
有 -
try:
msgBacked = reciveSock.recv(256)
except:
pass
if(msgBacked is None):
print "isNone!"
事實上它打印isNone!
平均msgBacked
是None
。
所有發送的從host2.py
到host1.py
是一種sendSocket.send("ACK")
以便有哪些tranported到host1.py
發送字符串的值。
那麼這個msgBacked
怎麼可能是None
?
如果刪除'try/except'會怎麼樣? –
@DavidWolever:'msgReturn = reciveSock.recv(256) socket.timeout:timed out' – URL87
**這**是**完全**爲什麼'嘗試:...除了:pass'就是*單*在Python中你可以做的最可怕的事情!那麼if語句中的那些'()'怎麼了?它是Python,而不是<某種其他語言>!請..沒有Python開發人員想看到那裏的括號! – ThiefMaster