python聊天程序实例代码分享

yipeiwu_com6年前Python基础

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

复制代码 代码如下:

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实现几种归一化方法(Normalization Method)

python实现几种归一化方法(Normalization Method)

数据归一化问题是数据挖掘中特征向量表达时的重要问题,当不同的特征成列在一起的时候,由于特征本身表达方式的原因而导致在绝对数值上的小数据被大数据“吃掉”的情况,这个时候我们需要做的就是对抽...

python如何实现反向迭代

本文实例为大家分享了python实现反向迭代的具体代码,供大家参考,具体内容如下 案例:        实现一个连续的浮点数...

python3.4控制用户输入与输出的方法

一、输入 1.函数格式:input() 2.函数功能:接受一个标准输入数据,返回string类型。ctrl+z结束输入。 3.实例: 默认input():等待一个任意字符的输入 s...

Python实现字符串格式化的方法小结

Python2.6+ 增加了str.format函数,用来代替原有的'%'操作符。它使用比'%'更加直观、灵活。下面详细介绍一下它的使用方法。 下面是使用'%'的例子: "" "P...

python将txt文件读入为np.array的方法

原文件: 7.8094,1.0804,5.7632,0.012269,0.008994,-0.003469,-0.79279,-0.064686,0.11635,0.68827,5....