Python--正则表达式,re模块,collections模块,random模块,时间模块

正则表达式
元字符量词(?)
元字符 :
.
\w \d \s \W \D \S
\n \t \b
() |
[] [^]
^ $
量词 :
* + ?
{n} ,{n,} ,{n,m}

re模块
怎么调用re模块
查找 : findall search match finditer
分割和替换 :split sub subn
编译 :compile 节省时间
re模块到底用在了几个地方?
量词 :表示匹配0次或1次
在量词之后 :是惰性匹配的标志
分组命名 :(?P<NAME>正则表达式) 引用的时候(?P=NAME)
findall/split 取消分组优先 :(?:正则表达式)
collections模块
怎么调用collections模块
namedtuple 可命名元组
OrderedDict 有序字典
DefaultDict 默认字典
deque 双端队列
Counter 计数器
queue 队列
先进先出的特点

randomd模块:
#随机小数(random,uniform),#随机整数(randent,randrange)#随机选择一个返回(choice)#随机选择多个返回,返回的个数为函数的第二个参数(sample)
#打乱列表顺序(shuffle)
运用场景:手机上,网页上验证码
# 6位/4位数字 —— 验证码
import random
s = ‘‘
for i in range(6):
num = str(random.randint(0,9))
s += num
print(s)

6位数字+字母 —— 验证码
chr(97) --> 字符
res = ‘‘
for i in range(6):
num = str(random.randint(0, 9)) #数字
al_num = random.randint(97,122) #随机小写字母
al_num2 = random.randint(65,90) 随机大写字母
alpha = chr(al_num)
alpha2 = chr(al_num2)
res += random.choice([num,alpha,alpha2])
print(res)
#生成随机验证码
import random
def v_code():
code = ‘‘
for i in range(5):
num=random.randint(0,9)
alf=chr(random.randint(65,90))
add=random.choice([num,alf])
code="".join([code,str(add)])
return code
print(v_code())

#时间模块
import time #导入时间模块
#时间戳(浮点型时间):
time.time()
print(time.time())
print(time.sleep(1))
#格式化时间 时间字符串
time.strftime("%Y-%m-%d %X")

#格式化时间-----字符串 给人看的
print(time.strftime(‘%H:%M:%S‘))
print(time.strftime(‘%y/%m/%d‘))
print(time.strftime(‘%Y-%m-%d‘))
print(time.strftime(‘%c‘))

print(time.strftime(‘%c))

#结构化时间 (元组)
print(time.locatime())
# #(2018, 5, 22, 10, 36, 31, 1, 142, 0)

字符串时间<-->结构化时间<--->时间戳时间

时间戳 - 结构化之间的转换
print(time.time())
print(time.localtime(1500000000))
print(time.localtime(1600000000))
print(time.localtime(2000000000))
print(time.localtime(3000000000))
print(time.gmtime(3000000000))

struct_time = time.localtime(3000000000)
# print(time.mktime(struct_time))
ret = time.strftime(‘%y/%m/%d %H:%M:%S‘,struct_time)
print(ret)
s_t = time.strptime(‘2028-5-21‘,‘%Y-%m-%d‘)
print(s_t)
print(time.mktime(s_t))
#结构化时间-->时间戳 
#time.mktime(结构化时间)
time.mktime(time_tuple)
#结构化时间-->字符串时间
#time.strftime("格式定义","结构化时间") 结构化时间参数若不传,则现实当前时间
time.strftime("%Y-%m-%d %X"

#字符串时间-->结构化时间
#time.strptime(时间字符串,字符串对应格式
time.strptime("2017-03-16","%Y-%m-%d")
时间差计算:
1.都转成浮点时间戳2.两个时间戳相减,3.在转回来
import time
true_time=time.mktime(time.strptime(‘2017-09-11 08:30:00‘,‘%Y-%m-%d %H:%M:%S‘))
time_now=time.mktime(time.strptime(‘2017-09-12 11:00:00‘,‘%Y-%m-%d %H:%M:%S‘))
dif_time=time_now-true_time
struct_time=time.gmtime(dif_time)
print(‘过去了%d年%d月%d天%d小时%d分钟%d秒‘%(struct_time.tm_year-1970,struct_time.tm_mon-1,
struct_time.tm_mday-1,struct_time.tm_hour,
struct_time.tm_min,struct_time.tm_sec))

原文地址:https://www.cnblogs.com/weilaixiaochaoren/p/9404423.html

时间: 2024-07-29 20:46:47

Python--正则表达式,re模块,collections模块,random模块,时间模块的相关文章

Python基础22_模块,collections,time,random,functools

一. 模块 模块: 是把装有特定功能的代码进行归类的结果, 从代码编写的单位来看我们的程序, 从小到大的顺序: 一条代码 < 语句块 < 代码块(函数, 类) < 模块. 我们目前写的所有py文件都是模块 引入模块的方式: 1. import 模块 2. from xxx import 模块 二. collections模块 collections模块主要封装了一些关于集合类的相关操作和一些除了基本数据类型以外的数据集合类型 1. Counter 计数器, 主要用来计数 collecti

模块( collections , time , random , os , sys)

认识模块: 一条代码 < 语句块 < 代码块(函数, 类) < 模块. collections (克莱克森斯) 1. Counter #用来查看字符出现的次数.s = "upup qwe" print(Counter(s)) 队列: FI FO. 先进先出  栈:  FI LO. 先进后出 2.deque(双向队列) from collections import deque s = deque() s.append("娃哈哈") s.append

模块入门:闭包,时间模块,装饰器

1.闭包: 闭包(closure)是计算机编程领域的专业名词,指可以包含自由(未绑定到特定对象)变量的代码块,子函数可以使用父函数中的局部变量. 1 g = 70 2 def outer(x): 3 x = 10 4 def inner(): #条件一inner就是内部函数, 5 c = 10 6 print(c) 7 print(g) #条件2外部环境的一个变量#局部变量全局无法调用 8 return inner# 内部函数inner就是一个闭包 9 outer() 10 #关于闭包:闭包 =

python第十七天---时间模块、random模块

作完一个作业,开始新的学习: 有由今天的时间有限所有学习了以下两个模块,明天继续! 时间模块.random模块 import time 1 #!usr/bin/env python 2 #-*-coding:utf-8-*- 3 # Author calmyan 4 import time ,datetime 5 print(time.process_time())#测量处理器运算时间,不包括sleep时间 6 7 print(time.altzone)#返回与UTC时间的时间差 以秒计算 8

python学习道路(day6note)(time &amp;datetime,random,shutil,shelve,xml处理,configparser,hashlib,logging模块,re正则表达式)

1.tiim模块,因为方法较多我就写在code里面了,后面有注释 1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 4 print("time".center(60,"-")) 5 print(time.asctime()) #返回字符串格式 外国的时间 6 #Fri Nov 18 11:25:08 2016 7 t = time.localtime() #本地时间 8 #print(t) #这是一个对象所以需要 9 p

python学习-常用模块-os,random,logging

os模块(补充中) 1.查看当前路径及切换路径 >>> import os>>> os.getcwd() #获取当前文件所在的路径'D:\\python\\Lib\\idlelib'>>> os.chdir('../') #切换当上一层目录,此处可以是相对路径>>> os.getcwd()'D:\\python\\Lib' >>> os.chdir('D:\Program Files (x86)') #也可以是绝对路

python模块 - collections模块

http://blog.csdn.net/pipisorry/article/details/46947833 集合库collection collections模块介绍 Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型: 1.namedtuple(): 生成可以使用名字来访问元素内容的tuple子类 2.deque: 双端队列,可以快速的从另外一侧追加和推出对象 3

python 正则表达式 re模块基础

简介 正则表达式(regular expression)是可以匹配文本片段的模式.最简单的正则表达式就是普通字符串,可以匹配其自身.比如,正则表达式 'hello' 可以匹配字符串 'hello'. 要注意的是,正则表达式并不是一个程序,而是用于处理字符串的一种模式,如果你想用它来处理字符串,就必须使用支持正则表达式的工具,比如 Linux 中的 awk, sed, grep,或者编程语言 Perl, Python, Java 等等. 正则表达式有多种不同的风格,下表列出了适用于 Python

Python标准库之collections模块

本文后大家啊分享的主要是python 标准库的collections 模块,一起来看看吧,希望对大家 学习python有所帮助.. 这个模块提供几个非常有用的Python 容器类型 1.容器 2.OrderedDict OrderedDict  类似于正常的词典,只是它记住了元素插入的顺序,当迭代它时,返回它会根据插入的顺序返回. ·  和正常字典相比 , 它是 " 有序 " 的 ( 插入的顺序 ) . from collections import OrderedDict dict1