首页 > 其他分享 >套接字的定义与使用

套接字的定义与使用

时间:2022-10-13 17:32:41浏览次数:46  
标签:__ socket 一个套 tcp 使用 接字 main 定义


套接字:

     是可以实现不同主机进程通信的一种方式

套接字使用流程

    1、创建一个套接字

    2、使用套接字收发数据

    3、关闭套接字

   python代码演练:

      创建udp发送数据套接字

import socket

def main():
"""
创建一个套接字
:return:
"""
# 创建一个套接字
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
# 绑定端口
udp_socket.bind(("192.168.0.100",6677))
# 使用套接字收发数据
udp_socket.sendto(b"hahaha",("192.168.0.100",7788))
# 关闭套接字
udp_socket.close()

if __name__ == '__main__':
main()

 创建udp接收数据套接字

# coding=UTF-8
import socket
def main():
"""
# 创建一个套接字接收数据
:return:
"""
# 创建一个套接字
receive_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
# 绑定端口 发数据套接字可以不绑定端口,接收数据套接字要绑定端口
localaddr = ("",7788)
receive_socket.bind(localaddr)
# 接收数据
recv_data = receive_socket.recvfrom(1024)
print(recv_data)
recv_msg = recv_data[0]
print(recv_msg.decode("UTF-8"))
# 关闭套接字
receive_socket.close()

if __name__ == '__main__':
main()

tcp服务器demo

import socket

def main():
# 创建一个套接字
tcp_server_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 绑定IP
tcp_server_socket.bind(("127.0.0.1",8080))
# 让默认的套接字由主动变成被动
tcp_server_socket.listen(128)
# 等待客户端的连接 返回值是一个元组
# client_socket是为连接的客户端新创的一个套接字
# client_addr是客户端连接的地址,格式为元组,包括IP与port
client_socket,client_addr = tcp_server_socket.accept()
# 接收客户端发送来的数据
client_msg = client_socket.recv(1024)
# 发送数据
client_socket.send("msg".encode("utf-8"),)
# 关闭客户端
tcp_server_socket.close()

if __name__ == '__main__':
main()

tcp客户端demo

import  socket


def main():
# 创建一个套接字
tcp_socket = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# 链接一个服务器
tcp_socket.connect(("127.0.0.1",8080))
# 接收数据,
tcp_socket.recv(1024)
# 发送数据
tcp_socket.send("msg")
# 关闭套接字
tcp_socket.close()

if __name__ == '__main__':
main()

 

标签:__,socket,一个套,tcp,使用,接字,main,定义
From: https://blog.51cto.com/u_15828115/5754443

相关文章