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