基础通信
clinet客户端
#!/usr/bin/env/ python3
# -*- coding:utf-8 -*-
"""
@Project: books
@File :client.py
@Author:zy7y
@Date :2021/8/2 10:27
@Desc : socket 和 Tcp、Udp 打交道
socket 客户端
"""
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务端,(IP地址,端口)
client.connect(("127.0.0.1", 8000))
# 发送给服务端
client.send("arrds".encode(encoding="utf-8"))
# 接收服务端返回数据
data = client.recv(1024)
print(data.decode("utf-8"))
# 关闭
client.close()
server 服务端 - 单次通信
#!/usr/bin/env/ python3
# -*- coding:utf-8 -*-
"""
@Project: books
@File :server.py
@Author:zy7y
@Date :2021/8/2 10:27
@Desc :socket 服务端
"""
import socket
# 类型, 协议,
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定地址,端口
server.bind(("0.0.0.0", 8000))
# 监听
server.listen()
# 建立客户端连接,结构得到一个socket 实例用来接收或发送数据
sock, addr = server.accept()
print(addr)
# 发送数据给 客户端
sock.send("server...".encode("utf-8"))
# 获取数据
data = sock.recv(1024)
print(data.decode(encoding="utf-8"))
单人通信
client
#!/usr/bin/env/ python3
# -*- coding:utf-8 -*-
"""
@Project: books
@File :client.py
@Author:zy7y
@Date :2021/8/2 10:27
@Desc : socket 和 Tcp、Udp 打交道
socket 客户端
"""
import socket
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务端,(IP地址,端口)
client.connect(("127.0.0.1", 8000))
while True:
re_data = input()
# 发送给服务端
client.send(re_data.encode(encoding="utf-8"))
# 接收服务端返回数据
data = client.recv(1024)
print(f"服务端说: {data}")
server
#!/usr/bin/env/ python3
# -*- coding:utf-8 -*-
"""
@Project: books
@File :server.py
@Author:zy7y
@Date :2021/8/2 10:27
@Desc :socket 服务端
"""
import socket
# 类型, 协议,
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 绑定地址,端口
server.bind(("0.0.0.0", 8000))
# 监听
server.listen()
# 建立客户端连接,结构得到一个socket 实例用来接收或发送数据
sock, addr = server.accept()
# 服服端一直接收
while True:
# 获取数据
data = sock.recv(1024)
print(f"客户端说: {data}")
re_data = input()
# 发送数据给 客户端
sock.send(re_data.encode("utf-8"))
10.1 socket 编程