技术QQ交流群:294088839 # 正则表达式 # 掌握正则表达式 #import re # s = r'abc' # # print(re.findall(s, 'abcdsasdads')) # # # # st = "top tip tqp twp tep" # # res = r'top' # # print(re.findall(res,st)) # # # # res = r"t[io]p" # # print(re.findall(res,st)) # compile 编译正则 形成一个对象 # 编译后的正则 运行速度更快 # p = re.compile('aaa') # print(p.findall('aaa')) # 不区分大小写 re.I 这个参数不区分大小写 # csvt_re = re.compile(r'csvt', re.I) # print(csvt_re.findall('cSvT')) # # match # print(csvt_re.match('cSvT')) # # search # print(csvt_re.search('cSvT')) # # finditer 迭代对象 # x = csvt_re.finditer('cSvT') # print(x) # # sub # 查看库里方法 dir() # print(dir(re)) # r1 = r'csvt.net' # print(re.findall(r1, 'csvt.net')) # s = """ # hello csvt # hello csvt hello # csvt hehe # """ # r = r"^csvt" # # 大M 方法 进行多行匹配 # print(re.findall(r, s, re.M)) # # tel = r""" # \d{3,4} # -? # \d{8} # """ # # 如果正则是多行的时候 就可以利用 大X方法 进行匹配 # print(re.findall(tel, '010-12345678', re.X)) # email = r"\w{3}@\w+(\.com|\.cn)" # print(re.match(email, '[email protected]')) # print(re.match(email, '[email protected]').group(0)) # 爬虫练习 # 获取HTML代码 # import re # import urllib # def getHtml(url): # page = urllib.request.urlopen(url) # html = page.read() # return html # #利用正则 找到图片的地址 # def getImg(html): # reg = r'src="(.*\.jpg)" size' # imgre = re.compile(reg) # html = html.decode('utf-8') # python 3 中 对数据的爬取 需要设置汉字编码 # imglist = re.findall(imgre, html) # # return imglist # x = 0 # for i in imglist: # # print(i) # urllib.request.urlretrieve(i, '%s.jpg' % x) # x += 1 # html = getHtml("https://tieba.baidu.com/p/5694970555") # #print(getImg(html)) # getImg(html) # python 对内存的使用 # 浅拷贝和深拷贝 # 所谓浅拷贝就是对引用的拷贝 # 所谓深拷贝就是对对象的资源的拷贝 # 例子: # a = [1,2,3] # b = a # print(b) # 内存的位置 # print(id(a)) # print(id(b)) # a.append('a') # print(a) # print(b) # 拷贝数据 # import copy # a = [1, 2, 3, ['a', 'b', 'c']] # b = a # c = copy.copy(a) # 看着数据一样的 但是地址空间是不一样的 # print(b) # print(c) # print(id(a)) # print(id(b)) # print(id(c)) # 这样当改A的时候 C是不变的 # a.append('d') # print(a) # print(b) # print(c) # 浅拷贝 复制出来一个跟父对象一样的数据 但是地址空间变了 # 但是里面的元素的地址是没有发生变化的 如果父对象追加的数据 # 子对象是不会追加的 但是如果父对象元素进行修改的话 这样 子元素就会变 # 字符串和元组是不可变类型 列表跟数组是可变类型 # 深拷贝 把所有的数据都拷贝数据 什么都发生变化
python 正则表达式re库学习
猜你喜欢
转载自blog.csdn.net/Drug_/article/details/81562673
今日推荐
周排行