2023年9月10日 星期日

Python UDP Server 與 Client 程式與實驗來進行程式修正

        目前要測試UDP Server 與 UDP Client,藉此來修正程式碼,讓其自動化。以Echo Server 來進行,目前程式碼來自資料來源1.Python UDP Server/Client 網路通訊教學

條件: 1 個 Server 與 1 個 Client

檔案名稱:Py3UdpServer.py
檔案內容:
import socket

host = '192.168.100.101'
port = 7000

s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
s.bind((host,port))

print('Server start at:%s:%s' % (host,port))
print('wait for connection...')

while True:
    indata, addr = s.recvfrom(1024)
    print('recvfrom ' + str(addr) + ': ' + indata.decode())

    outdata = 'echo ' + indata.decode()
    s.sendto(outdata.encode(), addr)

s.close()

檔案名稱:Py3UdpClient.py
檔案內容:
import socket

host = '192.168.100.101'
port = 7000
server_addr = (host,port)

s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

while True:
    outdata = input('Please input message: ')
    print('sendto ' + str(server_addr) + ': ' + outdata)
    s.sendto(outdata.encode(),server_addr)

    indata,addr = s.recvfrom(1024)
    print('recvfrom ' + str(addr) + ': '+ indata.decode())

測試結果:

Server

Client

以Echo Server 來進行,目前程式碼來自資料來源2.Multi-Client-Socket-using-UDP

條件: 1 個 Server 與 4 個 Client



沒有留言:

張貼留言

ZeroJudge python解答:a271. 彩色蘿蔔

  a271. 彩色蘿蔔 我的解法: 這題的重點只有兩個: 每天早上先扣中毒效果,再吃蘿蔔 中毒可累加,而且吃到黑蘿蔔當天不扣毒,從隔天開始扣 t = int ( input ()) for i in range ( t ):     x , y , z ,...