一模块的定义Python 模块(Module),是一个Python文件,以.py 结尾,包含了Python 对象定义和Python语句。模块让你能够有逻辑地组织你的Python代码段。把相关的代码分配到一个模块里能让你的代码更好用,更易懂。模块能定义函数,类和变量,模块里也能包含可执行的代码
二、模块的导入1、import语句模块定义好后,可以使用 import 语句来引入模块,语法如下:import module1,module2.....moduleN比如要引用模块 time,就可以在文件最开始的地方用 import time 来引入在调用time模块中的函数时,必须这样引用:模块名.函数名(如:time.sleep(2))注意:一个模块只会被导入一次,不管你执行了多少次import,这样可以防止导入模块被一遍又一遍地执行
1.直接导入整个模块
如:
import time #导入time模块print(time.hello())
2.导入模块内的单个方法
如:
from time import timeprint(time()) #从time模块内导入time方法
3.导入模块内的多个方法
from time import time,sleepprint(time())print(ascii()) #从time模块内导入time,sleep方法,用逗号隔开
4.导入模块内的所有方法,变量等
from time import * #从time模块内导入该模块所有方法,变量,常量等 *号所有意思print(time())sleep(2)print(asctime())
5.同时导入多个模块
import time,string,re,dis #同时导入多个模块print(time.time())print(re.split())
python中常用的模块
1.time 模块
time()模块 #从1970到现在经过的秒数
import timeprint(time.time()) #1970到现在实时秒数
ctime() #固定格式的当前时间
import timeprint(time.ctime()) #执行结果:Wed Jul 7 11:46:38 2021
sleep(3) #休眠 单位是秒
import timeprint(time.sleep(3)) #休眠也叫强制等待,使系统进程停止多久时间
asctime() #转换为asc码显示当前时间
import timeprint(time.asctime()) #执行结果:Wed Jul 7 11:50:40 2021
strftime() #时间格式化,年月日时分秒
import timeprint(time.strftime('%Y-%m-%d-%H-%M-%S')) #执行结果:2021-07-07-11-55-19
python中random模块
import random
生成随机浮点数,整数,字符串,甚至帮助你随机选择列表序列中的一个元素,改变一组数据等
random模块中常见的方法
random.random() #该方法是生成0-1中间的浮点数,但只能取到0,取不到1
import random print(random.random()) #执行结果:0.14101967148208894
random.randint(x,y) #该方法生成指定范围内随机整数,包括开始和结束值
import randomprint(random.randint(0,20))
random.randrange(x,y,step) #该方法生成指定范围的随机奇数,不包括结束值
import randomprint(random.randrange(1,20,2))
random.randrange(x,r,stop) #该方法生成指定范围的随机偶数,不包括结束值
import randomprint(random.randrange(2,20,2))
random.sample(seq,n) #该方法从序列中选择n个随机且独立的元素,以列表形式返回
seq='asdzcsw'print(random.sample(seq,3))
random.choice(test) #从序列中随机选取一个元素
list1=[1,4,893,4,56,73]# print(random.choice(list1))
random.shuffle(list) #洗牌 (随机列数)
import randomlist1=[1,4,893,4,56,73]random.shuffle(list1) print(list1) #执行结果:[4, 4, 1, 56, 893, 73]
hashlib.md5() #md5 加密
import hashlib md5=hashlib.md5() #创建一个hashlib模块内的MD5方法的对象,赋值给另一个名为md5的变量
str1='123456' md5.update(str(str1).encode('utf-8')) print(md5.hexdigest()) #执行结果:e10adc3949ba59abbe56e057f20f883e
python中os模块
os模块提供了多数操作系统的功能接口函数。当os模块被导入后,它会自适应于不同的操作系统平台,根据不同的平台进行相应的操作,在python编程时,经常和文件、目录打交道,所以离不了os模块。
os模块中常见的方法:
os.getcwd()获取当前执行命令所在目录
import os print(os.getcwd()) #执行结果:E:\python\dcs_16\file1
os.path.isfile()判断是否文件
import os path='E:\python\dcs_16\\file1'print(os.path.isfile(path)) #执行结果:False
os.path.isdir() #判断是否是目录
import ospath='E:\python\dcs_16\\file1'print(os.path.isdir(path)) #执行结果:True
os.path.exists() #判断文件或目录是否存在
import os path='E:\python\dcs_16\\file1'path1='E:\python\dcs_16\\file2' print(os.path.exists(path)) #执行结果True print(os.path.exists(path1)) #执行结果False
os.listdir(dirname) #列出指定目录下的目录或文件
import os path='E:\python\dcs_16\\file1' print(os.listdir(path)) #执行结果:['czw1.py', 'czw2.py', 'file2.py', '__init__.py', '__pycache__']
os.path.split(name) #分割文件名与目录
import os path='E:\python\dcs_16\\file1' print(os.path.split(path)) #执行结果:('E:\\python\\dcs_16', 'file1')
print(type(path)) #执行结果:<class 'str'>
os.path.join(path,name) #连接目录与文件名或目录
import os path='E:\python\dcs_16\\file1' print(os.path.join(path,'file2.py')) #执行结果E:\python\dcs_16\file1\file2.py
os.mkdir(dir) #创建一个目录
os.mkdir('file5') #执行结果E:\python\dcs_16\file1\file2.py 不会显示
os.rename(old,new) #更改目录名称
import os path='E:\python\dcs_16\\file1' os.rename(path,'file8')
python中re正则模块
实现一个编译查找,一般在日志处理或者文件处理时用的比较多正则表达式主要用于模式匹配和替换工作。预定义字符集匹配:\d:数字0-9\D:非数字\s:空白字符\n:换行符\r:回车符
re模块数量词匹配:符号^:表示的匹配字符以什么开头符号$:表示的匹配字符以什么结尾符号*:匹配*前面的字符0次或n次eg:ab* 能匹配a 匹配ab 匹配abb符号+:匹配+前面的字符1次或n次符号?:匹配?前面的字符0次或1次符号{m}:匹配前一个字符m次符号{m,n}:匹配前一个字符m到n次(包括n次),m或n可以省略,mn都是正整数
re模块相关函数
1、match从第一个字符开始匹配,如果第一个字符不是要匹配的类型、则匹配失败并报错注意:如果规则带了'+',则匹配1次或者多次,无'+'只匹配一次
import re str1='helloduoseshi'
print(re.match('\D',str1).group()) #执行结果:h
print(re.match('\D{5}',str1).group()) #执行结果:hello
print(re.match('\D*',str1).group()) #执行结果:helloduoceshi
print(re.match('\d',str1).group()) #执行结果:AttributeError: 'NoneType' object has no attribute 'group'
2、search从第一个字符开始查找、一找到就返回第一个字符串,找到就不往下找,找不到则报错
import re str2='123hello123zaq'
str3='dsc12345678qaz'
print(re.search('\D',str2).group()) #执行结果:h
print(re.search('\d',str3).group()) #执行结果:1
3、findall从第一个字符开始查找,找到全部相关匹配为止,找不到返回一个列表[]
import re str1='123hello456qaz'
print(re.findall('\D',str1)) #执行结果:['h', 'e', 'l', 'l', 'o', 'q', 'a', 'z']
4、compile编译模式生成对象,找到全部相关匹配为止,找不到返回一个列表[]
import re str1='hellopythonpythonhellopythonhello'
str2=re.compile('python')
all=str2.findall(str1)
print(all) #执行结果:['python', 'python', 'python']
|
|