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抓取网页正文的源码
Jun 11 Python
简单的Python的curses库使用教程
Apr 11 Python
详解K-means算法在Python中的实现
Dec 05 Python
python实现冒泡排序算法的两种方法
Mar 10 Python
python3实现windows下同名进程监控
Jun 21 Python
解决Python2.7中IDLE启动没有反应的问题
Nov 30 Python
python3实现指定目录下文件sha256及文件大小统计
Feb 25 Python
Python2与Python3的区别实例分析
Apr 11 Python
如何使用Python自动控制windows桌面
Jul 11 Python
利用keras加载训练好的.H5文件,并实现预测图片
Jan 24 Python
python中的错误如何查看
Jul 08 Python
Python基于unittest实现测试用例执行
Nov 25 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 visitFile()遍历指定文件夹函数
2010/08/21 PHP
实现PHP框架系列文章(6)mysql数据库方法
2016/03/04 PHP
学习PHP的数组总结【经验】
2016/05/05 PHP
在JS中最常看到切最容易迷惑的语法(转)
2010/10/29 Javascript
用JQUERY增删元素的代码
2012/02/14 Javascript
关于使用 jBox 对话框的提交不能弹出问题解决方法
2012/11/07 Javascript
jsPDF导出pdf示例
2014/05/02 Javascript
form.submit()不能提交表单的错误原因及解决方法
2014/10/13 Javascript
推荐一个自己用的封装好的javascript插件
2015/01/29 Javascript
纯javascript制作日历控件
2015/07/17 Javascript
js实现可折叠展开的手风琴菜单效果
2015/09/07 Javascript
JavaScript多并发问题如何处理
2015/10/28 Javascript
jQuery实现点击任意位置弹出层外关闭弹出层效果
2016/10/19 Javascript
详解vue过滤器在v2.0版本用法
2017/06/01 Javascript
使用angular帮你实现拖拽的示例
2017/07/05 Javascript
Angular+Bootstrap+Spring Boot实现分页功能实例代码
2017/07/21 Javascript
Angular2实现组件交互的方法分析
2017/12/19 Javascript
Vue+webpack项目基础配置教程
2018/02/12 Javascript
[01:55]2014DOTA2国际邀请赛 BBC正赛第一天总结
2014/07/10 DOTA
selenium3+python3环境搭建教程图解
2018/12/07 Python
实例详解Matlab 与 Python 的区别
2019/04/26 Python
Django REST框架创建一个简单的Api实例讲解
2019/11/05 Python
python列表推导式入门学习解析
2019/12/02 Python
爬虫代理池Python3WebSpider源代码测试过程解析
2019/12/20 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
Python调用jar包方法实现过程解析
2020/08/11 Python
Application Cache未缓存文件无法访问无法加载问题
2014/05/31 HTML / CSS
Fairyseason:为个人和批发商提供女装和配件
2017/03/01 全球购物
2014年党风建设工作总结
2014/11/19 职场文书
公司仓管员岗位职责
2015/04/01 职场文书
2015年优质护理服务工作总结
2015/04/08 职场文书
优秀乡村医生事迹材料(2016精选版)
2016/02/29 职场文书
2016年第29个世界无烟日宣传活动总结
2016/04/06 职场文书
一篇文章弄懂MySQL查询语句的执行过程
2021/05/07 MySQL
Python数据分析入门之教你怎么搭建环境
2021/05/13 Python
SQLServer中exists和except用法介绍
2021/12/04 SQL Server