欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python Socket之客戶端和服務(wù)端握手詳解

 更新時(shí)間:2017年09月18日 10:47:09   作者:水桶前輩  
這篇文章主要為大家詳細(xì)介紹了python Socket之客戶端和服務(wù)端握手,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

簡(jiǎn)單的學(xué)習(xí)下利用socket來(lái)建立客戶端和服務(wù)端之間的連接并且發(fā)送數(shù)據(jù)

1. 客戶端socketClient.py代碼

import socket 
 
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
# 建立連接: 
s.connect(('127.0.0.1', 9999)) 
# 接收歡迎消息: 
print(s.recv(1024).decode('utf-8')) 
for data in [b'Michael', b'Tracy', b'Sarah']: 
 # 發(fā)送數(shù)據(jù): 
 s.send(data) 
 print(s.recv(1024).decode('utf-8')) 
s.send(b'exit') 
s.close() 

2. 服務(wù)端serverSocket.py代碼

import socket 
import threading 
import time 
# from threading import Thread 
 
 
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
# 監(jiān)聽端口: 
s.bind(('127.0.0.1', 9999)) 
s.listen(5) 
print('Waiting for connection...') 
 
def tcplink(sock, addr): 
 print('Accept new connection from %s:%s...' % addr) 
 sock.send(b'Welcome!') 
 while True: 
  data = sock.recv(1024) 
  time.sleep(1) 
  if not data or data.decode('utf-8') == 'exit': 
   break 
  sock.send(('Hello, %s!' % data.decode('utf-8')).encode('utf-8')) 
 sock.close() 
 print('Connection from %s:%s closed.' % addr) 
 
while True: 
 # 接受一個(gè)新連接: 
 sock, addr = s.accept() 
 # 創(chuàng)建新線程來(lái)處理TCP連接: 
 t = threading.Thread(target=tcplink, args=(sock, addr)) 
 t.start() 

3.操作過程

開兩個(gè)控制臺(tái)窗口,先運(yùn)行服務(wù)端 python3 serverSocket.py

然后運(yùn)行客戶端 python3 socketClient.py

socket連接截圖如下

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python數(shù)據(jù)結(jié)構(gòu)集合set教程示例詳解

    Python數(shù)據(jù)結(jié)構(gòu)集合set教程示例詳解

    這篇文章主要為大家介紹了Python數(shù)據(jù)結(jié)構(gòu)集合set教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • Pycharm虛擬環(huán)境pip時(shí)報(bào)錯(cuò):no?suchoption:--bulid-dir的解決辦法

    Pycharm虛擬環(huán)境pip時(shí)報(bào)錯(cuò):no?suchoption:--bulid-dir的解決辦法

    最近在工作中遇到了些問題,想著大家應(yīng)該也會(huì)遇到過,所以給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于Pycharm虛擬環(huán)境pip時(shí)報(bào)錯(cuò):no?suchoption:?--bulid-dir的解決辦法,需要的朋友可以參考下
    2022-07-07
  • python多線程threading.Lock鎖用法實(shí)例

    python多線程threading.Lock鎖用法實(shí)例

    這篇文章主要介紹了python多線程threading.Lock鎖用法,以實(shí)例形式對(duì)python鎖的用法進(jìn)行了較為詳細(xì)的分析,需要的朋友可以參考下
    2014-11-11
  • python GUI計(jì)算器的實(shí)現(xiàn)

    python GUI計(jì)算器的實(shí)現(xiàn)

    這篇文章主要介紹了python gui計(jì)算器的實(shí)現(xiàn),幫助大家更好的理解和學(xué)習(xí)python gui編程,感興趣的朋友可以了解下
    2020-10-10
  • python assert的用處示例詳解

    python assert的用處示例詳解

    python assert 句語(yǔ)格式及用法很簡(jiǎn)單。通常程序在運(yùn)行完之后拋出異常,使用assert可以在出現(xiàn)有異常的代碼處直接終止運(yùn)行。這篇文章通過實(shí)例代碼介紹了python assert的用處 ,需要的朋友可以參考下
    2019-04-04
  • 利用Python封裝MySQLHelper類實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查功能

    利用Python封裝MySQLHelper類實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查功能

    Python 連接 MySQL 的方法有很多,常用的有 pymysql 和 mysql-connector-python 兩種庫(kù),本文主要介紹了如何封裝一個(gè)MySQLHelper類,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的增刪改查功能,感興趣的可以了解一下
    2023-06-06
  • Python加密word文檔詳解

    Python加密word文檔詳解

    這篇文章主要介紹了Python實(shí)現(xiàn)對(duì)word文檔添加密碼去除密碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08
  • python爬蟲開發(fā)之Beautiful Soup模塊從安裝到詳細(xì)使用方法與實(shí)例

    python爬蟲開發(fā)之Beautiful Soup模塊從安裝到詳細(xì)使用方法與實(shí)例

    這篇文章主要介紹了python爬蟲開發(fā)之Beautiful Soup模塊詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下
    2020-03-03
  • 詳解python模塊pychartdir安裝及導(dǎo)入問題

    詳解python模塊pychartdir安裝及導(dǎo)入問題

    這篇文章主要介紹了python模塊pychartdir導(dǎo)入問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Python hasattr函數(shù)的具體使用

    Python hasattr函數(shù)的具體使用

    本文主要介紹了Python hasattr函數(shù)的具體使用,包括基本用法、返回值、應(yīng)用場(chǎng)景,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02

最新評(píng)論