この記事では主にPythonネットワークプログラミングにおけるTCPソケットの簡単な使い方を紹介しますので、必要な方は参考にしてください
この記事ではPythonネットワークプログラミングにおけるTCPソケットの簡単な使い方について説明します。参考までに、詳細は以下の通りです:
私はこれまでPythonを学んだことがなかったので、Javaについては少ししか知りません、そしてCを書くのは面倒です。 , そのため、TCP ソケット プログラミングを実際に実装したことはありません。
私は最近 Python を学びました。それを使用してソケットを記述するのは非常に便利で簡単なので、もちろん試してみる必要があります。
以下は、コードに基づいた最も単純な tcp プログラムの紹介です。クライアントはデータを入力してサーバーに送信し、サーバーは時間を追加してクライアントに返します
#!/usr/bin/python 'test TCP server' from socket import * #套接字所需要的模块 from time import ctime #时间模块 HOST = '' #主机名,为空,表示可以绑定在任何有效的地址上。 PORT = 21567 #随机选的可用端口 BUFSIZ = 1024 #发送数据的缓冲区 ADDR = (HOST, PORT) tcpSerSock = socket(AF_INET, SOCK_STREAM) #第一个参数是socket_family,此处用常用的AF_INET,第二个参数是流套接字,即创建的是tcp tcpSerSock.bind(ADDR) #套接字与地址绑定 tcpSerSock.listen(5) #开始监听,参数表示允许的最大连接数 while True: print 'waiting for connection...' tcpCliSock, addr = tcpSerSock.accept() #打开大门等待客人,accept返回一个元组(connection,address)。第一个元素是新的socket对象,服务器必须通过它与客户通信;第二个是客户的地址。 print '...connected from:',addr while True: data = tcpCliSock.recv(BUFSIZ) #洗耳恭听,把客人的话记录到data中 if not data: #客人话说完了,送客 break tcpCliSock.send('[%s] %s' %(ctime(), data)) #发送当前时间,以及数据给客人 tcpCliSock.close() #送客,关闭与该客人通信的套接字 tcpSerSock.close() #因为上面是死循环,此处不是必须的,只是提醒大家离开的时候务必要关门!
2 つのソケットがあります。上記で使用した場合、最初の tcpSerSock はウェルカム ソケットと呼ばれ、2 番目の tcpCliSock はクライアントとの通信を実際に担当するソケットです。この利点は、サーバーが同時に複数のゲストを受信できることです。
以下は非常にシンプルなクライアントコードです:
#!/usr/bin/python 'test tcp client' from socket import * HOST = 'localhost' #因为我是在同一台机器上运行,所以是localhost,不同主机的话,此处需要改成服务器地址 PORT = 21567 BUFSIZ = 1024 ADDR = (HOST, PORT) tcpCliSock = socket(AF_INET, SOCK_STREAM) #客户端只需要一个套接字 tcpCliSock.connect(ADDR) #发起连接 while True: data = raw_input('>') tcpCliSock.send(data) #发送数据 if not data: break data = tcpCliSock.recv(BUFSIZ) #接收数据 print data tcpCliSock.close()
関連する推奨事項:
Pythonネットワークプログラミングで関数のまとめが到着しました
以上がPython ネットワーク プログラミングでの TCP ソケットの簡単な使用法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Arraysinpython、特にvianumpy、arecrucialinscientificComputing fortheirefficienty andversitility.1)彼らは、fornumericaloperations、data analysis、andmachinelearning.2)numpy'simplementation incensuresfasteroperationsthanpasteroperations.3)arayableminablecickick

Pyenv、Venv、およびAnacondaを使用して、さまざまなPythonバージョンを管理できます。 1)Pyenvを使用して、複数のPythonバージョンを管理します。Pyenvをインストールし、グローバルバージョンとローカルバージョンを設定します。 2)VENVを使用して仮想環境を作成して、プロジェクトの依存関係を分離します。 3)Anacondaを使用して、データサイエンスプロジェクトでPythonバージョンを管理します。 4)システムレベルのタスク用にシステムPythonを保持します。これらのツールと戦略を通じて、Pythonのさまざまなバージョンを効果的に管理して、プロジェクトのスムーズな実行を確保できます。

numpyarrayshaveveraladvantages-averstandardpythonarrays:1)thealmuchfasterduetocベースのインプレンテーション、2)アレモレメモリ効率、特にlargedatasets、および3)それらは、拡散化された、構造化された形成術科療法、

パフォーマンスに対する配列の均一性の影響は二重です。1)均一性により、コンパイラはメモリアクセスを最適化し、パフォーマンスを改善できます。 2)しかし、タイプの多様性を制限し、それが非効率につながる可能性があります。要するに、適切なデータ構造を選択することが重要です。

craftexecutablepythonscripts、次のようになります

numpyarraysarasarebetterfornumeroperations andmulti-dimensionaldata、whilethearraymoduleissuitable forbasic、1)numpyexcelsinperformance and forlargedatasentassandcomplexoperations.2)thearraymuremememory-effictientivearientfa

NumPyArraySareBetterforHeavyNumericalComputing、whilethearrayarayismoreSuitableformemory-constrainedprojectswithsimpledatatypes.1)numpyarraysofferarays andatiledance andpeperancedatasandatassandcomplexoperations.2)thearraymoduleisuleiseightweightandmemememe-ef

ctypesallowsinging andmanipulatingc-stylearraysinpython.1)usectypestointerfacewithclibrariesforperformance.2)createc-stylearraysfornumericalcomputations.3)passarraystocfunctions foreffientientoperations.how、how、becuutiousmorymanagemation、performanceo


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ホットトピック









