欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python socket 通信

程序员文章站 2022-06-30 09:11:06
...

socket TCP通信要求:1

1、client与server端可以一直通信;

2、如果客户端发的是空(),有两种情况,客户端直接回车,发的是空;客户端直接exit退出关闭套接字。这是server端需要能一直保持通信,还能与其他客户端通信。

3、客户端的程序停止运行时,服务器端会报错(windows环境下),利用异常处理不报错。Linux环境下不存在这样的错误。

server端:

import socket
sk=socket.socket( )
print(sk)
address=('127.0.0.1',8000)
sk.bind(address)
sk.listen(3)
print('waiting!!!!!')

while 1:
    conn, addr = sk.accept()
    print(addr)
    while True:
        try:
            data=conn.recv(1024)
            print("...........",str(data,'utf8'))
        except Exception:
            break
        if not data:break
        inpu=input("服务器>>>>>>>>>:")
        conn.send(bytes(inpu,'utf8'))

conn.close()
sk.close()

client端

import socket
s=socket.socket()
print(s)
address=("127.0.0.1",8000)
s.connect(address)

while True:
    inpu=input("客户端>>>>>>>:")
    if inpu == "exit":
        break
    s.send(bytes(inpu,'utf8'))
    data=s.recv(1024)
    print(str(data,'utf8'))
s.close()