python的socket程式設計

2022-03-07 02:31:08 字數 2160 閱讀 2979

socket主要用於長連線

簡單demo:

server端:

import

socket

server =socket.socket(socket.af_inet, socket.sock_stream)

server.bind((

'0.0.0.0

', 8000))

server.listen()

sock, addr =server.accept()

#獲取從客戶端傳送的資料

data = sock.recv(1024)

print(data.decode("

utf8"))

sock.send(

"hi,{}

".format(data.decode("

utf8

")).encode("

utf8"))

server.close()

sock.close()

client端:

import

socket

client =socket.socket(socket.af_inet, socket.sock_stream)

client.connect((

'127.0.0.1

', 8000))

client.send(

"feng

".encode("

utf8"))

data = client.recv(1024)

print(data.decode("

utf8"))

client.close()

結果:server:  feng

client:  hi,feng

簡易聊天室:

server端:

import

socket

import

threading

server =socket.socket(socket.af_inet, socket.sock_stream)

server.bind((

'0.0.0.0

', 8000))

server.listen()

defhandle_sock(sock, addr):

data = sock.recv(1024) #

接print(data.decode("

utf8"))

re_data =input()

sock.send(re_data.encode(

"utf8

")) #回#

獲取從客戶端傳送的資料

#一次獲取1k資料

while

true:

sock, addr =server.accept()

#用執行緒去處理新接收的連線(使用者)

client_thread = threading.thread(target=handle_sock, args=(sock, addr))

client_thread.start()

client端:

import

socket

client =socket.socket(socket.af_inet, socket.sock_stream)

client.connect((

'127.0.0.1

', 8000))

while

true:

re_data =input()

client.send(re_data.encode(

"utf8

")) #

發data = client.recv(1024) #

接print(data.decode("

utf8

"))

結果:多個client可以給server發訊息

python的socket程式設計

coding utf 8 from socket import host 127.0.0.1 port 44444 建立socket物件 client socket af inet,sock stream af inet表示將使用標準的ipv4位址或主機名 sock stream說明這是乙個tcp客...

Python簡單的SOCKET程式設計

python是乙個強大的網路程式設計工具。大家都知道,在網路程式設計中的乙個基本主件就是套接字 socket 套接字到底是什麼呢?可以這樣說,就是兩個程式之間的資訊通道而已。比如兩個人打 必須建立有線或者無線的道路來進行通訊。程式可能分布在不同的計算機上,兩個人也不一定時時在一起。所以程式與程式之間...

python下的socket程式設計

雖說語言變成了python,但是socket的基本框架還是在的。首先,我們還是要看一下unix環境下的tcp框架 接著直接來看程式,開啟你的idle,我們先來看server端 import socket 匯入socket庫 import time 匯入time庫 host localhost 連線本...