函数
学习资料也可以加下Python扣扣裙:3零4零5零799自己下载学习下
4、内置函数
模块
一、模块简介
模块是实现了某个功能的代码集合,比如几个.py文件可以组成代码集合即模块。其中常见的模块有os模块(系统相关),file模块(文件操作相关)
模块主要分三类:
自定义模块 :所谓自定义模块,即自己编写Python文件组成的模块。
第三方模块 :采用其他人编写的模块,即第三方提供的模块
内置模块:python内置的模块
三、常用内置模块
内置模块是Python自带的功能,在使用时,需要先导入再使用
1、sys模块
用于提供python解释器相关操作
import sys
2、os模块
提供系统级别的操作
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd
os.curdir 返回当前目录: ('.')
os.pardir 获取当前目录的父目录字符串名:('..')
os.makedirs('dir1/dir2') 可生成多层递归目录
os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname
os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename("oldname","new") 重命名文件/目录
os.stat('path/filename') 获取文件/目录信息
os.sep 操作系统特定的路径分隔符,win下为"\\",Linux下为"/"os.linesep 当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"os.pathsep 用于分割文件路径的字符串
os.name 字符串指示当前使用平台。win->'nt'; Linux->'posix'os.system("bash command") 运行shell命令,直接显示
os.environ 获取系统环境变量
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所指向的文件或者目录的最后修改时间
3、hashlib模块
用于加密相关的操作,代替了md5模块和sha模块,主要提供SHA1,SHA224,SHA256,SHA384,SHA512,MD5算法
5、re模块
re提供正则表达式相关操作
字符:
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结束
次数:
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
match:
match,从起始位置开始匹配,匹配成功返回一个对象,未匹配成功返回None
match(pattern, string, flags=0)
match语法
match示例
search:
search,浏览整个字符串去匹配第一个,未匹配成功返回None
search(pattern, string, flags=0)
6、序列化模块
Python中用于序列化的两个模块
json 用于【字符串】和 【python基本数据类型】 间进行转换
pickle 用于【python特有的类型】 和 【python基本数据类型】间进行转换
Json模块提供了四个功能:dumps、dump、loads、load
pickle模块提供了四个功能:dumps、dump、loads、load
7、configparser模块
configparser用于处理特定格式的文件,其本质上是利用open来操作文件。
文件名为xxx000的内容如下:
具体操作示例如下:
(1)获取文件中所有节点import configparser
config = configparser.ConfigParser()
config.read('xxxooo', encoding='utf-8')
ret = config.sections()print(ret)
(2)获取指定节点的所有键值对import configparser
config = configparser.ConfigParser()
config.read('xxxooo', encoding='utf-8')
ret = config.items('section1')print(ret)
(3)获取指定节点的所有的键import configparser
config = configparser.ConfigParser()
config.read('xxxooo', encoding='utf-8')
ret = config.options('section1')print(ret)
(4)获取指定节点下指定key的值import configparser
config = configparser.ConfigParser()
config.read('xxxooo', encoding='utf-8')
v = config.get('section1', 'k1')# v = config.getint('section1', 'k1')# v = config.getfloat('section1', 'k1')# v = config.getboolean('section1', 'k1')
print(v)
(5)检查、删除、添加节点import configparser
config = configparser.ConfigParser()
config.read('xxxooo', encoding='utf-8')
# 检查has_sec = config.has_section('section1')print(has_sec)
# 添加节点config.add_section("SEC_1")
config.write(open('xxxooo', 'w'))
# 删除节点config.remove_section("SEC_1")
config.write(open('xxxooo', 'w'))
(6)检查、删除、设置指定组内的键值对import configparser
config = configparser.ConfigParser()
config.read('xxxooo', encoding='utf-8')
# 检查has_opt = config.has_option('section1', 'k1')print(has_opt)
# 删除config.remove_option('section1', 'k1')
config.write(open('xxxooo', 'w'))
# 设置config.set('section1', 'k10', "123")
config.write(open('xxxooo', 'w'))
四、模块
发送
来源:
网友评论