Python基礎教程之tcp socket編程詳解及簡單一實例,python基礎教程

來源:互聯網
上載者:User

Python基礎教程之tcp socket編程詳解及簡單一實例,python基礎教程

Python tcp socket編程詳解

初學指令碼語言Python,測試可用的tcp通訊程式:

伺服器:

#!/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); #監聽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(); 

感謝閱讀,希望能協助到大家,謝謝大家對本站的支援!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.