常用内置模块

什么是模块?

模块就是已经写好,包含了python定义和声明的文件.

模块分为内置模块,第三方模块和自定义模块,

使用模块中的内容需要提前使用import导入模块,使用方法为import 模块名

或者 from 模块名 import 函数名

使用第一种方法时,使用模块中的函数为模块名.函数名

使用第二种方法时,直接使用函数名即可

常用内置模块有:

time(时间模块):主要与时间相关

时间戳: 时间戳是从格林威治时间(0时区)1970年1月1日0时0分0秒至现在为止的总秒数,类型为float

结构化时间: 将时间信息存储在元组中,类型为tuple

格式化时间: 将时间按指定格式返回,类型为str

时间戳----->结构化时间:

time.localtime([t]):将时间戳转换为当地的结构化时间,如果无参数,则返回现在当地结构化时间

time.gmtime([t]):将时间戳转换为格林威治的结构化时间,如果无参数,则返回现在格林威治结构化时间

结构化时间----->格式化时间:

time.strftime(fmt,t) 按指定格式返回参数时间的格式化时间,若无t参数,则返回当前当地格式化时间

格式化时间相关的格式化符号:

%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称

格式化时间----->结构化时间:

time.strptime(t.fmt):按格式将格式化时间转换为结构化时间

结构化时间----->时间戳:

time.mktime(t):将结构化时间转换为时间戳

结构化时间 --> %a %b %d %H:%M:%S %Y格式化时间 

time.ctime(t):按以上格式将结构化时间转换为格式化时间

时间戳 --> %a %b %d %H:%M:%S %Y串 

按以上格式将时间戳转换为格式化时间

其他:time.time() 获得当前时间戳

time.sleep(sec):阻塞sec秒

random(随机模块):主要与随机数相关

random.random():返回一个0-1之间的随机浮点数

random.uniform(n,m):返回一个n-m之间的随机浮点数

random.randint(n,m):返回一个n-m之间的随机整数

random.randrange(n,m,l):从range(n,m,l)中随机返回一个整数

random.choice(lst):从lst中随机选一个元素返回

random.sample(lst,n):从lst中随机选n个元素返回,格式为列表

random.shuffle(lst):打乱lst的顺序

os模块:主要与系统的操作相关

os.remove(path):删除文件

os.rename(oldname,newname):重命名文件

os.rmdir(dirname):删除文件夹

os.mkdir(dirname):新建文件夹

os.removedirs(dirname): 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推

os.makedirs(dirname):生成多层递归目录

os.listdir(path):以列表方式返回指定目录下的所有文件和子目录,包括隐藏文件以列表方式

os.stat(path):获取文件/目录信息

os.system(bash command):执行shell命令

os.popen(bash command):执行shell命令,返回结果

os.getcwd() 返回当前工作目录

os.chdir(dirname) 改变当前工作目录

os.path

os.path.abspath(path) 返回path规范化的绝对路径

os.path.split(path) 将path分割成目录和文件名二元组返回

os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素

os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素

os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False

os.path.isabs(path) 如果path是绝对路径,返回True

os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False

os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False

os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略

os.path.getatime(path) 返回path所指向的文件或者目录的最后访问时间

os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间

os.path.getsize(path) 返回path的大小

sys模块:主要与python解释器相关

sys.argv:命令行参数List,第一个元素是程序本身路径

sys.path:返回模块的搜索路径

sys.version:获取Python解释程序的版本信息

sys.platform:返回操作系统平台名称

sys.exit():退出程序,正常退出时exit(0),错误退出sys.exit(1)

re模块:主要与正则表达式相关

re.findall(正则,str):返回所有满足匹配条件的结果,放在列表里,findall会优先显示分组中的内容,在括号中加入?:取消优先显示

re.search(正则,str):函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回一个包含匹配信息的对象,该对象可以通过调用

group方法得到匹配的字符串,如果字符串没有匹配,则返回None.

re.match(正则,str):与search基本相同,但match是从字符串首开始匹配,相当于加了^

re.split('[ab]', 'abcd')  遇到a或b即分割,结果为 ['', '', 'cd'];如果需要保留a,b,加括号即可

re.sub(正则,str,time):将指定内容替换为str,替换time次

re.subn(正则,str,time):将指定内容替换为str,返回元组(替换的结果,替换了多少次)

re.compile(正则):将正则表达式编译成为一个正则表达式对象,节省时间

re.finditer(正则,str)):返回一个存放匹配结果的迭代器,使用group方法查看;节省空间

json模块,pickle模块:主要与序列化相关

json与pickle都是用于序列化的模块,它们各自的优劣在于:

  • json几乎适用于所有的语言,而pickle只适用于python.
  • pickle支持python中几乎所有的数据类型,而json只支持list,dict,str

dumps(args):返回将args序列化后的结果

loads(args):返回将args反序列化后的结果

dump(args,fp):将args序列化后写入fp句柄指定文件

load(fp):返回文件中字符串反序列化后的结果

注:如果使用json.dump()向一个文件中写入多次,则用load读取会报错,而pickle无此问题

猜你喜欢

转载自blog.csdn.net/tszty1997/article/details/84034578