re.sub
功能,比replace强大的替换函数,将正则表达式匹配上的模块替换成repl
re.sub(pattern, repl, string, count=0, flags=0)
返回最左边正则表达式限定的被repl代替的字符串,如果正则表达式没有匹配上,则字符串不做修改。
\n is converted to a single newline character,
\r is converted to a carriage return, and so forth. Unknown escapes such as \j are left alone. 如果后面跟的是数字 such as \6, 则替换第6组字符串,group 6 in the pattern. For example:
> > re.sub(r'def\s+([a-zA-Z_][a-zA-Z_0-9]*)\s*\(\s*\):', ... r'static PyObject*\npy_\1(void)\n{', ... 'def myfunc():') 'static PyObject*\npy_myfunc(void)\n{'
如果repl是一个函数,则会对每个不重叠的模式发生调用。 该函数采用单个匹配对象参数,并返回替换字符串。 例如:
> > def dashrepl(matchobj): ... if matchobj.group(0) == '-': return ' ' ... else: return '-' > re.sub('-{1,2}', dashrepl, 'pro----gram-files') 'pro--gram files' > re.sub(r'\sAND\s', ' & ', 'Baked Beans And Spam', flags=re.IGNORECASE) 'Baked Beans & Spam'
模板可以是一个字符串或者RE对象
count是最大替换个数,非负整数,如果省略或者取0则全文档都被匹配替换;
class bytes([source[, encoding[, errors]]])
返回一个新的数组对象,这个数组对象不能对数组元素进行修改。每个元素值范围: 0 <= x < 256。bytes函数与bytearray函数主要区别是bytes函数产生的对象的元素不能修改,而bytearray函数产生的对象的元素可以修改。因此,除了可修改的对象函数跟bytearray函数不一样之外,其它使用方法全部是相同的。最后它的参数定义方式也与bytearray函数是一样的。
实例
a = bytes("abs",'utf-8') print(a) b'abs' b = bytes(1) print(b) b'\x00'
class bytearray([source[, encoding[, errors]]])
返回一个新的字节数组。 bytearray类是0 <= x <256的整数可变序列。它具有可变序列类型中描述的可变序列的大多数常用方法,以及字节类型具有的大多数方法,请参见字节和 Bytearray操作。
可选的源参数可用于以几种不同的方式初始化数组:
如果是字符串,还必须给出编码(和可选的错误)参数; bytearray()然后使用str.encode()将字符串转换为字节。
如果它是整数,则数组将具有该大小,并且将以空字节初始化。
如果是符合缓冲区接口的对象,则将使用对象的只读缓冲区来初始化字节数组。
如果它是一个可迭代的,它必须是0 <= x <256的整数的迭代,它们被用作数组的初始内容。
没有参数,将创建一个大小为0的数组。
bytes.strip([chars]) & bytearray.strip([chars])
返回删除指定的前导和尾部字节的序列副本。 chars参数是指定要删除的字节值集的二进制序列 - 该名称是指通常使用ASCII字符的方法。 如果省略或无,则chars参数默认为删除ASCII空格。 chars参数不是前缀或后缀; 相反,其值的所有组合都被剥离:
> b' spacious '.strip() b'spacious' > b'www.example.com'.strip(b'cmowz.') b'example'
string.punctuation
在C语言环境中被视为标点符号的ASCII字符串
以上这篇对python数据清洗容易遇到的函数-re.sub bytes string详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。