偏函数(一)
print(int('12345')) # 将字符串按十进制转换为整数
print('转换为八进制:', int('1234', base = 8))
print('转换为十六进制:', int('1234', 16))
# 将1010按二进制转换为整数
print(int('1010', base = 2))
print(int('101010', base = 2))
print(int('10101100', base = 2))
# 定义函数
def new_int(s):
return int(s, base = 2)
print(new_int('1010'))
from functools import partial
new_int = partial(int, base = 2)
print(new_int('1010'))
12345
转换为八进制: 668
转换为十六进制: 4660
10
42
172
10
10
'''
. 匹配任意一个字符(除了\n)
[] 匹配列表中的字符
\w 匹配字母 数字 下划线 即a-z A-Z 0-9
\W 匹配不是字母数字下划线
\s 匹配空白字符,即空格(\n \t)
\S 匹配不是空白的字符
\d 匹配数字 即0-9
\D 匹配非数字的字符
'''
import re
print('----------.的使用----------')
s = 'a'
s = 'A'
s = '8'
s = '_'
pattern = '.'
o = re.match(pattern, s)
print(o)
print('----------\d的使用----------')
s = '0'
s = '6'
s = '8'
s = '_'
pattern = '.'
o = re.match(pattern, s)
print(o)
# match方法的使用
import re
s = 'hello python'
pattern = 'hello'
o = re.match(pattern, s)
print(o)
print(dir(o))
print(o.group())
print(o.span())
print(o.start())
print('flags参数的使用')
s = 'hello python'
pattern = 'Hello'
o = re.match(pattern, s, flags = re.I)
print(o)
print(o.group())
# 重复数量符号
'''
* : 0次或多次
? : 0次或1次
+ : 至少1次
{m} : 重复m次
{m, n} : 重复m到n次
{m} : 至少重复m次
'''
import re
print('-------*的使用---------')
pattern = '\d*'
s = '123qwe'
s = '1qwe'
s = '123456qwe'
s = 'qwe'
o = re.match(pattern, s)
print(o)
print('-------+的使用---------')
pattern = '\d+'
s = '123qwe'
s = '1qwe'
s = '123456qwe'
s = 'qwe'
o = re.match(pattern, s)
print(o)
print('--------{m}-------')
pattern = '\d{2}'
s = '123qwe'
o = re.match(pattern, s)
print(o)
print('--------{m, n}-------')
pattern = '\d{2, 5}'
s = '123345qwe'
o = re.match(pattern, s)
print(o)
print('--------{m,}-------')
pattern = '\d{2,}'
s = '123qwe'
o = re.match(pattern, s)
print(o)
-------*的使用---------
<re.Match object; span=(0, 0), match=''>
-------+的使用---------
None
--------{m}-------
<re.Match object; span=(0, 2), match='12'>
--------{m, n}-------
None
--------{m,}-------
<re.Match object; span=(0, 3), match='123'>
# 重复数量限定符的使用
import re
# 匹配出一个字符串首字母为大写字符,后边都是小写字符,这些小写字母可有可无
pattern = '[A-Z][a-z]*'
s = 'Hello'
s = 'HEllo'
o = re.match(pattern, s)
print(o)
print('--------案例2---------')
# 匹配出有效的变量名(字母,数字,下划线,而且数字不能开头
pattern = '[a-zA-Z][a-zA-Z0-9]*'
s = 'userName'
o = re.match(pattern, s)
print(o)
print('----------案例3-----------')
# 匹配出1-99之间的数字
pattern = '[1-9]\d?'
s = '2'
o = re.match(pattern, s)
print(o)
print('----------案例4-----------')
# 匹配出一个随机密码8-20位以内(大写字母 小写字母 下划线 数字)
pattern = '\w{8,20}'
s = '123456789'
o = re.match(pattern, s)
print(o)
版权声明:本文为m0_62329504原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。