自己做实验(安装了虚拟机的或者有多余的电脑)的话可以下载一个网络链接小助手。在本地系统上写程序,在实验系统上下载网络 小助手。
大概框架是这个样子的:
在运行程序之前,你首先要做的是确保你要连接套接字的电脑与你的电脑能够ping通。也就是说确保你们在同一个网段里。
所有准备工作都做完了,最后在敲代码就简单很多了:
import socket
def main():
while True:
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
send_data = input("请输入:")
if send_data == "exit":
break
udp_socket.sendto(send_data.encode("utf-8"),('192.168.43.90',8080))
udp_socket.close()
if __name__ == '__main__':
main()
首先导入创建套接字的模块socket , 用一个循环来持续做到发送套接字消息,除非输入exit退出。效果图大概是这样:
输入exit后退出:
》》》》》》》》》笔记:
一,udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
因为导入的是整个模块而非from … import部分导入,所以在使用模块里的socket类时,前面要加上模块名(socket),其中两个参数分别表示 当前套接字所用网络类型,和所用传输协议。(socket.AF_INET表示IPv4,socket.SOCK_DGRAM表示所用传输层协议为udp)
二,udp_socket.sendto(send_data.encode(“utf-8”),(‘192.168.43.90’,8080))
发送数据所用方法为sendto( 数据内容 , 目的地址与端口 )
第一个参数:因为input从键盘接入的数据为字符串,所以需要用encode()解码为字节序。
第二个参数:端口号可以在网络接口助手上自己设置(大于1024即可),IP地址即为实验电脑IP
三, udp_socket.close()
套接字使用完毕后需要关闭套接字,防止端口资源浪费。