猫史档案馆


辣椒爆炒蔡徐坤

辣椒爆炒蔡徐坤

Lv.1

瞎鸡把

获赞:0收藏:0浏览:0作品收藏:0
回复帖子评论
上一页1 页 / 共 1下一页

【Python作品分享】基于UDP协议的网络聊天室【作品秀】 中回复

UDP通信协议的客户端服务器没有划分的那么细

2019-10-26T19:37:31 点赞:0

【Python作品分享】基于UDP协议的网络聊天室【作品秀】 中回复

def car_bot(in_msg):
import random
car_dict = {"奔驰": "真有钱", "宝马": "牛!"}
if in_msg in car_dict.keys():
return car_dict[in_msg]
else:
reply = ['你说什么?',
'你说得对!'
'是不是你哪里写错了?',
'好吧!',
'我叫小i,你呢?']
return random.choice(reply)


import socket

print('This is sever_bot.')
local_addr = ('localhost', 20000) # 本地主机接受端口
# 创建socket对象,DGRAM方式,专门用于发送
ss = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# socket对象绑定地址及端口
ss.bind(local_addr)

while 1:
# 通过socket接收消息和地址
in_msg, rec_addr = ss.recvfrom(1024)
if in_msg:
print("from:", rec_addr)
# 通过socket向远程主机发消息
echo = car_bot(in_msg.decode())
ss.sendto("hahahhahahah".encode("utf-8"),("192.168.232.1",20000))

ss.close()

2019-10-26T20:14:57 点赞:0

【Python作品分享】基于UDP协议的网络聊天室【作品秀】 中回复

#服务器
import socket
import random
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind(("", 7890))
reply = ['11',
         '22'
         '33',
         'OK',
         'Are you?']
reply_randoms = random.choice(reply)
print("This is a server")
while 1:
    text,ip = s.recvfrom(1024)
    if text:
        print("from:",ip)
    s.sendto(reply_randoms.encode("gbk"),("192.168.232.1",8080))
s.close()

2019-10-26T21:14:26 点赞:0

【Python作品分享】基于UDP协议的网络聊天室【作品秀】 中回复

#客户端
import socket
print('小i: 你好,我是小i,有什么可以帮您?')
ss = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
ss.bind(("",8080))
while 1:
    sendData = input("发送:")
    if sendData == "quit":
        break
    else:
        ss.sendto(sendData.encode("gbk"),("192.168.232.1",7890))
        se,sa = ss.recvfrom(1024)
        print(se,sa)

2019-10-26T21:14:44 点赞:0