06-udp网络程序-发送数据¶
目标¶
-
知道使用 socket 的 sendto 方法能够发送数据
-
知道使用 encode 方法能够对待发送数据进行编码
1. udp网络程序-发送数据¶
2.实现效果¶
在windows中运行 “网络调试助手”
点击:“连接网络”
3.实现步骤及核心方法介绍¶
3.1 实现步骤:¶
- 导入模块socket
- 创建socket套接字
- 发送数据
- 关闭套接字
3.2 核心方法:¶
-
UDP 发送数据使用的 3 个方法方法:
-
socket.socket
—— 建立套接字""" socket 参数说明 1. socket.AF_INET 表示 IPv4 地址 2. socket.SOCK_DGRAM 表示使用 UDP 协议传输数据 """ udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
-
socket.sendto
—— 发送数据""" sendto 参数说明 1. 要发送的二进制数据 2. 元组类型,指定把 (参数 1 的数据) 发送给谁 (ip 地址字符串,端口数值) """ udp_socket.sendto("你好".encode(), ("127.0.0.1", 8888))
-
socket.close
—— 关闭套接字# 4. 关闭套接字(close) udp_socket.close()
4.参考代码¶
#coding=utf-8
# 导入socket模块
import socket
# 判断模块是否是程序的入口,判断整个模块是否是主模块
if __name__ == '__main__':
# 创建socket
# AF_INET 表示ip地址,也是internet互联网
# SOCK_DGRAM 表示使用udp 协议
udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 设置内容
send_content = "哈哈,我来自火星!~"
# 把文本内容转码,转成二进制数据
send_data = send_content.encode("utf-8")
# 发送数据
# ("192.168.31.221", 8080) 接收数据方ip地址和端口
udp_socket.sendto(send_data, ("192.168.31.221", 8080))
# 关闭数据
udp_socket.close()
运行结果:
在pycharm中运行脚本:
在windows中运行“网络调试助手”: