
項(xiàng)目簡介:基于TCP的python聊天程序,將會(huì)涉及TCP/IP協(xié)議,Python網(wǎng)絡(luò)編程,PythonGUI編程(Tkinter)三個(gè)方面。
本項(xiàng)目由 AlbertWY 發(fā)布在 實(shí)驗(yàn)樓 ,完整教程及在線練習(xí)地址: 基于TCP的python聊天程序
一、介紹
1. 內(nèi)容簡介
我們將實(shí)現(xiàn)基于TCP協(xié)議的python聊天程序。我們會(huì)使用python的Socket模塊進(jìn)行通訊。 編寫簡易實(shí)現(xiàn)后我們還會(huì)使用python的Tkinter進(jìn)行GUI編程。
2. 知識(shí)點(diǎn)
通過通過本項(xiàng)目你將會(huì)了解到以下知識(shí)點(diǎn) :
TCP/IP協(xié)議
Python網(wǎng)絡(luò)編程
PythonGUI編程(Tkinter)
二、項(xiàng)目效果圖


三、實(shí)驗(yàn)環(huán)境
操作系統(tǒng) : Ubuntu 14.04
所需Python包 :Socket、Tkinter
四、實(shí)驗(yàn)原理
根據(jù)TCP協(xié)議,在在兩進(jìn)程之間建立通信 。
利用多線程創(chuàng)建GUI與Socket通信模塊 。
TCP/IP協(xié)議
TCP/IP不是一個(gè)協(xié)議,而是一個(gè)協(xié)議族的統(tǒng)稱。里面包括了IP協(xié)議,IMCP協(xié)議,TCP協(xié)議,以及我們更加熟悉的http、ftp、pop3協(xié)議等等。
TCP協(xié)議與UDP協(xié)議定義在傳輸層,IP協(xié)議定義在網(wǎng)絡(luò)層。
在之上的應(yīng)用層定義HTTP協(xié)議等。
TCP連接包括三個(gè)狀態(tài):連接創(chuàng)建、數(shù)據(jù)傳送和連接終止。操作系統(tǒng)將TCP連接抽象為套接字的編程接口給程序使用,并且要經(jīng)歷一系列的狀態(tài)改變。
我們將會(huì)使用python的套接字模塊進(jìn)行編程。