一:正则表达式

闭包操作符
  • | 等同于 or   exp:a|b|c          
  • . 匹配任意一个字符 (若匹配本字符,需转义使用 \.   不能匹配换行符\n及空字符串)   
  • (^:匹配首部【\b:匹配首部 \B:匹配任意位置】  $:匹配尾部)
  • [abc]:匹配中括号内任意字符  ^置于首位表示不取该字符
  • -连接:表字符范围  exp: A-Z   0-9   
  • *:表示0次或多次  +:表示一次或多次  ?: 表示0次或1次
  • \d:表十进制数字匹配    \w:表字符数字的字符集匹配   \s:表示空格字符匹配    (大写表取反)
  • (?...)表示对匹配字符串进行筛选
 
re.I :使匹配对大小写不敏感
r:Python中字符串前面加上 r 表示原生字符串(rawstring)原因:阿斯克码值和特殊字符存在冲突
 
#match:从起始部分对字符串进行匹配,匹配失败,抛出Attribute Error异常 (pattern,string)
#search:从字符串任一位置进行匹配
#findall:返回所有符合匹配的字段
#sub/subn:用字符串替换匹配的字段,subn返回匹配个数
group():返回匹配的字段、groups():以数组形式返回匹配字段
 

二:网络编程

套接字:通信端点  (基于文件【单机】和基于网络的【联机】)TCP:有连接(电话)  UDP:无连接(邮寄)
socketServer:处理socket请求的多线程
套接字设置阻塞模式和非阻塞模式:
阻塞模式缺点:套接字线程较多时,通信较困难,扩展性较差
非阻塞模式缺点:需要处理返回的阻塞错误    优点:多个连接,数据传送不平均,时间不定
发送和接收数据时,需要进行加密解密
 #server.py
1 from socket import *
from time import ctime HOST = '' #接收所有地址
PORT = 21567
BUFSIZE = 1024
ADDR = (HOST,PORT) tcpSerSock= socket(AF_INET,SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5) #最大连接数 while True:
print('waiting for connection')
tcpCliSock,addr = tcpSerSock.accept()
print('...connected from ',addr)
while True:
#接收数据解密
data = tcpCliSock.recv(BUFSIZE).decode()
if not data:
break
#发送数据加密
tcpCliSock.send(('[%s] %s' % (ctime(),data)).encode())
tcpCliSock.close()
tcpSerSock.close()
#client.py
1 from socket import *
HOST = '127.0.0.1'
PORT = 21567
BUFSIZE = 1024
ADDR = (HOST,PORT)
tcpCliSock = socket(AF_INET,SOCK_STREAM)
tcpCliSock.connect(ADDR) while True:
data = input('>')
if not data:
break
#传送数据加密
tcpCliSock.send(data.encode())
#接收数据解密
data = tcpCliSock.recv(BUFSIZE).decode()
if not data:
break
print(data)
tcpCliSock.close()

三:客户端编程

FTP:文件传输协议  (允许匿名用户登录) 底层使用两个套接字进行通信,包括命令端口和数据端口
UseNet:全球电子公告板,基于UUCP协议传输(Unix——Unix)
电子邮件系统
MTA:消息传输代理,在交换主机上运行的服务器进程。为实现传送目的,需要确定两个目的,
1.如何找到对接主机的MTA       由域名服务来查找目的域名
2.如何进行通信                         统一SMTP(简单邮件传输)协议,通过MTS(消息传输系统)进行通信
POP\IMAP:客户端和服务端访问协议

core python的更多相关文章

  1. Core Python Notes

    开发需要在读 Python 核心编程,一些 Point 记录如下. ******************************************** 版本相关 标准版的 Python 是用 C ...

  2. 第一次碰到try-except(core python programming 2nd Edition 3.6)

    # coding: utf-8 # 使用Windows系统,首行'#!/usr/bin/env Pyton'无用,全部改为'# coding: utf-8' 'readtextfile.py -- r ...

  3. Core Python Programming一书中关于深浅拷贝的错误

    该书关于深浅拷贝的论述: 6.20. *Copying Python Objects and Shallow and Deep Copies "when shallow copies are ...

  4. .net core && python

    最近.net core的发展,确实值得激动,强力推荐传教文章<.NET:持续进化的统一开发平台>http://www.cnblogs.com/wer-ltm/p/8776846.html ...

  5. core python applications

    第三章: 3.4 电子邮件 SMTP, POP 和 IMAP 协议 第五章: 5.1~5.3 tkinter 各种控件简介 Listbox

  6. 数值运算内建函数(core python programming 2nd edition 5.6.2)

    数值运算内建函数 函数  功能 abs(num) 返回 num 的绝对值 coerce(num1, num2) 将num1和num2转换为同一类型,然后以一个元组的形式返回. divmod(num1, ...

  7. [core python programming]chapter 7 programming MS office

    excel.pyw会有问题,解决如下: 因为python3x中没有tkMessageBox模块,Tkinter改成了tkinter你可以查看你的py当前支持的模块.在交互式命令行下输入>> ...

  8. [Python] 学习资料汇总

    Python是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大且完善的通用型语言,已经有十多年的发展历史,成熟且稳定.Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用 ...

  9. Python学习资料下载地址(转)

    [转]Python学习资料和教程pdf 开发工具: Python语言集成开发环境 Wingware WingIDE Professional v3.2.12 Python语言集成开发环境 Wingwa ...

随机推荐

  1. countif函数

    EXCEL单元格内数据主要有以下几类:数值型,文本型,逻辑型,错误值型.其中时间类型也是一种特殊的数值.文本类型的数字是文本型. 空单元格:指什么内容也没有的单元格,姑且称之为真空. 假空单元格:指0 ...

  2. Kafka、RabbitMQ、RocketMQ等消息中间件的介绍和对比(转)

    前言在分布式系统中,我们广泛运用消息中间件进行系统间的数据交换,便于异步解耦.现在开源的消息中间件有很多,前段时间产品 RocketMQ (MetaQ的内核) 也顺利开源,得到大家的关注. 概念MQ简 ...

  3. SQL CASE Syntax

    CASE case_value WHEN when_value THEN statement_list [WHEN when_value THEN statement_list] ... [ELSE ...

  4. node 打包内存溢出 FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory

    electron-vue加载了地图 openLayer后,打包就包内存溢出 解决办法: "build": "node --max_old_space_size=4096 ...

  5. springboot错误1 Failed to execute goal org.springframework.boot:spring-boot-maven-plugin

    关于Springboot打包错误的问题 | Failed to execute goal org.springframework.boot:spring-boot-maven-plugin https ...

  6. TTTTTTTTTTTTTTTTTTT UVA 2045 Richness of words

    J - Richness of words Time Limit:500MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64 ...

  7. 马尾图案之canvas的translate、scale、rotate的方法详解

    1.translate(x,y):平移 将画布的坐标原点向左右方向移动x,向上下方向移动y.canvas的默认位置是在(0,0).  例子:画布原点假如落在(1,1),那么translate(10,1 ...

  8. [CSP-S模拟测试]:联合权值·改(暴力)

    题目传送门(内部题143) 输入格式 输入文件的第一行为三个整数$n,m,t$.其中$t$是数据类型. 接下来$m$行,每行两个正整数$u,v$,表示图中的一条边.数据保证不存在重边或自环的情况.   ...

  9. light4j轻量级微服务应用

    最近对light-4j轻框架比较感兴趣,于是对现有应用做了一次重构,现将其间的一些点滴所得分享出来. 项目打包 pom.xml配置了两个profile:debug支持mvn exec:exec启动应用 ...

  10. TCP滑动窗口Sliding Window

    滑动窗口的发送窗口示意图如下,其中由对端通告的窗口窗口大小为6,窗口中和窗口外的数据分别表示为:1-3发送并已经被确认的数据段,4-6发送但尚未被确认的数据段,7-9能够发送尚未发送的数据段,10-… ...