使用工具:
Ubuntu:vim
Ubuntu:Python 3.7
网络调试助手 netassist 3.7(windows版本)
前言:网络编程实现计算机之间的通信,通过 指定的协议实现数据的发送与接收,从而达到计算机之间的通信。
TCP/UDP协议,计算机实现通信要遵守的规则:
UDP协议简单但是不稳定,容易出现丢包的情况,而TCP相比UDP而言,比较复杂,稳定且数据不容易丢失。
以下代码在Python3.7环境实现。
UDP的使用:
使用UDP向指定网络位置发送数据:
import socket #导入包
def main():#定义函数
#1.创建一个套接字
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
#2向指定网络位置发送数据(b表示将数据转换为二进制,("192.168.188.1",8000)是个元组,表示数据的目的地IP及port)
udp_socket.sendto(b"haahahah",("192.168.188.1",8000))
#3关闭套接字
udp_socket.close()
#需要特别注意主函数的写法
if __name__=="__main__":
main()
手动输入即将发送的消息:
import socket
def main():
udp_socket = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
contents=input("input message")
#将需要发送的数据进行编码处理
udp_socket.sendto(contents.encode("UTF-8"),("192.168.188.1",8000))
udp_socket.close()
if __name__=="__main__":
main()
实现循环发送消息:
import socket
def main():
#可以使用Ctrl+c