使用 python 完成 Socket 通信(1)一个对话的简单案例

文章参考:python 完成 Socket 通信的简单实例

服务端server

import socket
# 创建服务器端套接字
sk = socket.socket()

# 设置给定套接字选项的值。
# sk.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

# 把地址绑定到套接字
sk.bind(('127.0.0.1', 8898))

# 监听链接
sk.listen()

# 接受客户端链接
conn, addr = sk.accept()

while True:
    # 接收客户端信息
    ret = conn.recv(1024)
    # 打印客户端信息
    print(ret.decode('utf-8'))
    # 结束处理
    if ret == b'bye':
        conn.send(b'bye')
        break
    info = input('>>>')
    conn.send(bytes(info, encoding='utf-8'))
# 关闭客户端链接
conn.close()
# 关闭服务器套接字
sk.close()

客户端client

import socket
# 创建客户端套接字
sk = socket.socket()
# 尝试连接服务器
sk.connect(('127.0.0.1',8898))
while True:
    # 信息发送
    info = input('>>>')
    sk.send(bytes(info,encoding='utf-8'))
    # 信息接收
    ret = sk.recv(1024)
    # 结束会话
    if ret == b'bye':
        sk.send(b'bye')
        break
    # 信息打印
    print(ret.decode('utf-8'))
# 关闭客户端套接字
sk.close()

经测试以上代码可实现客户端与服务端的对话。

你可能感兴趣的:(python网络编程,python,网络)