Python基礎(chǔ)教程之tcp socket編程詳解及簡單實(shí)例
更新時間:2017年02月23日 11:01:30 投稿:lqh
這篇文章主要介紹了Python基礎(chǔ)教程之tcp socket編程詳解及簡單實(shí)例的相關(guān)資料,需要的朋友可以參考下
Python tcp socket編程詳解
初學(xué)腳本語言Python,測試可用的tcp通訊程序:
服務(wù)器:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
import threading
import time
def tcplink(sock, addr):
print('Accept new connection from %s:%s...' % addr);
sock.send(b'Welcome!!!');
while True:
data = sock.recv(1024);
time.sleep(1);
if not data or data.decode('utf-8') == 'exit':
break;
sock.send(b'Hello, %s!' % data);
sock.close();
print('Connection from %s:%s closed.' % addr);
if __name__ == "__main__":
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);
s.bind(('127.0.0.1', 9090));
s.listen(8); #監(jiān)聽8個客戶端;
print('waiting for connection...');
while True:
sock, addr = s.accept();
t = threading.Thread(target=tcplink, args=(sock,addr));
t.start();
客戶端:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);
s.connect(('127.0.0.1', 9090));
print(s.recv(1024).decode('utf-8'));
for data in [b'lk', b'aa', b'bb']:
s.send(data);
print(s.recv(1024).decode('utf-8'));
s.send(b'exit');
s.close();
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
您可能感興趣的文章:
相關(guān)文章
python paramiko利用sftp上傳目錄到遠(yuǎn)程的實(shí)例
今天小編就為大家分享一篇python paramiko利用sftp上傳目錄到遠(yuǎn)程的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01
python3.5 + PyQt5 +Eric6 實(shí)現(xiàn)的一個計(jì)算器代碼
這篇文章主要介紹了python3.5 + PyQt5 +Eric6 實(shí)現(xiàn)的一個計(jì)算器代碼,在windows7 32位系統(tǒng)可以完美運(yùn)行 計(jì)算器,有興趣的可以了解一下。2017-03-03
在django中使用自定義標(biāo)簽實(shí)現(xiàn)分頁功能
這篇文章主要介紹了在django中使用自定義標(biāo)簽實(shí)現(xiàn)分頁功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
使用python根據(jù)端口號關(guān)閉進(jìn)程的方法
今天小編就為大家分享一篇使用python根據(jù)端口號關(guān)閉進(jìn)程的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11
使用Python的Twisted框架實(shí)現(xiàn)一個簡單的服務(wù)器
這篇文章主要介紹了使用Python的Twisted框架實(shí)現(xiàn)一個簡單的服務(wù)器,翻譯自Twisted的文檔,需要的朋友可以參考下2015-04-04

