python群聊聊天室程序_Python聊天室程序(基础版)
本文实例为大家分享了Python聊天室程序的具体代码,供大家参考,具体内容如下
客户端代码:
# Filename: socketClient.py
import socket
import sys
import threading
# Client GUI
from tkinter import *
import Pmw
# Create a TCP/IP socket
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# Connect the socket to the port where the server is listening
server_address = ('localhost',10000)
print (sys.stderr,'connecting to %s port %s' % server_address)
sock.connect(server_address)
root = Tk()
# textDisplay
textDisplay = Pmw.ScrolledText(root)
textDisplay.pack(expand=1,padx=5,pady=5,side = LEFT)
# textInput
textInput = Pmw.ScrolledText(root)
textInput.pack(expand=1,side = LEFT)
# Send Button and its callback
def sendMsg(event):
message = socket.gethostname()+':'+ textInput.get()
#print (sys.stderr,'sending "%s"' % message)
print(message)
sock.sendall(message.encode())
textInput.clear()
#data = sock.recv(100)
#textDisplay.insert(END,data)
#print (sys.stderr,'received "%s"' % data)
sendBtn = Button(root,text="Send")
sendBtn.bind('',sendMsg)
sendBtn.pack(side = LEFT)
def receiveMsg():
while True:
data = sock.recv(100)
print (sys.stderr,'client received "%s"' % data)
textDisplay.insert(END,data)
receiveThread = threading.Thread(name='waitForMSG',target=receiveMsg)
receiveThread.start()
root.mainloop()
服务器端代码:
# Filename: socketServer.py
import socket
import sys
# Create a TCP/IP socket
sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
# Bind the socket to the port
server_address = ('localhost','starting up on %s port %s' % server_address)
sock.bind(server_address)
# Listen for incoming connections
sock.listen(1)
while True:
# Wait for a connection
print (sys.stderr,'waiting for a connection')
connection,client_address = sock.accept()
try:
print (sys.stderr,'connection from',client_address)
# Receive the data in small chunks and retransmit it
while True:
data = connection.recv(16)
print (sys.stderr,'received "%s"' % data)
if data:
print (sys.stderr,'sending data back to the client')
connection.sendall(data)
else:
print (sys.stderr,'no data from',client_address)
break
finally:
# Clean up the connection
connection.close()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
python群聊聊天室程序_Python聊天室程序(基础版)相关推荐
- python群聊聊天室程序_Python聊天室程序---基础
客户端代码: # Filename: socketClient.py import socket import sys import threading # Client GUI from tkint ...
- python俄罗斯方块代码34行_python turtle实现俄罗斯方块 基础版
本项目通过python自带库tkinter实现,无需安装第三方库 本项目基于python3版本开发(如果你的是python2.x,运行可能会有问题) 一.基础界面 1 搭建基础窗体 使用tkinter ...
- python迷宫小游戏代码_Python迷宫游戏(基础版)
# 画地图 map_data = [ [1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 2, 1, 0, 0, 0 ...
- Linux-Socket实现模拟群聊(多人聊天室)
Linux-Socket实现模拟群聊(多人聊天室) 简单版本 服务端源码 #include<stdio.h> #include<stdlib.h> #include<pt ...
- 微信小程序websocket聊天室
背景 最近做了一个微信小程序的即时通讯功能,之前我也做过node.js的websocket服务,不过是在web端应用的socket.io服务.小程序本身对http.websocket等连接均有诸多限制 ...
- 微信小程序聊天功能PHP,微信小程序实现聊天室
本文实例为大家分享了微信小程序实现聊天室的具体代码,供大家参考,具体内容如下 正文: 登录 查看详情 {{item}} {{item.messageTime}} {{item.text}} {{ite ...
- Python用tornado的websocket开发聊天室
Python用tornado的websocket开发聊天室 用tornado开发基于异步websocket聊天室-demo 目录结构 Python包 main.py app/views.py temp ...
- 网络编程基础_5.3聊天室-多人聊天室
聊天室-多人聊天室 #include <stdio.h>// 1. 包含必要的头文件和库, 必须位于 windows之前 #include <WinSock2.h> #prag ...
- 聊天室程序python_Python聊天室程序(基础版)_python
这篇文章主要为大家详细介绍了Python聊天室程序的基础版,包含客户端和服务器端两部分,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Python聊天室程序的具体代码,供大家参 ...
最新文章
- C++通过vmware.exe检测虚拟机
- boost::detail::invoke相关的测试程序
- opengl三维图形绘制_Python matplotlib绘图示例 - 绘制三维图形
- Python函数式编程简介(一)高阶函数
- Ruby Web实时消息后台服务器推送技术---GoEasy
- celery java_Python的Java Celery项目相当于什么?
- 吴恩达深度学习5.2笔记_Sequence Models_自然语言处理与词嵌入
- python是否存在键_检查给定的键在Python的字典中是否已经存在
- Oracle常用操作【自己的练习】
- 数据库技术与应用课程设计-学生信息管理系统
- 【方法】Altera Cyclone系列的EP1C3T144C8N FPGA利用ALTASMI_PARALLEL IP核读写自身的EPCS Flash存储器
- 你需要一个什么样的网站开发流程?
- c语言怎么移位,C语言中的移位操作
- LC串联谐振的分析方法
- 安徽农业大学计算机考研分数线,安徽农业大学历年考研分数线汇总[2012-2021]
- 为知笔记登录提示“打开数据库失败”解决方法
- MATLAB无约束优化(UOM)
- 关于产品的一些思考——阿里巴巴之阿里旺旺
- mantis 重启mysql_Mantis -- linux
- 【数据库MySQL】2021最新官网下载及查看MySQL版本步骤教程