python实现局域网内实时通信代码

yipeiwu_com6年前Python基础

使用场景,本地服务器一直在运算数据,实时发送这些数据给客户端,本地局域网内其他客户,可以实时连接服务器,获取服务器数据,互不影响。

python2服务端

#-*- coding:utf-8 -*-
__author__ = 'xiaomei'
 
import socket
import SocketServer
HOST = '192.168.0.105'  #服务器的IP
PORT = 15681  #设置端口
class MyServer(SocketServer.BaseRequestHandler):
 
  def handle(self):
     while True:
       client = self.request
       print('客户已链接')
       #buf = client.recv(1024)
       #print('接收到的',buf)
       try:
         client.send("11")#要发送的数据,类型为str。若要发送字典、列表可以用json.dumps转换
       except:
         print('socket.error')
         return
server = SocketServer.ThreadingTCPServer((HOST, PORT), MyServer)
server.serve_forever()

python2客户端

#-*- coding:utf-8 -*-
__author__ = 'xiaomei'
 
import socket
 
s = socket.socket()
host = '192.168.0.105'  #服务器的IP
port = 15681  #服务器的端口
 
s.connect((host,port))
 
while True:
  try:
    received = s.recv(1024)#接收的数据类型为str,若传过来的是字典或列表可以用json.loads转换
    print(received)
  except:
    print('error')

以上这篇python实现局域网内实时通信代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

实例解析Python设计模式编程之桥接模式的运用

实例解析Python设计模式编程之桥接模式的运用

我们先来看一个例子: #encoding=utf-8 # #by panda #桥接模式 def printInfo(info): print unicode(i...

Python基于递归算法求最小公倍数和最大公约数示例

本文实例讲述了Python基于递归算法求最小公倍数和最大公约数。分享给大家供大家参考,具体如下: # 最小公倍数 def lcm(a, b, c=1): if a * c % b...

浅析Python中元祖、列表和字典的区别

1、列表(list)   list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。   列表中的项目应该包括在方括号中,这样Python就知道你是指明一个列表。一旦...

让代码变得更易维护的7个Python库

随着软件项目进入“维护模式”,对可读性和编码标准的要求很容易落空(甚至从一开始就没有建立过那些标准)。然而,在代码库中保持一致的代码风格和测试标准能够显著减轻维护的压力,也能确保新的开发...

简单介绍python封装的基本知识

简单介绍python封装的基本知识

python封装简介 1.效果图:   对比一:   对比二: 2.学习来源代码: # 封装是面向对象的三大特性之一 # 封装指的是隐藏对象中一些不希望被外部所访问到的属性或方...