Python核心编程(网络编程)
1、python socket模块内置方法


2、tcp服务器伪代码

3、tcp客户端伪代码

4、socket模块属性


5、一个简单的tcp客户端和服务端
服务端代码:
# encoding:utf-8
from socket import *
from time import ctime
from datetime import * # 定义tcpServer监听端口号
HOST = '0.0.0.0'
PORT = 21567
ADDR = (HOST, PORT)
BUFFSIZE=1024
# 初始化一個tcp socket
tcpSvrSock = socket(AF_INET, SOCK_STREAM)
tcpSvrSock.bind(ADDR)
tcpSvrSock.listen(5)
while True:
print('[%s] wait for connection...'%(datetime.now()))
tcpClientSock, clientAddr = tcpSvrSock.accept()
print('[%s] connect from: %s...'%(datetime.now(),clientAddr))
while True:
recieveData = tcpClientSock.recv(BUFFSIZE)
if not recieveData:
break
print('[%s] 收到报文:%s' %(datetime.now(),recieveData.decode('utf-8')))
sendData = input('> ')
if not sendData:
break
tcpClientSock.send(bytes(sendData,'utf-8'))
tcpClientSock.close()
tcpSvrSock.close()
客户端代码:
# encoding:utf-8
from socket import *
from datetime import * HOST = '127.0.0.1'
PORT = 21567
ADDR = (HOST, PORT)
BUFFSIZE=1024
clientSocket=socket(AF_INET,SOCK_STREAM)
clientSocket.connect(ADDR) while True:
sendData=input('> ')
if not sendData:
break
sendData=bytes(sendData, 'utf-8')
clientSocket.send(sendData)
recieveData=clientSocket.recv(BUFFSIZE)
if not recieveData:
break
print(recieveData.decode('utf-8'))
clientSocket.close()

Python核心编程(网络编程)的更多相关文章
- python高级之网络编程
python高级之网络编程 本节内容 网络通信概念 socket编程 socket模块一些方法 聊天socket实现 远程执行命令及上传文件 socketserver及其源码分析 1.网络通信概念 说 ...
- 第六篇:python高级之网络编程
python高级之网络编程 python高级之网络编程 本节内容 网络通信概念 socket编程 socket模块一些方法 聊天socket实现 远程执行命令及上传文件 socketserver及 ...
- Python之路 - 网络编程之粘包
Python之路 - 网络编程之粘包 粘包
- Python之路 - 网络编程初识
Python之路 - 网络编程初识 前言
- Python中级 —— 04网络编程
网络编程 网络编程对所有开发语言都是一样的,Python也不例外.用Python进行网络编程,就是在Python程序本身这个进程内,连接别的服务器进程的通信端口进行通信. TCP编程 TCP建立可靠连 ...
- python语法基础-网络编程-TCP协议和UDP协议
############### 网络编程 ############## """ 网络编程 学习了Python基础之后,包括函数,面向对象等,你就可以开发了,你 ...
- 周末班:Python基础之网络编程
一.楔子 你现在已经学会了写python代码,假如你写了两个python文件a.py和b.py,分别去运行,你就会发现,这两个python的文件分别运行的很好.但是如果这两个程序之间想要传递一个数据, ...
- Python 基础之----网络编程
阅读目录 一 客户端/服务端架构 二 osi七层 三 socket层 四 socket是什么 五 套接字发展史及分类 六 套接字工作流程 七 基于TCP的套接字 八 基于UDP的套接字 九 粘包现象 ...
- Python程序设计8——网络编程
Python是一个很强大的网络编程工具,python内有很多针对场景网络协议的库,在库顶部可以获得抽象层,这样就可以集中精力在程序的逻辑处理上,而不是停留在网络实现的细节中. 1 少数几个网络设计模块 ...
- python之路——网络编程
一.楔子 你现在已经学会了写python代码,假如你写了两个python文件a.py和b.py,分别去运行,你就会发现,这两个python的文件分别运行的很好.但是如果这两个程序之间想要传递一个数据, ...
随机推荐
- 《JAVA程序设计》_第八周学习总结
一.学习内容 1.泛型类声明--15.1知识 可以使用"class 名称"声明一个类,为了和普通的类有所区别,这样声明的类称作泛型类,如: class People<E> ...
- Android高版本联网失败报错:Cleartext HTTP traffic to xxx not permitted解决方法
前言:为保证用户数据和设备的安全,Google针对下一代 Android 系统(Android P) 的应用程序,将要求默认使用加密连接,这意味着 Android P 将禁止 App 使用所有未加密的 ...
- php 微信模板消息发送
<?php ini_set ( 'date.timezone', 'Asia/Shanghai' ); define ( 'IN_ASK2', TRUE ); $http_type = ((is ...
- diskpart 的简单使用
- commons-lang3 事件机制 <EventListenerSupport>
俗话说,站在巨人肩上,可以使我们走的更远 使用已有的java组件,可以提高我们的开发效率,减少出错几率,apache commons中包含有很多这样的组将,commons-lang3就是其中的一个,当 ...
- python-三级菜单-67
menu = { '北京': { '海淀': { '五道口': { 'soho': {}, '网易': {}, 'google': {} }, '中关村': { '爱奇艺': {}, '汽车之家': ...
- 偶发异常BUG,如何高效精准分析排查定位?
偶发异常BUG,如何高效精准分析排查定位? 作为测试,经常会收到领导.同事.用户反馈过来各种各样BUG,令人措手不及 首选需要判断确认是不是BUG,不要急于给予回复,需有充分的条件给予说明回复 很多测 ...
- MySQL函数--(1)
/*函数与存储过程的区别1.存储过程:可以有0个返回值,可以有多个返回值函数:有且仅有一个返回值*/ #创建语法create FUNCTION 函数名(参数列表) return 返回类型BEGIN函数 ...
- python多线程场景下print丢失
python多线程情况下,print输出会出现丢失的情况,而logging模块的日志输出不会. 以下是示例代码,多运行几次就会发现这个有意思的现象 # coding:utf-8 import thre ...
- Centos7下安装和配置vim
Centos7 最新版本默认已经安装vim,可以使用命令查看是否安装 rpm -qa|grep vim 输出结果如下,如无以下输出结果,则安装vim: vim-filesystem-7.4.160-4 ...