from socket import socket
def main():
#創(chuàng)建套接字對象并指定使用哪種傳輸服務(wù) socket()括號不傳遞參數(shù)默認(rèn)是tcpipv4
server = socket()
#綁定ip地址和端口(這樣可以區(qū)分不同的服務(wù)) 端口可以自己指定建議使用1024以后的端口
server.bind(('10.7.152.123',5650))
# 開啟監(jiān)聽 ----監(jiān)聽客戶端連接到服務(wù)器
server.listen(512)
#檢查服務(wù)器是否已經(jīng)啟動
print('服務(wù)器已啟動')
#通過循環(huán)接收客戶端的連接,并做出相應(yīng)的處理(提供服務(wù))
while True:
#接收客戶端的連接 accpet是一個阻塞的方法 如果沒有客戶端連接到服務(wù)器
#這個方法就會阻塞代碼不會向下執(zhí)行(返回的對象是一個元祖)
client , addr = server.accept()
print(str(addr) + '已經(jīng)成功連接到服務(wù)器.')
while True:
#decode對接收到的消息進(jìn)行解碼
print(client.recv(1024).decode('utf-8'))
data = input('服務(wù)器:')
#判斷客戶端發(fā)來的消息如果出現(xiàn)bey或者拜拜跳出循環(huán)
if data == 'bey' or data == '拜拜':
break
#encode對發(fā)送的消息進(jìn)行轉(zhuǎn)碼
client.send(data.encode('utf-8'))
#斷開連接
client.close()
if __name__ == '__main__':
main()
from socket import socket
def main():
#創(chuàng)建套接字對象
client = socket()
#連接服務(wù)器
client.connect(('10.7.152.123',5650))
while True:
data = input('客戶端:')
#向服務(wù)端發(fā)送消息
client.send(data.encode('utf-8'))
if data == 'Bey' or data == '拜拜':
break
print(client.recv(1024).decode('utf-8'))
client.colse()
if __name__ == '__main__':
main()