在缺省语言环境下,老猿对\d的匹配范围做了个测试,下面的数字包含半角数字.全角数字.中文数字,测试语句如下: >>> m=re.search(r'(\d*)(\D*)(\d*)','123123一二三壹贰叁①②③123') >>> m <re.Match object; span=(0, 18), match='123123一二三壹贰叁①②③123'> >>> m.groups() ('123123', '一二三壹贰叁①②③', '123'…
一.Python中序列的分类 常见序列类型包括字符串(普通字符串和unicode字符串),列表和元组.所谓序列,即成员有序排列,可通过下标访问. 二.Python序列通用操作 下面我们将分别以字符串.列表和元组为例来说明对序列的操作 索引 序列中的元素都是有序的.拥有自己编号(从0开始),我们可以通过索引得到序列中对应的元素: 索引也可以为负值,负数索引表示从右往左开始计数,最后一个元素索引为-1,倒数第二为-2,以此类推. >>> s = 'abcdefg' >>>…
1 序列 在Python中,最基本的数据结构是序列,序列中每个元素被分配一个编号,也称为索引.第一个索引为0,第二个则是1,以此类推.序列中最后一个元素被标为-1,倒数第二个元素被标为-2,以此类推. 2 Python内建序列 Python包含6种内建序列,分别是列表,元组,字符串,UNICODE字符串,BUFFER对象和XRANGE对象.开始重点关注列表和元组. 3 列表和元组(序列) 列表和元组一个很重要的区别是,列表可以修改,元组则不能被修改.几乎所有情况下列表都可以替代元组,但有一个列外…
python贪婪和非贪婪 正则表达式通常用于在文本中查找匹配的字符串.Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符:非贪婪则相反,总是尝试匹配尽可能少的字符.在"*","?","+","{m,n}"后面加上?,使贪婪变成非贪婪.   >>> s="This is a number 234-235-22-423" >>> r…
匹配单个数字重复n次:(\d)\1{n-1}其中,\d表示一位数字,(\d)表示匹配之后捕获该匹配,并分组并对组进行编号\1表示被捕获的第一个分组{n-1}是因为被捕获的第一个分组已经消耗了一位数字,因此要减1. 注意:用python写的时候,模式字符串引号前面一定要加r, 即应该写成: re.findall(r'(\d)\1{3}','11112222')而不是 re.findall('(\d)\1{3}','11112222'),否则会匹配不到任何结果.…
匹配对象是Python中re模块正则表达式匹配处理的返回结果,用于存放匹配的情况.老猿认为匹配对象更多的应该是与组匹配模式的功能对应的,只是没有使用组匹配模式的正则表达式整体作为组0. 为了说明下面的属性和方法,以如下命名组匹配模式串和搜索文本作为例子来介绍: >>> pattern='<h1 class="name">(?P<name>.*)</h1><h1 class="age">(?P<a…
[Python练习题 027] 对10个数字进行排序 --------------------------------------------- 这题没什么好说的,用 str.split(' ') 获取输入的10个数字,然后用 lst.sort() 就完成排序了.代码如下: s = input('请输入10个数字,以空格隔开:') n = [int(x) for x in s.split(' ')] n.sort() print(n) 输出结果如下: 请输入10个数字,以空格隔开:3 23 4…
在Python使用正则表达式需要使用re(regular exprssion)模块,使用正则表达式的难点就在于如何写好p=re.compile(r' 正则表达式')的内容. 下面是在Python中使用正则表达式同时匹配邮箱和电话并进行简单的分类的代码,本文只进行了简单的分类,读者可使用补充部分提供的信息进行详细分类. import re p=re.compile(r'^[\w\d]+[\d\w\_\.]+@([\d\w]+)\.([\d\w]+)(?:\.[\d\w]+)?$|^(?:\+86)…
Python中,os.listdir遍历纯数字文件乱序如何解决 日常跑深度学习视觉相关代码时,常常需要对数据集进行处理.许多图像文件名是利用纯数字递增的方式命名.通常所用的排序函数sort(),是按照string进行比较的.例如原始的目录下的文件是: 1.jpg 12.jpg 19.jpg 120.jpg 190.jpg 但经过os.listdir()后的顺序就变为: 1.jpg 12.jpg 120.jpg 19.jpg 190.jpg 解决这个问题,首先看python中sort()函数的具体…
Python 基本序列-字典 字典(dict)是"键-值 对"的无序可变序列,字典中的每个元素包含两部分,"键"和"值". 字典中的"键"可以是Python中任意不可变的数据,但不能使用列表集合字典作为键,因为这些对象是可变的. 字典中的键不允许重复. 字典作为序列的一种,同样具有以下几个用法 key in dict:检查dict中是否包含键为k的项 len(d):返回d(字典对象)中项的数量; 但是也有些许不同 字典键的类型…