当前位置: 首页 > news >正文

产品 网站建设做农产品的网站

产品 网站建设,做农产品的网站,福州网站建设兼职,雨花区最新情况#x1f44f;作者简介#xff1a;大家好#xff0c;我是爱敲代码的小王#xff0c;CSDN博客博主,Python小白 #x1f4d5;系列专栏#xff1a;python入门到实战、Python爬虫开发、Python办公自动化、Python数据分析、Python前后端开发 #x1f4e7;如果文章知识点有错误… 作者简介大家好我是爱敲代码的小王CSDN博客博主,Python小白 系列专栏python入门到实战、Python爬虫开发、Python办公自动化、Python数据分析、Python前后端开发 如果文章知识点有错误的地方请指正和大家一起学习一起进步 如果感觉博主的文章还不错的话请三连支持一下博主哦 博主正在努力完成2023计划中以梦为马扬帆起航2023追梦人 python入门到实战专栏从入门到实战  Python爬虫开发专栏从入门到实战  Python办公自动化专栏从入门到实战 Python数据分析专栏从入门到实战 Python前后端开发专栏从入门到实战 目录 动态添加属性和方法 __slots__ 的作用 正则表达式概述 match函数的使用 正则表达式修饰符 常用匹配符 限定符  限定符使用示例 动态添加属性和方法 动态编程语言是高级程序设计语言的一个类别在计算机科学领域 已被广泛应用。 它是指在运行时可以改变其结构的语言 例如新的函数、 对象、甚至代码可以被引进 已有的函数可以被删除或是其他结构上的变化。  运行过程中给对象、类添加属性和方法 #codingutf-8 import types class Person():def __init__(self,namexiao,agetong):self.namexiao namexiaoself.agetong agetong p1 Person(zhangsan,20) p2 Person(lisi,30) #动态给对象添加属性和方法 p1.score 100 print(p1.score) def run(self):print(f{self.namexiao},running...)#动态的对象添加方法 p1.run types.MethodType(run,p1) p1.run() types.MethonType的使用 p1.run types.MethodType(run,p1) # 即使换成 xxx types.MethodType(run,p1) # xxx()调用一样还用 # 因为之前提示缺少参数主要是不知道self到底是谁 # 而types.MethodType(run,p1)则是告诉解释器self指的就是p1 给类动态添加静态方法以及类方法 staticmethod def staticfunc():print(---static method---) Person.staticfunc staticfunc Person.staticfunc() classmethod def clsfunc(cls):print(---cls method---) Person.clsfunc clsfunc Person.clsfunc() __slots__ 的作用 1、 __slots__ 对动态添加成员变量、成员方法有限制。对动态添加类属性、类方法没有限制。 2、 __slots__ 只对本类有限制不限制子类 class Person():__slots__ {namexiao,agetong}def __init__(self,namexiao,agetong):self.namexiao namexiaoself.agetong agetongdef eat(self):print(人是铁饭是钢要吃) if __name__ __main__:p1 Person(wang,18) # p1.gender man #AttributeError: Person object has no attribute gender正则表达式概述 概念  正则表达式是对字符串操作的一种逻辑公式就是用事先定义好的一些特定字符、及这些特定字符的组合组成一个“规则字符串”这个“规则字符串”用来表达对字符串的一种过滤逻辑 可以用来做检索截取或者替换操作。 作用 1、给定的字符串是否符合正则表达式的过滤逻辑称作“匹配”。 2、可以通过正则表达式从字符串中获取我们想要的特定部分。 3、还可以对目标字符串进行替换操作。 基本函数  Python语言通过标准库中的re模块支持正则表达式。re模块提供了一些根据正则表达式进行查找、替换、分隔字符串的函数 这些函数使用一个正则表达式作为第一个参数。 函数描述match(pattern,string,flags0)根据pattern从string的头部开始匹配字符串只返回第1次匹配成功的对象否则返回Nonefindall(pattern,string,flags0)根据pattern在string中匹配字符串。如果匹配成功 返回包含匹配结果的列表否则返回空列表。当 pattern中有分组时返回包含多个元组的列表每个元组对应1个分组。flags表示规则选项规则选项用于辅助匹配。sub(pattern,repl,string,count0)根据指定的正则表达式替换源字符串中的子串。 pattern是一个正则表达式repl是用于替换的字符串string是源字符串。如果count等于0则返回 string中匹配的所有结果如果count大于0则返回 前count个匹配结果subn(pattern,repl,string,count0)作用和sub()相同返回一个二元的元组。第1个元素是替换结果第2个元素是替换的次数search(pattern,string,flags0)根据pattern在string中匹配字符串只返回第1次匹配成功的对象。如果匹配失败返回Nonecompile(pattern,flags0)编译正则表达式pattern返回1个pattern的对象split(pattern,string,maxsplit0)根据pattern分隔stringmaxsplit表示最大的分隔数escape(pattern)匹配字符串中的特殊字符如*、、?等 match函数的使用 re.match 尝试从字符串的起始位置匹配一个模式如果不是起始位置匹配成功的话match()就返回None。语法格式如下 re.match(pattern, string, flags0) 参数描述pattern匹配的正则表达式string要匹配的字符串。flags标志位用于控制正则表达式的匹配方式如是否区分大小写多行匹配等等。如下表列出正则表达式修饰符 - 可选标志 正则表达式修饰符 修饰符描述re.I使匹配对大小写不敏感re.L做本地化识别locale-aware匹配re.M多行匹配影响 ^ 和 $re.S使 . 匹配包括换行在内的所有字符re.U根据Unicode字符集解析字符。这个标志影响 \w, \W, \b, \B.re.X该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。 意义  1、re.match是用来进行正则匹配检查的方法如果字符串开头的0个或多个字符匹配正则表达式 模式则返回相应的match对象。如果字符串不匹配模式返回None注意不是空字符串 2、匹配对象Match Object具有group()方法 用来返回字符串的匹配部分,具有span()方法。返回 匹配字符串的位置元组存储开始结束位置具有start(),end()方法存储匹配数据的开始和结束位置。也可以通过对象的dir(对象查看对象的方法) 注意 如果想在目标字符串的任意位置查找需要使用search  【示例】match方法的使用  import re xiaoshello python patterntonghello vre.match(patterntong,xiaos) print(v) print(v.group()) print(v.span()) 【示例】match方法中flag可选标志的使用 import re xiaos hello Python! tongmre.match(hello python,xiaos ,re.I) #忽略大小写 if tongm is not None:print(匹配成功结果是,tongm .group()) else:print(匹配失败)常用匹配符 一个正则表达式是由字母、数字和特殊字符括号、星号、问号等组成。正则表达式中有许多特殊的字符这些特殊字符是构成正则表达式的要素。  【示例】常用匹配符.的使用 import re pattern. #匹配任意一个字符除了\n sxiaoa print(匹配字符a,re.match(pattern,sxiao)) sxiaoC print(匹配字符C,re.match(pattern,sxiao)) sxiao_ print(匹配字符_,re.match(pattern,sxiao)) sxiao\n print(匹配字符\\n,re.match(pattern,sxiao)) 【示例】常用匹配符\d的使用 import re pattern\d #匹配数字,即0-9 sxiao9 print(匹配数字9,re.match(pattern,sxiao)) sxiao4 print(匹配数字4,re.match(pattern,sxiao)) sxiaoa print(匹配字符a,re.match(pattern,sxiao)) sxiao_ print(匹配字符_,re.match(pattern,sxiao)) 【示例】常用匹配符\D的使用 import re pattern\D #匹配非数字的字符 sxiao9 print(匹配数字9,re.match(pattern,sxiao)) sxiao4 print(匹配数字4,re.match(pattern,sxiao)) sxiaoa print(匹配字符a,re.match(pattern,sxiao)) sxiao_ print(匹配数字_,re.match(pattern,sxiao)) 【示例】常用匹配符\s的使用 import re pattern\s #匹配空白字符,即空格\n,\t sxiao print(匹配字符 ,re.match(pattern,sxiao)) sxiao\t print(匹配字符\\t,re.match(pattern,sxiao)) sxiao\n print(匹配字符\\n,re.match(pattern,sxiao)) sxiao_ print(匹配字符_,re.match(pattern,sxiao)) 【示例】常用匹配符\S的使用 import re pattern\S #匹配不是空白的字符 sxiao print(匹配字符 ,re.match(pattern,sxiao)) sxiao\t print(匹配字符\\t,re.match(pattern,sxiao)) sxiao\n print(匹配字符\\n,re.match(pattern,sxiao)) sxiao_ print(匹配字符_,re.match(pattern,sxiao))【示例】常用匹配符\w和\W的使用 import re print(-------\w匹配字母、数字、下划线--------) pattern\w #匹配字母、数字、下划线 sxiaoa print(匹配字符a,re.match(pattern,sxiao)) sxiao_ print(匹配字符_,re.match(pattern,sxiao)) sxiao5 print(匹配数字5,re.match(pattern,sxiao)) sxiaoA print(匹配字符A,re.match(pattern,sxiao)) sxiao# print(匹配字符#,re.match(pattern,sxiao)) print(-------\W匹配不是字母、数字、下划线--------) pattern\W #匹配不是字母、数字、下划线 sxiaoa print(匹配字符a,re.match(pattern,sxiao)) sxiao_ print(匹配字符_,re.match(pattern,sxiao)) sxiao5 print(匹配数字5,re.match(pattern,sxiao)) sxiaoA print(匹配字符A,re.match(pattern,sxiao)) sxiao# print(匹配字符#,re.match(pattern,sxiao)) 【示例】[]匹配列表中的字符 import re pattern[2468] #匹配列表中的字符 sxiao1 print(匹配数字1,re.match(pattern,sxiao)) sxiao2 print(匹配数字2,re.match(pattern,sxiao)) sxiao3 print(匹配数字3,re.match(pattern,sxiao)) sxiao4 print(匹配数字4,re.match(pattern,sxiao)) sxiao# print(匹配字符#,re.match(pattern,sxiao)) print(---------手机号码-----------) sxiao13456788789 pattern\d\d\d\d\d\d\d\d\d\d\d#匹配手机号 print(匹配手机号码,re.match(pattern,sxiao)) pattern1[35789]\d\d\d\d\d\d\d\d\d#匹配手机号 print(匹配手机号码,re.match(pattern,sxiao)) 其中匹配符“[]”可以指定一个范围例如“[ok]”将匹配包含“o”或 “k”的字符。同时“[]”可以与\w、\s、\d等标记等价。例如[0-9a-zAZ]等价于\w,[ ^0-9 ] 等价于\D。 限定符  从上面示例中可以看到如果要匹配手机号码需要形如 “\d\d\d\d\d\d\d\d\d\d\d”这样的正则表达式。其中表现了11次 “\d”表达方式烦琐。正则表达式作为一门小型的语言还提供了对表达式的一部分进行重复处理的功能。例如“*”可以对正则表达式的某个部分重复匹配多次。这种匹配符号称为限定符。 符号描述符号描述*匹配零次或多次{m}重复m次匹配一次或多次{m,n}重复m到n次其中n可以省略表示m到任意次?匹配一次或零次{m,}至少m次 【示例】限定符*?的使用 import re print(------*匹配零次或多次--------) pattern\d* #0次或多次 sxiao123abc print(匹配123abc,re.match(pattern,sxiao))sxiaoabc #这时候不是None而是 print(匹配abc,re.match(pattern,sxiao)) print(-----匹配一次或多次---------)pattern\d #1次或多次 sxiao123abc print(匹配123abc,re.match(pattern,sxiao))sxiaoabc #这时候是None print(匹配abc,re.match(pattern,sxiao)) print(-----?匹配一次或零次---------)pattern\d? #0次或1次 sxiao123abc print(匹配123abc,re.match(pattern,sxiao))sxiaoabc #这时候是空 print(匹配abc,re.match(pattern,sxiao))【示例】限定符{}的使用 import re print(-----{m}重复m次---------) pattern\d{3} #出现m次 sxiao123abc print(pattern为\\d{3}匹配123abc结果,re.match(pattern,sxiao)) pattern\d{4} #出现m次 print(pattern为\\d{4}匹配123abc结果,re.match(pattern,sxiao)) print(-----{m,}至少m次---------)sxiao1234567abc pattern\d{3,} #出现大于m次 尽可能满足的都返回 print(pattern为\\d{3,}匹配1234567abc结果\n,re.match(pattern,sxiao)) print(-----{m,n}重复m到n次---------) pattern\d{2,4} #出现m到n次 print(pattern为\\d{2,4}匹配1234567abc结果\n,re.match(pattern,sxiao)) 限定符使用示例 【示例】匹配出一个字符串首字母为大写字符后边都是小写字符这些小写字母可有可无 pattern[A-Z][a-z]* sxiaoHello world sxiaoHEllo world vre.match(pattern,sxiao) print(v) 【示例】匹配出有效的变量名 import re pattern[A-Za-z_][0-9A-Za-z_]* print(pattern为[A-Za-z_][0-9A-Za-z_]*) sxiaoa print(匹配变量名a的结果,re.match(pattern,sxiao))sxiaoab print(匹配变量名ab的结果,re.match(pattern,sxiao))sxiao_ab print(匹配变量名_ab的结果,re.match(pattern,sxiao))sxiao2ab print(匹配变量名2ab的结果,re.match(pattern,sxiao))print(pattern为[A-Za-z_]\w*) pattern[A-Za-z_]\w* sxiaoa print(匹配变量名a的结果,re.match(pattern,sxiao))sxiaoab print(匹配变量名ab的结果,re.match(pattern,sxiao))sxiao_ab print(匹配变量名_ab的结果,re.match(pattern,sxiao))sxiao2ab print(匹配变量名2ab的结果,re.match(pattern,sxiao)) 【示例】匹配出1-99之间的数字 import re pattern[1-9]\d? sxiao1 print(匹配数字1,re.match(pattern,sxiao))sxiao55 print(匹配数字55,re.match(pattern,sxiao))sxiao99 print(匹配数字99,re.match(pattern,sxiao))sxiao199 print(匹配数字199,re.match(pattern,sxiao)) 【示例】匹配出一个随机密码8-20位以内 (大写字母 小写字母 下划线 数字) import re pattern\w{8,20} sxiao12345678 print(匹配12345678的结果\n,re.match(pattern,sxiao))sxiao123__456 print(匹配123__456的结果\n,re.match(pattern,sxiao))
http://www.w-s-a.com/news/158667/

相关文章:

  • 西安php网站制作可以用AI做网站上的图吗
  • 网站开发工程师和前端企业网络推广公司
  • 泉州开发网站的公司有哪些电脑网页翻译
  • 河北省建设机械会网站首页刚做的网站怎么收录
  • 什么网站专门做自由行的framework7做网站
  • 网页设计与网站建设书籍包头住房与城乡建设局网站
  • 重庆网站建设平台免费猎头公司收费收费标准和方式
  • 形象设计公司网站建设方案书打开一个不良网站提示创建成功
  • 网站手机页面如何做网站关键字 优帮云
  • 免费的黄冈网站有哪些下载软件系统软件主要包括网页制作软件
  • 企业微站系统重庆高端网站建设价格
  • 有没有做衣服的网站吗网站自适应开发
  • 青海省制作网站专业专业定制网吧桌椅
  • 网站开发的项目17岁高清免费观看完整版
  • 手机网站建设多少钱一个门网站源码
  • 重庆 网站开发天津住房和城乡建设厅官方网站
  • 泰安高级网站建设推广厦门高端网站建设定制
  • jsp网站开发引用文献手机seo排名
  • 创建一家网站如何创设计网页的快捷网站
  • 1688代加工官方网站h5开发教程
  • 静态网站源码下载网站怎么显示备案号
  • 网站代码设计网站开发维护任职要求
  • 长寿做网站的电话怎么快速刷排名
  • 上海市中学生典型事例网站邯郸全网推广
  • 厦门网站建设680元好男人的最好的影院
  • 石家庄网站建设设计产品设计专业就业前景
  • 网站移动排名做最好最全的命理网站
  • 网站怎么防黑客杭州市做外贸网站的公司
  • 网站推广公司认准乐云seo易语言做网站登录
  • 配色设计网站推荐网站下拉菜单重叠