-
大小: 2.48KB文件類型: .rar金幣: 1下載: 0 次發(fā)布日期: 2021-01-30
- 語言: Python
- 標(biāo)簽: 聊天室??網(wǎng)絡(luò)??聊天??
資源簡介
本實(shí)例通過tk socket實(shí)現(xiàn)簡單的網(wǎng)絡(luò)聊天室
代碼片段和文件信息
import?tkinter
import?socket?threading
win?=?tkinter.Tk()??#?創(chuàng)建主窗口
win.title(‘模擬服務(wù)器‘)
win.geometry(“400x400+200+20“)
users?=?{}#用戶字典,也可以連接數(shù)據(jù)庫
def?run(ck?ca):
????userName?=?ck.recv(1024)#接受客戶端發(fā)送的信息以1k作為單位這里接受到的信息為byte類型
????users[userName.decode(“utf-8“)]?=?ck#解碼并儲存用戶的信息
????#print(users)
????printStr?=?““?+?userName.decode(“utf-8“)?+?“連接\n“#在連接顯示框中顯示是否連接成功
????text.insert(tkinter.INSERT?printStr)
????while?True:
????????rData?=?ck.recv(1024)#接受客戶端發(fā)送的信息以1k作為單位這里接受到的信息為byte類型
????????dataStr?=?rData.decode(“utf-8“)
????????infolist?=?dataStr.split(“:“)#分割字符串從而得到所要發(fā)送的用戶名和客戶端所發(fā)送的信息
????????users[infolist[0]].send((userName.decode(“utf-8“)?+?“說“?+?infolist[1]).encode(“utf“))
????????#要發(fā)送信息的客戶端向目標(biāo)客戶端發(fā)送信息
def?start():
????ipStr?=?eip.get()#從輸入端中獲取ip
????portStr?=
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???????2277??2019-08-15?22:52??8.網(wǎng)絡(luò)聊天室客戶端.py
?????文件???????2909??2019-08-15?22:51??7.網(wǎng)絡(luò)聊天室服務(wù)端.py
-----------?---------??----------?-----??----
?????????????????5186????????????????????2
評論
共有 條評論