码迷,mamicode.com
首页 > 编程语言 > 详细

python网络编程——实现简单聊天

时间:2018-11-09 19:22:55      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:reading   close   处理   网络   tcpl   end   recv   put   str   

通过socket建立简单的聊天工具

server.py

import socket
import threading
import time

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((ip.*.*.*, 9999))
s.listen(5)
print(Waiting for connection...)

def tcplink(sock, addr):
    print(Accept new connection from %s:%s... % addr)
    sock.send(bWelcome!)
    while True:
        data = sock.recv(1024)
        time.sleep(1)
        if not data or data.decode(utf-8) == exit:
            break
        print(Client:%s%data.decode(utf-8))
        sock.send((Server:%s% input()).encode(utf-8))
    sock.close()
    print(Connection from %s:%s closed. % addr)

while True:
    # 接受一个新连接:
    sock, addr = s.accept()
    # 创建新线程来处理TCP连接:
    t = threading.Thread(target=tcplink, args=(sock, addr))
    t.start()

client.py

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 建立连接:
s.connect((ip.*.*.*, 9999))
# 接收欢迎消息:
print(s.recv(1024).decode(utf-8))
while True:
    msg=input()
    # 发送数据:
    s.send(msg.encode(utf-8))
    print(s.recv(1024).decode(utf-8))
    if msg ==exit:
       break
s.send(bexit)
s.close()

 

python网络编程——实现简单聊天

标签:reading   close   处理   网络   tcpl   end   recv   put   str   

原文地址:https://www.cnblogs.com/wangbin2188/p/9936512.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!