网络编程

用socket进行ip之间的收发数据
>仅仅接收
import socket
# 创建socket对象
server = socket.socket(family=socket.AF_INET, type=socket.SOCK_DGRAM)
# 准备接受的地址IP和端口
server.bind(("192.168.11.130", 8888))
while True:
    (msg, address) = server.recvfrom(1024)
    # 两个返回值 1:消息 2:发送端IP
    print(msg.decode("utf-8"))
# 关闭资源
server.close()

>仅仅发送
import socket

udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 准备发送到的地址
address = ("192.168.11.130", 8888)
while True:
    msg = input(">>").encode("utf-8")
    udp.sendto(msg, address)
udp.close()

>发送一次接受一次
import socket
charset = "utf-8"
udp = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
udp.bind(("", 8888))

try:
    while True:
        msg = input("请发送数据:》》")
        udp.sendto(msg.encode(charset),("192.168.11.132", 8888))
        (recive, addre) = udp.recvfrom(1024)
        print("接受到:%s 来自:%s" % (recive.decode(charset), addre))
finally:
    udp.close()

>接受一次发送一次
import socket
charset = "utf-8"
udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
udp.bind(("", 8888))

try:
    print("正在等待消息。。。。。")
    while True:
        (recive, addre) = udp.recvfrom(1024)
        # print(udp.recvfrom(1024))
        # print(recive.decode(charset))
        # print(addre)
        print("接受到:%s 来自:%s" % (recive.decode(charset), addre))
        msg = input("请发数据:》》")
        if msg == "quit":
            break
        udp.sendto(msg.encode(charset),("192.168.11.132", 8888))
finally:
    udp.close()


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 计算机网络概述 网络编程的实质就是两个(或多个)设备(例如计算机)之间的数据传输。 按照计算机网络的定义,通过一定...
    蛋炒饭_By阅读 1,250评论 0 10
  • Socket编程 1基础知识 协议 端口号(辨别不同应用) TCP/IP协议 是目前世界上应用最广泛的协议是以TC...
    __豆约翰__阅读 1,105评论 0 3
  • 网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编...
    程序员欧阳阅读 2,045评论 1 37
  • 6.1 公钥密钥加密原理 6.1.1 基础知识 密钥:一般就是一个字符串或数字,在加密或者解密时传递给加密/解密算...
    AndroidMaster阅读 4,037评论 1 8
  • 引言 网络学习的核心内容就是网络协议的学习 网络协议:网络中进行数据交换而建立的规则、标准或者说是约定的集合因为不...
    _凉风_阅读 2,097评论 8 22