首页 > 解决方案 > 带有循环的python中的套接字问题

问题描述

我正在尝试编写一个简单的 tcp 套接字代码并多次发送hello,但是一旦它发送了第一个hello,它就会停止并转到 except

try:
    for i in range(0,1024):
        s.connect(('127.0.0.1', 8080))
        s.send('Hello')
        s.recv(1024)
except:
    print "Could not connect to 8080 for some reason..."

标签: python

解决方案


如果你想发送多次,那么只打开一次 - 循环之前for- 并且只关闭一次 - 循环之后for

try:
    s.connect(('127.0.0.1', 8080))

    for i in range(1024):
        s.send('Hello')
        s.recv(1024)

    s.close()

except Exception as ex: 
    print('ex:', ex)

发送后最终关闭它,以便您可以在下一个循环中打开它

try:

    for i in range(1024):
        s.connect(('127.0.0.1', 8080))
        s.send('Hello')
        s.recv(1024)
        s.close()

except Exception as ex: 
    print('ex:', ex)

并显示异常以查看问题的详细信息

except Exception as ex: 
    print('ex:', ex)

推荐阅读