python成长笔记

正则表达式

1.    择一匹配:管道符号(|),表示“从多个模式中选择其一”。例:at|home à at、home

2.    点号匹配除了换行符以外的任何字符

3.    边界匹配:\b匹配一个单词的边界;\B匹配在一个单词中间,即不是单词边界。

4.    字符集:匹配方括号中包含的任何字符。只适用于单字符的情况。例:[ab] à a、b

5.    星号(*)匹配其左边出现零次或多次

加号(+)匹配一次或多次出现

问号(?)匹配零次或一次出现

6.    字符集特殊字符:\d表示匹配任何十进制数字

\w表示全部字母的字符集

\s表示空格字符

注:特殊字符的大写表示不匹配,例:\D表示任何非十进制数字

7.    圆括号指定分组和匹配子组,例:(\w+)-(\d+)

8.    匹配对象:group()和groups().

9.    group():要么返回整个匹配对象,要么根据要求返回特定子组;groups()仅返回一个包含唯一或全部子组的元组。

10.match()和search()区别:match()从字符串的起始部分开始匹配;search()不但会搜索起始部分,而且严格地对字符串从左到右搜索。

11.findall()查询字符串中某个正则表达式模式全部的非重复出现情况,返回的是一个列表。

12.finditer()是与findall()类似但更节省内存的实体。区别:返回的是一个迭代器。

13.搜索与替换:sub()和subn()

  都是将某字符串中所有匹配正则表达式的部分进行某种形式的替换。区别:subn()还返回一个表示替换的总数。

函数

1.    *args 会把多传入的参数变成一个元组形式

2.    **kwargs 会把多传入的参数变成一个dict形式

3.    参数:

普通参数:严格按照顺序,将实参传给形参

默认参数:必须放置在参数列表的最后

指定参数:将参数赋值给指定的形参

动态参数:* 默认传入的参数,全部放置在元组中

** 默认传入的参数,全部放置在字典中

万能参数: *args, ** kwargs

4.    Python中,函数的参数传递,是引用,不是复制。

5.    变量:

全局变量,所有作用域都可读。

对全局变量进行重新赋值,需要global,如:global name

特殊,对列表、字典,可修改,但不可重新赋值。

全局变量统一大写。

6.    三元运算(三目运算) 对 if else的简写

例:name = ‘alex’ if  1==1  else ‘SB’

  

时间: 2024-12-22 01:40:05

python成长笔记的相关文章

Python成长笔记 - 基础篇 (十一)

回顾: 线程:资源的集合:内存共享,两个或多个线程同时修改一份数据时,造成结果可能不正确,必须加锁 进程:运行的最小单元 守护进程:在start之前设置setDemo() 队列queue:作用解耦,使程序之间是实现松耦合,提高处理效率 FIFO:先进先出 LIFO:后进先出 队列中的数据使用完就没了(消费者生产者模型) 事件event:(红绿灯模型) python中的多线程是一个假象,我们是利用它上下文切换 io操作不占用CPU,计算操作占用CPU, python中大量的计算反而会使程序变得更慢

Python成长笔记 - 基础篇 (十)

本节内容 进程.与线程区别 python GIL全局解释器锁 线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生产者消费者模型 Queue队列 开发一个线程池 进程 语法 进程间通讯 进程池 ssh ssh_sftp SSH密钥 RSH -非对称密钥验证 公钥:public key 私钥: privat key 10.0.0.31 ----连接----> 10.0.0.41 私钥 公钥 10.0.0.31 生成密钥对ssh-keyg

Python成长笔记 - 基础篇 (七)python面向对象

三大特性: 1.封装:在类中对数据赋值.内部调用对外部用户是透明的,这使类变成了一个胶囊或容器,里面包含着类的数据和方法 2.继承:一个类可以派生出子类,在父类中定义的属性.方法会自动被子类继承 # class People:#经典类 class People(object):#新式类 def __init__(self,,age): self.name = self.age = age def eat(self): print('%s is eating' %self.name) def wo

Python成长笔记 - 基础篇 (三)python列表元组、字典、集合

本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码   一.列表和元组的操作 列表是我们最以后最常用的数据类型之一,通过列表可以对数据实现最方便的存储.修改等操作 定义列表 names = ["Wang","HouZi1","NiuNiu","ZhouYi","HouZi2",[1,2]] 可以通过列表角标的方式去获得list中的值 print(names)print(nam

Python成长笔记 - 基础篇 (四)函数

1.面向对象:类(class) 2.面向过程:过程(def) 3.函数式编程:函数(def)----python 1.函数:http://egon09.blog.51cto.com/9161406/1834777 编程语言中函数定义:函数是逻辑结构化和过程化的一种编程方法. 12345678910111213 python中函数定义方法: def test(x): "The function definitions" x+=1 return x def:定义函数的关键字test:函数名

Python成长笔记 - 基础篇 (二)python基本语法

Python的设计目标之一是让代码具备高度的可阅读性.它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观.它不像其他的静态语言如C.Pascal那样需要重复书写声明语句,也不像它们的语法那样经常有特殊情况和惊喜. Python缩进 Python开发者有意让违反了缩进规则的程序不能通过编译,以此来强制程序员养成良好的编程习惯.并且Python语言利用缩进表示语句块的开始和退出(Off-side规则),而非使用花括号或者某种关键字.增加缩进表示语句块的开始,而减少缩进则表示语

Python成长笔记 - 基础篇 (十四)--堡垒机

堡垒机架构 堡垒机的主要作用权限控制和用户行为审计,堡垒机就像一个城堡的大门,城堡里的所有建筑就是你不同的业务系统 , 每个想进入城堡的人都必须经过城堡大门并经过大门守卫的授权,每个进入城堡的人必须且只能严格按守卫的分配进入指定的建筑,且每个建筑物还有自己的权限访问控制,不同级别的人可以到建筑物里不同楼层的访问级别也是不一样的.还有就是,每个进入城堡的人的所有行为和足迹都会被严格的监控和纪录下来,一旦发生犯罪事件,城堡管理人员就可以通过这些监控纪录来追踪责任人. 堡垒要想成功完全记到他的作用,只

Python成长笔记 - 基础篇 (八)

socket编程 应用层: 表示层: 会话层: 传输层: 网络层: ip地址 数据链路层: MAC地址 物理层: 协议类型: TCP/IP协议:三次握手,四次断开 2. Socket 参数介绍 socket.socket(family=AF_INET, type=SOCK_STREAM, proto=0, fileno=None)  必会 Create a new socket using the given address family, socket type and protocol nu

Python成长笔记 - 基础篇 (九)

创建一个socketserver 至少分以下几步: First, you must create a request handler class by subclassing the BaseRequestHandlerclass and overriding its handle() method; this method will process incoming requests.  Second, you must instantiate one of the server classe