socket tcp 服务器 | socket tcp 客户端

# ### socket 服务器
import socket
# 创建一个socket对象
sk = socket.socket()
# 绑定ip和端口(注册网络,让别人找到你)
# "127.0.0.1" 默认本机的ip
sk.bind(  ("127.0.0.1",9000)  )
# 开启监听 (等待别人连接服务器)
sk.listen()

'''
# 建立三次握手,建立连接 , 程序加了阻塞 ,
建立三次握手如果失败,程序不往下执行
'''
conn,addr = sk.accept()
print(conn,addr)
# 最大一次性接受1024个字节.程序再次加了阻塞,没有接收到数据,不会向下执行代码
msg = conn.recv(1024)
# 把字节流恢复成正常的字符串(解析字节流变成字符串)
print(msg.decode("utf-8"))

# 发送给客户端数据
conn.send(" 我真的好哟".encode("utf-8"))


# 执行四次挥手,断开连接
conn.close()
# 关闭socket对象,退还占用的端口号
sk.close()








# ###socket 客户端

import socket

# 产生一个socket对象
sk = socket.socket()
sk.connect( ("127.0.0.1",9000) )

# 发送消息 (发送的是二进制字节流)
sk.send("你好么,我好哟".encode("utf-8"))

# 接受消息 (发送完之后,程序加阻塞,等待服务器回应的数据,最大接受1024个字节)
res = sk.recv(1024)
strvar = res.decode("utf-8")
print(strvar)

# 关闭连接
sk.close()

  

  

猜你喜欢

转载自www.cnblogs.com/huangjiangyong/p/10960898.html