python实现tcp协议发送和接收信息

使用pythons实现信息发送与接收

服务端(必须先运行)

# 服务端(server)
import socket

# 创建socket对象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)  # 必须和客户端保持一致
# 需要自己绑定一个ip地址和端口号
s.bind(('127.0.0.1', 8000))
# 服务端监听操作时刻注意是否有客户端请求发来
s.listen(3)  # 可以同时监听3个,但是这里只有一个客户请求,因为没有写多线程
# 同意连接请求
s1, addr = s.accept()  # s是服务端的socket对象s1是接入的客户端socket对象
print(addr)
# revice接收数据
data = s1.recv(1024)  # 设定一次可以接收1024字节大小
print(data.decode())  # 传过来的字节流需要用decode()解码

客户端

# 客户端(client)
# TCP必须建立连接
import socket  #导入模块
# SOCK_STREAM---TCP协议方式
# AF_INET----我的是ipv4地址
# 创建socket对象:指定传输协议
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 建立连接发送连接请求 ip地址和端口号
s.connect(('127.0.0.1',8000))
message="Hello World! 你好,中国!"
s.send(message.encode()) #只能发送字节流需要用encode转码字符串成字节,不然无法发送文件

关于多线程等相关内容,请参考我在博客园上的博客:
https://www.cnblogs.com/JYLCSS/p/11006249.html
https://www.cnblogs.com/JYLCSS/p/11037227.html
https://www.cnblogs.com/JYLCSS/p/11070406.html