python学习第16天。
内置函数是在原本已经有的序列的基础上,再生成新的。
List的方是修改原列表。
内置函数中大部分函数的返回值大部分都是迭代器、生成器。
Sorted需要遍历操作,不是单纯的迭代,所以不生成迭代器。
一般情况下不在函数中使用input和print
双端队列和列表的区别,
不表现在
表现在效率和底层的数据结构上。
列表和双端队列的应用场景。
插入和删除比较频繁时用双端队列
如果查询和只用append和pop不加参数,用列表更好。
Re
一个中括号代表一个字符组,中间加[-]代表范围。
字符组[]描述的是一个字符位置上的内容规则。
字符组内所有的范围都是根据ASCII的顺序。
匹配的范围要根据ascii表的顺序,不可逆序匹配。
大写[A-Z]
小写[a-z]
大小写[A-Za-z],中间不需要添加符号
在字符组中,有一些字符是有特殊意义的。需要用\转义符。
- 代表范围
[0-9] \d(digit)匹配任意一个数字
[A-Za-z0-9_] \w数字字母下划线
\n匹配回车,换行符
\t 匹配制表符
空格就匹配空格
\s 匹配所有空白
(任意字符)\b 匹配该字符集是否在末尾是否在边界。
反义词
\W 除数字字母下划线之外的所有
\D 除数字外的所有
\S 除空白外的所有
.匹配换行符之外的所有字符
什么都拿出来的数据叫脏数据
匹配出精确的数据叫数据的清洗。
匹配所有:[\D\d] [\W\w] [\S\s]
非字符组:[^]只要布置字符组中的字符其他的都匹配。
开始符^ 每行的开始,只能放在最开始。
结束符$ 每行的结束,只能放在最后面。
如果共用开始和结束,开始和结束中间的字符限制了字符的个数。
在做字符串检测的时候常用(还真有这种需求啊喂!)
|或的概念
只能匹配|左边的字符集或右边的字符集
使用()时表示|只作用在()的范围内。
|永远将相对长的字符放在左侧。
量词:在量词的范围内尽可能多的匹配。
{n}表示左侧的字符重复N次
{n,}重复至少n次
{n,m}重复n到m次
?匹配1到0次
+匹配1到多次
*匹配0到多次
匹配不以0开头的任意整数
[1-9]\d|0
匹配小数
\d+\.\d+
默认尽可能多匹配
被称为贪婪匹配
可以设置尽可能的少匹配
被称为惰性匹配
a.*?惰性匹配
a.*?x匹配所有,遇到x立即停止。
python学习第16天。的更多相关文章
- Python 学习 第16篇:数据类型(字典和Json)
字典是键/值对构成的集合,字典通过大括号来创建,字典的键是字符串,而值可以是任何数据对象. 字典有两个重要的特征: 字典是无序的,字典项没有特定的顺序,只能通过键来获取值: 字典是可变的,支持原处修改 ...
- Python学习(16)File(文件)方法
Python File(文件) 方法 file 对象使用 open 函数来创建,下表列出了 file 对象常用的函数: 序号 方法及描述 1 file.close() 关闭文件.关闭后文件不能再进行读 ...
- Python学习笔记16—电子表格
openpyl 模块是解决 Microsoft Excel 2007/2010 之类版本中扩展名是 Excel 2010 xlsx/xlsm/xltx/xltm 的文件的读写的第三方库. 安装 pip ...
- python学习笔记16(错误、异常)
一.什么是错误,什么是异常 错误是指在执行代码过程中发生的事件,它中断或干扰代码的正常流程并创建异常对象.当错误中断流程时,该程序将尝试寻找异常处理程序(一段告诉程序如何对错误做出响应的代码),以帮助 ...
- Python学习笔记16:标准库多线程(threading包裹)
Python主要是通过标准库threading包来实现多线程. 今天,互联网时代,所有的server您将收到大量请求. server要利用多线程的方式的优势来处理这些请求,为了改善网络port读写效率 ...
- 从零开始的Python学习Episode 16——模块
一.模块 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相 ...
- Python学习:16.Python面对对象(三、反射,构造方法,静态字段,静态方法)
一.构造方法 在使用类创建对象的时候(就是类后面加括号)就自动执行__init__方法. class A: def __init__(self): print('A') class B: def __ ...
- Python 学习笔记16 类 - 导入
我们在编码的过程中,可能会给对象添加越来越多的功能,即使我们使用了继承,也不可避免的使文件越来越臃肿. 为了避免这种情况, Python允许将对象存储在模块中,并且可以在其他模块中进行导入. 其实这和 ...
- Python学习总结16:时间模块datetime & time & calendar (三)
calendar模块 常见函数及说明 1 calendar.calendar(year,w=2,l=1,c=6) 返回一个多行字符串格式的year年年历,3个月一行,间隔距离为c. 每日宽度间隔为 ...
随机推荐
- SQL的六种约束
https://blog.csdn.net/z120270662/article/details/79501621
- Xshell 无法连接虚拟机中的ubuntu的问题
转自:http://blog.csdn.net/qq_26941173/article/details/51173320 版权声明:本文为博主原创文章,未经博主允许不得转载. 昨天在VMware P ...
- orcle查看表空间数据文件使用情况
-- 查看表空间数据文件使用情况select a.*, round(a.usedgb/a.maxgb*100) || '%' usedPer from (select t.TABLESPACE_NAM ...
- [C++]PAT乙级1009. 说反话 (17/20)
/* 1009. 说反话 (20) 给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式: 测试输入包含一个测试用例, 在一行内给出总长度不超过80的字符串. 字符串由若干单词和若干 ...
- webpack学习笔记——打包js
1.新建一个入口js文件,如entry.js,代码如下: document.write("It works.") 2.然后编译 entry.js 并打包到 bundle.js(会自 ...
- java中出现内存溢出的几种情况
情况一:java.lang.OutOfMemoryError: Java heap space 原因:java堆内存不足,可能是真的不足,也可能是程序中有死循环 方案:1.调整JVM参数-Xms204 ...
- 🍓 JRoll、React滑动删除 🍓
import React, { Component } from 'react'; import '../src/css/reset.css'; import '../src/css/delete.c ...
- maven(一) 一 修改仓库存放路径
一.修改仓库存放路径 maven默认的仓库是在C盘下的,这样当重新装系统的时候,仓库就要重新建了.因此可以修改默认存放的位置. 修改仓库的地址在maven安装包(即apache-maven-bin)下 ...
- Servlet 线程安全
普通类的静态属性,当被多个线程访问时,就有线程安全问题: Servlet 也一样 当多个客户端并发访问同一个Servlet时,web服务器会为每一个客户端的访问请求创建一个线程,并在这个线程上调用Se ...
- django 学习手册 - ORM 报错集(随时更新)
报错问题: 问题一:(1050代码) django.db.utils.InternalError: (1050, "Table 'app01_group' already exists&qu ...