Python基础教程之tcp socket编程详解及简单实例

作者:lqh 时间:2021-04-18 12:04:29 

Python tcp socket编程详解

初学脚本语言Python,测试可用的tcp通讯程序:

服务器:


#!/usr/bin/env python
# -*- coding: utf-8 -*-

import socket
import threading
import time

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(b'Hello, %s!' % data);
 sock.close();
 print('Connection from %s:%s closed.' % addr);

if __name__ == "__main__":

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);

s.bind(('127.0.0.1', 9090));
 s.listen(8); #监听8个客户端;
 print('waiting for connection...');

while True:
   sock, addr = s.accept();
   t = threading.Thread(target=tcplink, args=(sock,addr));
   t.start();

客户端:


#!/usr/bin/env python
# -*- coding: utf-8 -*-

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);
s.connect(('127.0.0.1', 9090));
print(s.recv(1024).decode('utf-8'));
for data in [b'lk', b'aa', b'bb']:
 s.send(data);
 print(s.recv(1024).decode('utf-8'));
s.send(b'exit');
s.close();

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

标签:Python,tcp,socket
0
投稿

猜你喜欢

  • 一文讲清base64编码原理

    2023-04-10 23:51:48
  • 小小聊天室Python代码实现

    2022-05-27 15:23:44
  • python爬取网页版QQ空间,生成各类图表

    2023-01-18 06:30:58
  • JavaScript中的"类" 序言

    2008-02-18 13:26:00
  • Python 运行 shell 获取输出结果的实例

    2023-08-02 16:51:18
  • 如何利用Python开发一个简单的猜数字游戏

    2022-05-21 20:38:08
  • Python使用turtle模块绘制爱心图案

    2022-07-31 06:46:26
  • js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)

    2024-04-18 09:51:29
  • Python 爬取淘宝商品信息栏目的实现

    2023-06-23 06:43:56
  • js 代码优化点滴记录

    2024-05-28 15:41:47
  • Go语言指针用法详解

    2023-08-05 17:06:36
  • 浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式

    2023-11-25 12:41:38
  • 解决python中导入win32com.client出错的问题

    2023-02-17 11:01:45
  • 如何计算 tensorflow 和 pytorch 模型的浮点运算数

    2023-07-17 04:20:58
  • ASP实现最简洁的多重查询的解决方案

    2007-09-28 12:00:00
  • 使用python scrapy爬取天气并导出csv文件

    2023-02-25 16:16:10
  • Python time模块时间获取和转换方法

    2022-06-07 11:14:30
  • Python自动采集微信联系人的实现示例

    2023-09-08 07:28:03
  • 深入理解Vue官方文档梳理之全局API

    2024-05-05 09:08:25
  • 深入浅出ES6之let和const命令

    2024-05-22 10:37:21
  • asp之家 网络编程 m.aspxhome.com