UDP 發送數據代碼:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
功能:UDP發送數據
環境:python3.7
日期:2019/8/21 20:56
作者:指尖魔法師
版本:1.0
"""
import socket
DES_IP = "192.168.31.234"
DES_PORT = 8001
# UDP發數據
def send_msg():
# 1.創建套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 2.發送數據
while True:
msg = input('Input Send-Data:')
if msg == "exit":
break
udp_socket.sendto(msg.encode('utf-8'), (DES_IP, DES_PORT))
# 3.關閉socket
udp_socket.close()
def main():
send_msg()
if __name__ == '__main__':
main()
UDP 接收數據代碼:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
功能:UDP接受數據簡單示例
環境:python3.7
日期:2019/8/21 20:56
作者:指尖魔法師
版本:1.0
"""
import socket
LOCAL_ADDR = ('', 8001)
# UDP接收數據
def recv_msg():
# 1.創建套接字
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 2.綁定本地相關信息,IP一般不用填寫,表示本機的任意一個IP
udp_socket.bind(LOCAL_ADDR)
while True:
# 3.接受數據
recv_data = udp_socket.recvfrom(1024)
msg_data = recv_data[0].decode('gbk')
msg_fromip = recv_data[1][0]
msg_fromport = recv_data[1][1]
# 4.打印數據
print("來自[%s : %s]的消息:%s" % (msg_fromip, msg_fromport, msg_data))
# 5.關閉socket
udp_socket.close()
def main():
recv_msg()
if __name__ == '__main__':
main()