首页
学习
活动
专区
圈层
工具
发布

Python中socket的UDP学习(2)

昨天学习了接收数据,今天学习发送数据!

一样的导入socket包

代码语言:javascript
复制
import socket

这里不一样的地方,可以直接指定对方的IP以及端口

我这里使用的是手动输入

收发双方的端口号要相同!不然无法接收数据!

socket.gethostname() 获取本机的名字。

代码语言:javascript
复制
    # 发送数据    ip = input("输入对方的ip:")    port = int(input("输入对方的端口:"))    # ip_port = (socket.gethostname(), 9999)    #ip_port = ("192.168.3.253", 9999)    ip_port = (ip, port)

如果要退出就输入quit,

还有个需要注意的地方就是,如果发送空白数据会出现问题。

代码语言:javascript
复制
    while True:        date = input("请输入要发送的数据:")        if date == "quit":            break        else:            socket_udp.sendto(date.encode("utf-8"), ip_port)

加上昨天的发的可以实现一收一发了。

可以玩个简单的聊天功能

代码语言:javascript
复制
import socket
def main():    # 创建套接字    socket_udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    # 发送数据    ip = input("输入对方的ip:")    port = int(input("输入对方的端口:"))    # ip_port = (socket.gethostname(), 7890)    #ip_port = ("192.168.3.253", 7890)    ip_port = (ip, port)
    while True:        date = input("请输入要发送的数据:")        if date == "quit":            break        else:            socket_udp.sendto(date.encode("utf-8"), ip_port)
    # 关闭连接    socket_udp.close()
if __name__ == "__main__":    main()
下一篇
举报
领券