この記事の例では、Python で UDP データグラム送信を実装する方法について説明します。これは非常に実用的です。皆さんの参考に共有してください。具体的なメソッド分析は次のとおりです。
サーバーコード:
import socket port = 8081 s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #从给定的端口,从任何发送者,接收UDP数据报 s.bind(("",port)) print 'waiting on port:',port while True: data,addr = s.recvfrom(1024) #接收一个数据报(最大到1024字节) print 'reciveed:',data,"from",addr
クライアントコード:
import socket port = 8081 host = "localhost" s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) s.sendto("hello world",(host,port))
結果: 最初にサーバーを実行し、次にクライアントを実行します。
サーバーは次のように出力します:
waiting on port: 8081 reciveed: hello world from ('127.0.0.1', 62644)
補足:
ソケット.sendto(文字列[, フラグ], アドレス)
公式文書は次のとおりです:
ソケットにデータを送信します。宛先ソケットはアドレスで指定されるため、ソケットはリモート ソケットに接続しないでください。オプションの flags 引数は、送信されたバイト数を返します。 (アドレスの形式はアドレス ファミリによって異なります。上記を参照してください。) プロトコル タイプがソケット.SOCK_DGRAM の場合、アドレス パラメータはタプルであり、(ホスト, ポート) の形式は
です。この記事が皆さんの Python プログラミング設計に役立つことを願っています。