“Python常用模块”的版本间的差异

来自YTYZX有图有真相的百科
跳转至: 导航搜索
(创建页面,内容为“urllib模块: urllib.quote(string[,safe]) 对字符串进行编码。参数safe指定了不需要编码的字符 urllib.unquote(string) 对字符串进行解码 ur...”)
 
第1行: 第1行:
urllib 模块:
+
1. time 模块:常用表示时间方式 :  时间戳,格式化的时间 字符串 ,元组(struct_time)
urllib.quote(string[,safe]) 字符串 进行编码。参数safe指定了不需要编码的字符
+
2. OS模块
urllib.unquote(string) 对字符串进行解码
+
  3. sys模块
urllib.quote_plus(string[,safe]) 与urllib.quote类似,但这个方法 ‘+‘来替换‘ ‘,而quote用‘%20‘来代替‘
+
  4. configparser模块: 于生成和修改常见配置文档。
urllib.unquote_plus(string ) 字符串 进行解码
+
  5. hashlib模块
urllib.urlencode(query[,doseq]) 将dict或者包含两个元素 元组列 转换成url参数
+
  6. re正则表达式模块:
  例如 字典{‘name‘:‘wklken‘,‘pwd‘:‘123‘}将被转换为”name=wklken&pwd=123″
+
    一. 常用正则表达式符号和语法:
urllib.pathname2url(path) 将本地路径转换成url路径
+
'.' 匹配所有 字符串 ,除\n以外
urllib.url2pathname(path) 将url路径转换成本地路径
+
‘-’ 表示范围[0-9]
urllib.urlretrieve(url[,filename[,reporthook[,data]]]) 下载远程数据到本地
+
'*' 匹配前面 达式零次或多次 要匹配 * 字符,请使用 \*。
filename:指定保存到本地的路径(若未指定该,urllib生成一个临时文件保存数据)
+
'+' 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+
reporthook:回调函数 当连接上服务器、 及相应的数据块传输完毕的时候会触发该回调
+
'^' 匹配字符串开头
data:指post到服务器 数据
+
‘$’ 匹配字符串结尾 re
rulrs = urllib.urlopen(url[,data[,proxies]]) 抓取网页信息,[data]post数据到Url,proxies设置的代理
+
'\' 转义字符, 使后一个字符改变原来的意思,如果字符串中有字符*需要匹配 \*或者字符集[*] re.findall(r'3\*','3*ds')结['3*']
urlrs.readline() 跟文件对象使用
+
'*' 匹配前面 字符0次或多次 re.findall("ab*","cabc3abcbbac")结果:['ab', 'ab', 'a']
urlrs.readlines() 跟文件对象使用一样
+
‘?’ 匹配前一个字符串0次或1次 re.findall('ab?','abcabcabcadf') 结果['ab', 'ab', 'ab', 'a']
urlrs.fileno() 跟文件对象使用一样
+
'{m}' 匹配前 个字符m次 re.findall('cb{1}','bchbchcbfbcbb') 结果['cb', 'cb']
urlrs.close() 跟文件对象使用
+
'{n,m}' 匹配前 个字符n到m次 re.findall('cb{2,3}','bchbchcbfbcbb') 结果['cbb']
urlrs.info()  返回一个httplib.HTTPMessage对象 表示远程服务器返回的头信息
+
'\d' 匹配数字 等于[0-9] re.findall('\d','电话:10086') 结果['1', '0', '0', '8', '6']
urlrs.getcode()  获取请求返回状态HTTP状态码
+
'\D' 匹配非数字,等于[^0-9] re.findall('\D','电话:10086')结果['电', '话', ':']
urlrs.geturl() 返回请求的URL
+
'\w' 匹配字 母和数字 等于[A-Za-z0-9] re.findall('\w','alex123,./;;;')结果['a', 'l', 'e', 'x', '1', '2', '3']
re模块:
+
'\W' 匹配 非英文 母和数 ,等于[^A-Za-z0-9] re.findall('\W','alex123,./;;;')结果[',', '.', '/', ';', ';', ';']
一.常用正则表达式符号和语法:
+
'\s'  匹配 空白 字符 re.findall('\s','3*ds \t\n')结 [' ', '\t', '\n']
'.' 匹配 所有 符串 除\n以外
+
'\S' 匹配 非空白 re.findall('\s','3*ds \t\n')结果['3', '*', 'd', 's']
- ’ 表示范围[0-9]
+
'\A' 匹配字符 串开头
'*' 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。
+
'\Z' 匹配字符串
'+' 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+
+
'\b' 单词的词首和词尾,单词被定义为一个字母数字序列,因此词尾是用空白符或非字母数字符来表示的
'^' 匹配字 符串开头
+
'\B与\b相反,只在当 位置不在单词边界时匹配
‘$’ 匹配 符串结尾 re
+
'(?P<name>...)' 分组 除了原有编号外在指定一个额外的别名 re.search("(?P<province>[0-9]{4})(?P<city>[0-9]{2})(?P<birthday>[0-9]{8})","371481199306143242").groupdict("city") 结果{'province': '3714', 'city': '81', 'birthday': '19930614'}
'\' 转义字符, 使后一个字符改变原来的意思,如果字符串中有字符*需要 匹配 ,可以\*或者 字符 集[*] re.findall(r'3\*','3*ds')结['3*']
+
[是定义 匹配 符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格或者*号。
'*' 匹配 前面的 符0次或多次 re.findall("ab*","cabc3abcbbac")结果 ['ab', 'ab', 'a']
+
二.常用的re函数:
‘?’ 匹配 前一个 字符 串0次或1次 re.findall('ab?','abcabcabcadf') 果['ab', 'ab', 'ab', 'a']
+
方法/属性 作用
'{m}' 匹 前一个字符m次 re.findall('cb{1}','bchbchcbfbcbb')结果['cb', 'cb']
+
re.match(pattern, string, flags=0) 从字符串的起始位置 匹配 ,如果起始位置匹配不成功的话,match()就返回none
'{n,m}匹配 一个字符n到m次 re.findall('cb{2,3}','bchbchcbfbcbb')结果['cbb']
+
re.search(pattern, string, flags=0) 扫描整个字符串并返回第一个成功的匹配
'\d' 匹配数字 等于[0-9] re.findall('\d','电话:10086')结果['1', '0', '0', '8', '6']
+
re.findall(pattern, string, flags=0) 找到RE 匹配 的所有 字符 串,并把他们作为一个列表返回
'\D' 匹配非数字,等于[^0-9] re.findall('\D',' 电话:10086')结果['电', '话', ':']
+
re.finditer(pattern, string, flags=0找到RE 匹配 的所有 字符 串,并把他们作为一个迭代器返回
'\w' 匹配字 母和数字,等于[A-Za-z0-9] re.findall('\w','alex123,./;;;')结果['a', 'l', 'e', 'x', '1', '2', '3']
+
re.sub(pattern, repl, string, count=0, flags=0) 替换 匹配 到的 字符串
'\W' 匹配 非英文字母和数字,等于[^A-Za-z0-9] re.findall('\W','alex123,./;;;') 结果[',', '.', '/', ';', ';', ';']
+
  7. logging模块
'\s' 匹配 空白 字符 re.findall('\s','3*ds \t\n') 结果[' ', '\t', '\n']
+
  8. urllib模块:
'\S' 匹配 非空白 字符 re.findall('\s','3*ds \t\n')结果['3', '*', 'd', 's']
+
    urllib.quote(string[,safe]) 对 字符 串进行编码。参数safe指定了不需要编码的 字符
'\A'  匹配字符串 开头
+
    urllib.unquote(string) 对字符串进行解码
'\Z' 匹配字符串结尾
+
    urllib.quote_plus(string[,safe]与urllib.quote类似 但这 方法用‘+‘来替换‘ ‘,而quote用‘%20‘来代替‘ ‘
'\b' 匹配单词的词首和词尾,单词被定义为一个字母数 序列,因此词尾是用空白 或非字母数 字符 来表示的
+
    urllib.unquote_plus(string ) 对字符串进行解码
'\B' 与\b相反,只在当前位置不在单词边界时匹配
+
    urllib.urlencode(query[,doseq]) 将dict或者包含两个元素的元组列表转换成url参数。
'(?P<name>...)' 分组 除了原有编号外在指定一 额外的别名 re.search("(?P<province>[0-9]{4})(?P<city>[0-9]{2})(?P<birthday>[0-9]{8})","371481199306143242").groupdict("city"结果{'province': '3714', 'city': '81', 'birthday': '19930614'}
+
    例如 字典{ ‘name‘:‘wklken‘,‘pwd‘:‘123‘} 将被转换为”name=wklken&pwd=123″
[] 是定义匹配的字符范围。比如 [a-zA-Z0-9表示相应位置的字符要匹配英文字符和 字。[\s*]表示空格或者*号。
+
    urllib.pathname2url(path将本地路径转换成url路径
二.常用的re 函数
+
    urllib.url2pathname(path) 将url路径转换成本地路径
方法/属性 作用
+
    urllib.urlretrieve(url[,filename[,reporthook[,data]]]) 下载远程 据到本地
re.match(pattern, string, flags=0) 从字符串 起始位置匹配,如果起始位置匹配不成功 话,match()就返回none
+
      filename:指定保存到本地的路径(若未指定该,urllib生成一个临时文件保存数据)
re.search(pattern, string, flags=0扫描整个字符串并返回第一个成功 匹配
+
      reporthook:回调 函数 ,当连接上服务器、以及相应的数据块传输完毕 时候会触发该回调
re.findall(pattern, string, flags=0找到RE匹配的所有字符串,并把他们作为 个列表返回
+
      data:指post到服务器 数据
re.finditer(pattern, string, flags=0找到RE匹配的所有字符串,并把他们作为 个迭代器返回
+
    rulrs = urllib.urlopen(url[,data[,proxies]]抓取网页信息,[data]post数据到Url,proxies设置 代理
re.sub(pattern, repl, string, count=0, flags=0替换匹配到的字符串
+
    urlrs.readline() 跟文件对象使用一样
math模块
+
    urlrs.readlines()  跟文件对象使用
ceil:取大于等于x的最小的整数值,如果x是 个整数,则返回x
+
    urlrs.fileno()  跟文件对象使用
copysign:把y的正负号加到x前面 可以使用0
+
    urlrs.close()  跟文件对象使用
cos:求x 余弦,x必须是弧度
+
    urlrs.info() 返回一个httplib.HTTPMessage对象 表示远程服务器返回 头信息
degrees:把x从弧度转换成角度
+
    urlrs.getcode() 获取请求 回状态HTTP状态码
e:表示一个常量
+
    urlrs.geturl() 回请求的URL
exp: 回math.e,也就是2.71828的x次方
 
expm1:返回math.e的x( 其值为2.71828) 次方的值减1
 
fabs: 回x的绝对值
 
factorial:取x的阶乘的值
 
floor:取小于等于x的最大的整数值,如果x是一个整数,则返回自身
 
fmod:得到x/y的余数,其值是一个浮点数
 
frexp:返回一个元组(m,e),其计算方式为:x分别除0.5和1,得到一个值的范围
 
fsum:对迭代器里的每个元素进行求和操作
 
gcd:返回x和y的最大公约数
 
hypot:如果x是不是无穷大的数字,则返回True,否则返回False
 
isfinite:如果x是正无穷大或负无穷大,则返回True,否则返回False
 
isinf:如果x是正无穷大或负无穷大,则返回True,否则返回False
 
isnan:如果x不是数字True,否则返回False
 
ldexp:返回x*(2**i)的值
 
log:返回x的自然对数,默认以e为基数,base参数给定时,将x的对数返回给定的base,计算式为:log(x)/log(base)
 
log10:返回x的以10为底的对数
 
log1p:返回x+1的自然对数(基数为e)的值
 
log2:返回x的基2对数
 
modf:返回由x的小数部分和整数部分组成的元组
 
pi:数字常量,圆周率
 
pow:返回x的y次方,即x**y
 
radians:把角度x转换成弧度
 
sin:求x(x为弧度)的正弦值
 
sqrt:求x的平方根
 
tan:返回x(x为弧度)的正切值
 
trunc:返回x的整数部分
 

2020年8月1日 (六) 15:27的版本

1. time模块:常用表示时间方式: 时间戳,格式化的时间字符串,元组(struct_time)
2. OS模块
3. sys模块
4. configparser模块:用于生成和修改常见配置文档。
5. hashlib模块
6. re正则表达式模块:
   	一.常用正则表达式符号和语法:

'.' 匹配所有字符串,除\n以外 ‘-’ 表示范围[0-9] '*' 匹配前面的子表达式零次或多次。要匹配 * 字符,请使用 \*。 '+' 匹配前面的子表达式一次或多次。要匹配 + 字符,请使用 \+ '^' 匹配字符串开头 ‘$’ 匹配字符串结尾 re '\' 转义字符, 使后一个字符改变原来的意思,如果字符串中有字符*需要匹配,可以\*或者字符集[*] re.findall(r'3\*','3*ds')结['3*'] '*' 匹配前面的字符0次或多次 re.findall("ab*","cabc3abcbbac")结果:['ab', 'ab', 'a'] ‘?’ 匹配前一个字符串0次或1次 re.findall('ab?','abcabcabcadf')结果['ab', 'ab', 'ab', 'a'] '{m}' 匹配前一个字符m次 re.findall('cb{1}','bchbchcbfbcbb')结果['cb', 'cb'] '{n,m}' 匹配前一个字符n到m次 re.findall('cb{2,3}','bchbchcbfbcbb')结果['cbb'] '\d' 匹配数字,等于[0-9] re.findall('\d','电话:10086')结果['1', '0', '0', '8', '6'] '\D' 匹配非数字,等于[^0-9] re.findall('\D','电话:10086')结果['电', '话', ':'] '\w' 匹配字母和数字,等于[A-Za-z0-9] re.findall('\w','alex123,./;;;')结果['a', 'l', 'e', 'x', '1', '2', '3'] '\W' 匹配非英文字母和数字,等于[^A-Za-z0-9] re.findall('\W','alex123,./;;;')结果[',', '.', '/', ';', ';', ';'] '\s' 匹配空白字符 re.findall('\s','3*ds \t\n')结果[' ', '\t', '\n'] '\S' 匹配非空白字符 re.findall('\s','3*ds \t\n')结果['3', '*', 'd', 's'] '\A' 匹配字符串开头 '\Z' 匹配字符串结尾 '\b' 匹配单词的词首和词尾,单词被定义为一个字母数字序列,因此词尾是用空白符或非字母数字符来表示的 '\B' 与\b相反,只在当前位置不在单词边界时匹配 '(?P<name>...)' 分组,除了原有编号外在指定一个额外的别名 re.search("(?P<province>[0-9]{4})(?P<city>[0-9]{2})(?P<birthday>[0-9]{8})","371481199306143242").groupdict("city") 结果{'province': '3714', 'city': '81', 'birthday': '19930614'} [] 是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*]表示空格或者*号。 二.常用的re函数: 方法/属性 作用 re.match(pattern, string, flags=0) 从字符串的起始位置匹配,如果起始位置匹配不成功的话,match()就返回none re.search(pattern, string, flags=0) 扫描整个字符串并返回第一个成功的匹配 re.findall(pattern, string, flags=0) 找到RE匹配的所有字符串,并把他们作为一个列表返回 re.finditer(pattern, string, flags=0) 找到RE匹配的所有字符串,并把他们作为一个迭代器返回 re.sub(pattern, repl, string, count=0, flags=0) 替换匹配到的字符串

7. logging模块
8. urllib模块:
   urllib.quote(string[,safe]) 对字符串进行编码。参数safe指定了不需要编码的字符
   urllib.unquote(string) 对字符串进行解码
   urllib.quote_plus(string[,safe]) 与urllib.quote类似,但这个方法用‘+‘来替换‘ ‘,而quote用‘%20‘来代替‘ ‘
   urllib.unquote_plus(string ) 对字符串进行解码
   urllib.urlencode(query[,doseq]) 将dict或者包含两个元素的元组列表转换成url参数。
   例如 字典{‘name‘:‘wklken‘,‘pwd‘:‘123‘}将被转换为”name=wklken&pwd=123″
   urllib.pathname2url(path) 将本地路径转换成url路径
   urllib.url2pathname(path) 将url路径转换成本地路径
   urllib.urlretrieve(url[,filename[,reporthook[,data]]]) 下载远程数据到本地
      filename:指定保存到本地的路径(若未指定该,urllib生成一个临时文件保存数据)
      reporthook:回调函数,当连接上服务器、以及相应的数据块传输完毕的时候会触发该回调
      data:指post到服务器的数据
   rulrs = urllib.urlopen(url[,data[,proxies]]) 抓取网页信息,[data]post数据到Url,proxies设置的代理
   urlrs.readline() 跟文件对象使用一样
   urlrs.readlines() 跟文件对象使用一样
   urlrs.fileno() 跟文件对象使用一样
   urlrs.close() 跟文件对象使用一样
   urlrs.info() 返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息
   urlrs.getcode() 获取请求返回状态HTTP状态码
   urlrs.geturl() 返回请求的URL