python聊天程序实例代码分享


Posted in Python onNovember 18, 2013

代码简单,直接看代码吧:

import socket
import threading
import re
#import Tkinter
def ser():
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    s.bind(('',33333))
    s.listen(1)
    conn,addr=s.accept()
    while True:
        print '[%s:%d] send a message to me: %s'%(addr[0],addr[1],conn.recv(1024))
    s.close()
def clt():
    c=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    ip_pattern=re.compile(r'^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$')
    while True:
        ip=raw_input('Input the Server\'s IPv4 address:')
        ip_match=ip_pattern.match(ip)
        if ip_match:
            break
    c.connect((ip,33333))
    while True:
        sms=raw_input('Input the message you want to send:')
        c.sendall(sms)
    c.close()
if __name__=="__main__":
    ser=threading.Thread(target=ser)
    clt=threading.Thread(target=clt)
    ser.start()
    clt.start()
    ser.join()
    clt.join()
Python 相关文章推荐
python解析html开发库pyquery使用方法
Feb 07 Python
Python统计文件中去重后uuid个数的方法
Jul 30 Python
Python 2.x如何设置命令执行的超时时间实例
Oct 19 Python
Python数据结构与算法之图的最短路径(Dijkstra算法)完整实例
Dec 12 Python
python如何派生内置不可变类型并修改实例化行为
Mar 21 Python
python顺序的读取文件夹下名称有序的文件方法
Jul 11 Python
python集合删除多种方法详解
Feb 10 Python
python线程join方法原理解析
Feb 11 Python
Python终端输出彩色字符方法详解
Feb 11 Python
matlab中imadjust函数的作用及应用举例
Feb 27 Python
python如何更新包
Jun 11 Python
Keras预训练的ImageNet模型实现分类操作
Jul 07 Python
python实现系统状态监测和故障转移实例方法
Nov 18 #Python
python线程池的实现实例
Nov 18 #Python
python批量导出导入MySQL用户的方法
Nov 15 #Python
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
Nov 15 #Python
python实现代理服务功能实例
Nov 15 #Python
Python(Tornado)模拟登录小米抢手机
Nov 12 #Python
Python3实现的腾讯微博自动发帖小工具
Nov 11 #Python
You might like
php.ini 配置文件的深入解析
2013/06/17 PHP
ThinkPHP查询语句与关联查询用法实例
2014/11/01 PHP
php反射学习之不用new方法实例化类操作示例
2019/06/14 PHP
JS 实现完美include载入实现代码
2010/08/05 Javascript
javascript的函数、创建对象、封装、属性和方法、继承
2011/03/10 Javascript
Javascript 倒计时源代码.(时.分.秒) 详细注释版
2011/05/09 Javascript
Javascript简单实现可拖动的div
2013/10/22 Javascript
javascript中的原型链深入理解
2014/02/24 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
JS解析XML文件和XML字符串详解
2015/04/17 Javascript
easyui Draggable组件实现拖动效果
2015/08/19 Javascript
基于jquery实现在线选座订座之影院篇
2015/08/24 Javascript
详解js中构造流程图的核心技术JsPlumb
2015/12/08 Javascript
基于jquery实现智能提示控件intellSeach.js
2016/03/17 Javascript
判断是否存在子节点的实现代码
2016/05/18 Javascript
Google 地图获取API Key详细教程
2016/08/06 Javascript
AngularJS 自定义过滤器详解及实例代码
2016/09/14 Javascript
BootStrap与Select2使用小结
2017/02/17 Javascript
vue.js 实现a标签href里添加参数
2019/11/12 Javascript
Vue自定义表单内容检查rules实例
2020/10/30 Javascript
Python 稀疏矩阵-sparse 存储和转换
2017/05/27 Python
tensorflow获取变量维度信息
2018/03/10 Python
numpy 进行数组拼接,分别在行和列上合并的实例
2018/05/08 Python
python执行精确的小数计算方法
2019/01/21 Python
python调用外部程序的实操步骤
2019/03/04 Python
ZABBIX3.2使用python脚本实现监控报表的方法
2019/07/02 Python
python不使用for计算两组、多个矩形两两间的iou方式
2020/01/18 Python
python列表切片和嵌套列表取值操作详解
2020/02/27 Python
HTML5上传文件显示进度的实现代码
2012/08/30 HTML / CSS
加拿大奢华时装品牌:Mackage
2018/01/10 全球购物
意大利香水和化妆品购物网站:Parfimo.it
2019/10/06 全球购物
杭州-DOTNET笔试题集
2013/09/25 面试题
AJAX的全称是什么
2012/11/06 面试题
房地产财务经理岗位职责
2015/04/08 职场文书
2015年全国爱眼日活动方案
2015/05/05 职场文书
Win10本地连接不见了怎么恢复? win10系统电脑本地连接不见了解决方法
2023/01/09 数码科技