ホームページ >バックエンド開発 >Python チュートリアル >Pythonによるtcpソケットプログラミング例を詳しく解説

Pythonによるtcpソケットプログラミング例を詳しく解説

Y2J
Y2Jオリジナル
2017-05-08 16:41:121967ブラウズ

この記事では主にPython基本チュートリアルのtcpソケットプログラミングの詳細な説明と簡単な例を紹介しますので、必要な方は参考にしてください

Python tcpソケットプログラミングの詳細な説明

スクリプト言語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();

【関連推奨事項】

1. Python の無料ビデオチュートリアル

2. 3 Python の基本入門マニュアル

以上がPythonによるtcpソケットプログラミング例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。