Python基础教程之tcp socket编程详解及简单实例
作者:lqh 发布时间:2021-04-18 12:04:29
标签:Python,tcp,socket
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();
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
0
投稿
猜你喜欢
- 初学Python,遇到需要将mat文件转为csv文件,看了很多博客,最后找到了解决办法,代码如下:#方法1from pandas impor
- 调用数据库存储过程见下:<%Set Dataconn = Server.CreateObject(&qu
- 目前在网上搜到的利用 PyCharm 调试远程服务器程序的教程大多都是针对 PyCharm 2020、2019,甚至更早版本,PyCharm
- 为了组织search线的设计师交流会,特地去准备了一些资料。《SERP 2010》是其中一个,但是由于时间关系没有进行讨论。原著是英文报告,
- 访问phpmyadmin时总是出现 “无法载入 mysql 扩展,请检查 PHP 配置”。
- 1. ASCII 返回与指定的字符对应的十进制数; SQL> select ascii(A) A,ascii(a) a,as
- 在安装依然主机管理系统时,因为当时导入MSSQL时有点问题,所以,为了赶快能用上管理功能,所以就暂时先用了Access数据库。不过一直以来都
- 一、下载地址Apache 5.4 —— httpd-2.4.4-win32.zipPHP 5.4 —— php-5.4.15-Win32-V
- python方法实现字符串反转方法一:反转列表法Python中,列表可以进行反转,我们只要把字符串转换成列表,使用reverse()方法,进
- 今天咱写一个挺实用的工具,就是扫描并获取可用的proxy首先呢,我先百度找了一个网站:http://www.xicidaili.com 作为
- SQL SERVER用来判断表或视图存在的语句在ORACLE中不能用,请问该怎么写。谢谢。答案exists(select tnam
- 也许你听说过Hibernate的大名,但可能一直不了解它,也许你一直渴望使用它进行开发,那么本文正是你所需要的!在本文中,我向大家重点介绍H
- [asp] 献一函数:ASP获取ACCESS数据库的表名以及表名对应的字段名和字段类型<%showtable "../dat
- 本文实例分析了Python类属性与实例属性用法。分享给大家供大家参考。具体如下:类属性:类名.属性名 实例属性:实例.属性名>
- 本文实例讲述了php实现的一段简单概率相关代码。分享给大家供大家参考,具体如下:<?phpfor($i=1;$i<100000;
- 本文实例讲述了Python基于列表list实现的CRUD操作功能。分享给大家供大家参考,具体如下:本篇文章看之前你的先了解python 基础
- 对于比较长的数字组成的字符串,我们一般会用逗号(,)隔开来格式化数字,从右往左每三个数字用一个逗号分组隔开。为什么要用逗号隔开数字呢?因为当
- 如果MySQL服务器启用了二进制日志,你可以使用mysqlbinlog工具来恢复从指定的时间点开始 (例如,从你最后一次备份)直到现在或另一
- 注:此处“重复”非完全重复,意为某字段数据重复HZT表结构IDintTitlenvarchar(50)AddDatedatetime数据一.
- 问题:因为有的友情连接的网站关闭或者网络连接较慢导致连接的LOGO图片显示不出来或者显示很慢.在IE下面老是提示剩下几项没打开,看起来很不舒