目录
1,模块
"""
[导入:import]
①import 模块名 [as 别名]
这个语句会导入模块中的所有成员,当需要使用模块中的成员时,需要使用模块名或者别名作前缀
②from 模块名 import 成员名1 [as 别名1] , 成员名2 [as 别名2]
这个语句会导入模块中的指定成员,使用指定成员时无需使用模块名作前缀
注意:[ ]内的语句是为模块/成员起别名,可以不进行这个操作。但是一旦起了别名,调用时只能使用别名。
"""
# 示例1
import sys, time as TIME # 一次导入两个模块
print(sys.winver)
start_time = TIME.time()
# 示例2
from sys import argv as ar, winver
print(ar[0])
print(winver)
2,文件
基本操作
"""
文件:
①打开:file=open(filename,m)-----m是打开方式,如'w','a',默认为'r'
②关闭:file.close()
③写入:file.write(str)
④读取:file.read(chnum)---------chnum:指定读取的字符数,为空时直接读取全部内容
file.readlines()----------------以列表形式返回全部内容,列表每一个元素为文件内容的一行
file.readline()-----------------读取文件内容的一行,再次调用时会读取下一行的内容
⑤重命名:import os---os.rename(filename,newname)
⑥删除:import os---os.remove(filename)
"""
"""
文件补充:
①指针偏移,使用seek方法:filename.seek(offset, whence)
offset:移动的字节数。大于0表示向文件末尾方向移动,小于0表示向文件开头方向移动。
whence:可选。默认为0,表示从文件头开始偏移;1表示从当前位置开始偏移;2表示从文件尾开始偏移。
使用tell方法获得指针当前位置:filename.tell()
②with语句:with对实现了__enter__()和__exit__()方法的对象使用。
with expression as target: # 首先expression被求值,接着target接收expression的__enter__()方法的返回值。
with_body # 执行这段代码的过程无论是否产生异常,都会调用expression的__exit__()方法完成“清理”工作(例如关闭文件释放资源)。
"""
异常处理
try:
测试代码段
except (ErrorName1, ErrorName2) as result:
print(result) # 捕获到错误后,会打印出错误描述
产生异常时执行的代码段
else:
没有异常时执行的代码段
finally:
无论是否产生异常都会执行的代码段
# 要想捕获所有异常:将(ErrorName1, ErrorName2)替换为Exception
3,正则表达式
符号含义
"""
正则表达式符号含义:
. : 表示任何单个字符(不包括换行符)
[ ] : 字符集,对单个字符给出取值范围
[^ ] : 非字符集,对单个字符给出排除范围
* : 前一个字符0次或无限次扩展
+ : 前一个字符1次或无限次扩展
? : 前一个字符0次或1次
| : 左右表达式任意一个
{ m } : 表示前一个字符扩展m次
{m, } : 表示前一个字符扩展次数≥m
{m,n} : 表示前一个字符扩展[m,n]次
^ : 匹配字符串开头
$ : 匹配字符串结尾
( ) : 分组标记,内部只能使用|
\d : 数字字符,等价于[0-9]
\D : 非数字字符
\w : 单词字符,等价于[A-Za-z0-9_]:数字字母加下划线
\W : 非单词字符
\s : 空白符:Space,Tab,换行符
\S : 非空白符
"""
re模块的常用方法
正则表达式通常搭配re模块使用:import re
"""
①object = re.compile(pattern, flags) # 将正则表达式转化为对象,供re的其他方法调用
说明:pattern是字符串形式的正则表达式,通常写成r"str"的形式,前面加r可以使得字符串不被转义。
flags可选,用于控制匹配模式,常用的有re.I(使匹配对大小写不敏感)和re.S(使.匹配包括换行在内的所有字符)。
②re.findall(pattern, string, flags) # 以列表形式返回string中所有能与pattern相匹配的字符串
③re.search(pattern, string, flags) # 返回第一个成功匹配的对象
④re.match(pattern, string, flags) # 从字符串起始位置开始匹配,返回第一个成功匹配的对象
⑤re.sub(pattern, repl, string, count, flags) # 在string中将符合pattern的字符串替换为repl。count和flags可选,前者表示替换发生的次数。
⑥re.subn:参数与sub相同。但返回的结果是一个元组,包含两个元素:分别是替换后string(也就是sub返回的结果)和发生替换的次数。
"""