Python课堂笔记六

常用模块已经可以在单位实际项目中使用,可以实现运维自动化。无需手工备份文件,数据库,拷贝,压缩。

常用模块

time模块

time.time

time.localtime

time.strftime

os模块:主要针对操作系统的一些方法,如:切换目录

sys模块:跟python解释器交互使用。

shutil模块:针对目录或文件的复制,拷贝,重命名的操作等。

hashlib模块:摘要算法模块.

1.文件的一致性校验

      2.用户的加密认证

3.不可逆性,撞库,加盐

json/pickle/shelve模块:

json:通用的序列化格式,支持的数据类型有限

pickle:只能python程序使用

configparse

random模块

验证码

logging模块

  模块级别:

    critical=50

    error=40

    warning=30

    info=20

    debug=10

    notset=0

    默认日志级别:warning,

    默认的输出目标是:终端

    全局配置日志
    import logging
    logging.basicConfig(
  filename='yangjianbo.log',
  format='%(asctime)s - %(name)s - %(levelname)s -%(module)s:%(message)s',
  datefmt='%Y-%m-%d %H-%M-%S',
  level=10,
    )     logging.debug('杨建波111111')

    

  logging的四个对象

    logger    fiter   formatter   hanlder

   logging的正式使用:

logging.config

re模块

  

  re.findall()

    

#coding=utf-8
import re #第一个参数:正则规则;
#第二个参数:要查询的字符串。
# print(re.findall('yang','I am yangjianbo,ya2chenamu,ddf***iujf _-yang22'))
# print(re.findall('aaa','bbbs2 222aaa dcccddddddaaaaaaa'))
# print(re.findall('[a-z]','I am yangjianbo,ya2chenamu,ddf***iujf _-yang22')) #匹配所有小写字母
# print(re.findall('\w','I am yangjianbo,ya2chenamu,ddf***iujf _-yang22')) #字母数字下划线
# print(re.findall('\W','I am yangjianbo,ya2chenamu,ddf***iujf _-yang22')) #非字母数字下线
# print(re.findall('\s','I am yangjianbo,ya2ch\ten\ra\nmu,ddf***iujf _-yang22')) #空字符,包括\t \r \n
# print(re.findall('\S','I am yangjianbo,ya2chenamu,ddf***iujf _-yang22'))#非空字符
# print(re.findall('\d','I am yangjianbo,ya2chenamu,ddf***iujf _-yang22')) #数字
# print(re.findall('\D','I a\tm yangjianbo,ya2chenamu,ddf***iujf _-yang22')) #非数字 #重复匹配
# print(re.findall('ab?','I am yangjianbo,ya2chenamu,ddf***iujf _-yang22'))#重复前一个字符0次或1次
# print(re.findall('ab*','I am yangjianbo, abbbb ya2chenamu,ddf***iujf _-yang22')) #重复前一个字符0次或无穷次
# print(re.findall('ab+','I am yangjianbo,ya2chenabbbbamu,ddf***iujf _-yang22'))#重复前一个字符1次或无穷次
# print(re.findall('ab{4}','I am yangjabbbbianbo,abbya2chenamu,ddf***iujf _-yang22'))#重复前一个字符4次。
# print(re.findall('ab{4,5}','I am yangjabbbbianbo,abbya2abbbbbchenamu,ddf***iujf _-yang22'))#重复前一个字符4次到5次
# print(re.findall('a.b','I am yangjabbbbianbo,abbya2chenamu,ddf***iujf _-yang22'))# 点表示任意一个字符
#.* 表示匹配所有字符。默认是贪婪匹配。
# print(re.findall('a.*b','I am yangjabbbbianbo,abbya2chenamu,ddf***iujf _-yang22 a1283838b'))#匹配出a和b之前所有的字符,而且是最长的。
# print(re.findall('a.*?b','I am yangjabbbbianbo,abbya2chenamu,ddf***iujf _-yang22 a1283838b'))#匹配符合a和b之间最短的字符.

   re.search()  匹配第一个字符,匹配成功就返回结果,不会继续匹配。

     re.match() :匹配以指定字符串为首的字符串,匹配成功就返回结果,与re.search('^')相似。

   re.split(): 以指定的分隔符,分割字符串。

re.sub():  用来替换指定的字符串。

 

Python学习笔记六的更多相关文章

  1. python学习笔记六 面向对象相关下(基础篇)

    面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使用(可以将多函数中公用的变量封装到对象中) 对象,根据模板创建的 ...

  2. python学习笔记六 初识面向对象上(基础篇)

    python面向对象   面向对象编程(Object-Oriented Programming )介绍   对于编程语言的初学者来讲,OOP不是一个很容易理解的编程方式,虽然大家都知道OOP的三大特性 ...

  3. Python学习笔记六--文件和输入输出

    6.1文件对象 所有Python对文件的操作都是基于对文件对象的操作.那么就从文件对象的创建说起.open()[file()]提供初始化输入输出的接口.open()成功打开文件时会返回一个文件对象. ...

  4. Python学习笔记(六)Python的列表生成式、生成器

    列表生成式 List Comprehensions 列表生成式是Python内置的非常简单却强大的可以用来创建list的生成式. 简单的数值范围的list可以使用一下方式生成: >>> ...

  5. python学习笔记(六)、类

    Python与java.c++等都被视为一种面向对象的语言.通过创建自定义类,用于处理各种业务逻辑.面向对象有封装.继承.多态三个特征,这也是面子对象语言的通用特征. 1 封装 封装,是值向外部隐藏内 ...

  6. python学习笔记六——堆栈和队列

    4.2.3 列表的查找.排序.反转 list列表可以进行添加.删除操作,此外List列表还提供了查找元素的方法.list列表的查找提供了两种方式,一种是使用index方法返回元素在列表中的位置,另一种 ...

  7. Python学习笔记六:数据库操作

    一:Python操作数据库的流程 二:开发环境准备 1:开发工具PyCharm 2:Python操作mysql的工具:需要安装Python-Mysql Connector,网址:https://sou ...

  8. Python学习笔记六:文件处理

    一:打开文件 open(name,mode,[bufferSize]) name:文件路径 mode:文件打开方式 二:文件读取 read()方法:可以一次读取文件的全部内容,Python把内容读到内 ...

  9. python学习笔记(六) 函数式编程

    一 函数对象 函数同样可以作为对象复制给一个变量,如下: f = abs; print(f(-10)) f = 'abs'; print(f) def add(a,b,f): return f(a) ...

随机推荐

  1. 转:Flutter动画一

    1. 动画介绍 动画对于App来说,非常的重要.很多App,正是因为有了动画,所以才会觉得炫酷.移动端的动画库有非常的多,例如iOS上的Pop.web端的animate.css.Android端的An ...

  2. Jenkins与sonar扫描的集成问题

    记录本周遇到的头疼了很久的一个问题,由于公司需要使用jenkins来自动管理构建项目,然后在关联sonar对项目代码质量进行审核. 接着坑爹的问题来了,原有的技术手段为项目构建成功后通过jenkins ...

  3. ADT SDK Manager启动时一闪而过

    原因为使用了Android Studio的绿色JRE,必须要安装安装版JDK或者JRE,绿色版JRE放在ADT目录虽然能启动ADT但是不能启动SDK Manager

  4. servlet篇 之 跳转问题

    servlet中的跳转: 跳转本质上是对文件传输操作 进行 封装. 例如:客户端访问一个servlet,在servlet中需要把已经写好的页面hello.html返回给客户端浏览器,需要用io来实现这 ...

  5. Luogu5289 十二省联考2019皮配(动态规划)

    将选择导师看成先选阵营再选派系,这样有显然的O(nm2)暴力,即按城市排序后,设f[i][j][k]为前i个学校中第一个阵营有j人第一个派系有k人的方案数,暴力背包. 对于k=0,可以发现选阵营和选派 ...

  6. 第六十七天 js动画

    1.事件总结 鼠标事件 var box = document.querySelect('.box') // 1.点击事件 box.onclick = function(){ console.log(' ...

  7. SQLSERVER 实现三元运算符

    三元运算符在很多种编程语言中都存在,那么在SQL Server中有没有呢? 很遗憾,SQL server中并没有这个功能,三元运算符是什么呢? 这是一段表达式:[条件 ? 满足返回值 : 不满足返回值 ...

  8. 洛谷P4178 Tree (算竞进阶习题)

    点分治 还是一道点分治,和前面那道题不同的是求所有距离小于等于k的点对. 如果只是等于k,我们可以把重心的每个子树分开处理,统计之后再合并,这样可以避免答案重复(也就是再同一个子树中出现路径之和为k的 ...

  9. dubbo接口demo开发

    接口需求 客户端输入uncleyong(当然,也可以输入其它字符串),服务端返回hello uncleyong 开发环境 jdk + idea + maven + zookeeper jdk安装 id ...

  10. elasticsearch简单实现

    初次接触分布式是全文搜索引擎,之前都是spinx+coreseek,先简单实现初步了解先 官方文档:https://www.elastic.co/guide/cn/elasticsearch/guid ...