正则运算

1.总结

Python核心风格:避免用下划线作为变量名的开始。

因为下划线对解释器有特殊的意义,而且是内建标识符所使用的符号,我们建议程序员避免用下划线作为变量名的开始。一般来讲,变量名_xxx被看作是“私有的”,在模块或类外不可以使用。当变量是私有的时候,用_xxx 来表示变量是很好的习惯。因为变量名__xxx__对Python 来说有特殊含义,对于普通的变量应当避免这种命名风格。

"单下划线"
 "单下划线" 开始的成员变量叫做保护变量,意思是只有类对象和自类对象自己能访问到这些变量。

例子:以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用“from xxx import *”而导入。

"双下划线"
"双下划线" 开始的是私有成员,意思是只有类对象自己能访问,连子类对象也不能访问到这个数据。

例子:以双下划线开头的(__foo)代表类的私有成员;以双下划线开头和结尾的(__foo__)代表python里特殊方法专用的标识,如 __init__()代表类的构造函数。

2.设计一个三维向量类,并实现向量的加法,减法以及向量与标量的乘法和除法运算

class Vecter3:
    def_init_(self,x=0,y=0,z=0):
              self.X=x
              self.Y=y
              self.Z=z
    def_add_(self,n):
              r=Vecter3()
              r.X=self.X+n.X
              r.Y=self.Y+n.Y
              r.Z=self.Z+n.Z
              return r
    def_sub_(self,n):
              r=Vecter3()
              r.X=self.X-n.X
              r.Y=self.Y-n.Y
              r.Z=self.Z-n.Z
              return r
    def_mul_(self,n):
              r=Vecter3()
              r.X=self.X*n
              r.Y=self.Y*n
              r.Z=self.Z*n
              return r
    def_truediv_(self,n):
              r=Vecter3()
              r.X=self.X/n
              r.Y=self.Y/n
              r.Z=self.Z/n
              return r
    def_floordiv_(self,n):
              r=Vecter3()
              r.X=self.X//n
              r.Y=self.Y//n
              r.Z=self.Z//n
              return r
    def show(self):
              print(self.X,self.Y,self.Z))

3.编写一个程序类,用户输入一段英文,然后输出这段英文中所有长度为3个字母的单词,并且如果单词有连续重复了两次,只输出一个

import re
x=input(‘Please input a string:‘)
pattern=re.compile(r‘\b[a-zA-Z]{3}\b‘)
print(pattern.findall(x))


             

原文地址:https://www.cnblogs.com/wjaihui/p/10710037.html

时间: 2024-10-02 04:22:02

正则运算的相关文章

MongoDB(课时14 正则运算)

3.2.4.9 正则运算 如果想实现模糊查询,必须使用正则表达式,而且正则表达式使用的语言是Perl兼容的正则表达式的形式. 如果想实现正则使用,则按照如下的定义格式: 基础语法:{key : 正则标记} 完整语法:{key : {"$regex" : 正则标记, "$options" : 选项}} 对于options主要是设置正则的信息查询标记: "i":忽略字母大小写: "m":多行查找: "x":空白

php 常用正则运算

$regx = "/^[0-9]*$/"; var_dump(preg_match($regx, $phone)); 常用的正则运算: •验证数字:^[0-9]*$ •验证n位的数字:^\d{n}$ •验证至少n位数字:^\d{n,}$ •验证m-n位的数字:^\d{m,n}$ •验证零和非零开头的数字:^(0|[1-9][0-9]*)$ •验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$ •验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$ •验

递归&装饰器&正则运算&模块

递归: def f(a): if a < 10: print(a) a+=1 b = a f(b) return a else: return a a = f(5) a等于6 a等于6 只执行一次 注意 怎么正确取值 ? def f(a): if a < 10: print(a) a+=1 b = f(a) f(b) return b else: return a 返回值是一个函数就可以啦 装饰器 : def outer(func): def inner(*arg, **kwargs): pr

随堂笔记之正则与HTML5新元素

在进入主题前,先插个网站https://www.processon.com/ ProcessOn是一个在线协作绘图平台,为用户提供最强大.易用的作图工具! 它可以很方便的在线简单绘制一些东西,让自己去具体理解. 正则表达式 今日的正则只是学习正则的简单使用.在HTML5的标签属性的强大面前,我们 已经可以不用去先学习javascript才能再去正则了,因为HTML5的input标签的 pattern可以实现标签的验证,近似取代复杂的javascript使用正则验证表单,在 未来一定会完全取代的.

awk 正则表达式、正则运算符详细介绍

前言:使用awk作为文本处理工具,正则表达式是少不了的. 要掌握这个工具的正则表达式使用.其实,我们不必单独去学习它的正则表达式.正则表达式就像一门程序语言,有自己语法规则已经表示意思. 对于不同工具,其实大部分表示意思相同的.在linux众多文本处理工具(awk,sed,grep,perl)里面用到正则表达式.其实就只有3种类型.详细可以参考:linux shell 正则表达式(BREs,EREs,PREs)差异比较.只要是某些工具是属于某种类型的正则表达式.那么它的语法规则基本一样. 通过那

php 正则验证字符串是否为数字

PHP 正则验证字符串是否为数字 方法一: php中利用正则表达式验证字符串是否为数字一件非常容易的事情,最主要的是如何写好正则表达式以及掌握正则表达式的写法,在此利用正则表达式的方式来列举一下判断数字的方法. <? if($str) { if(eregi("^[0-9]+$",$str)) { $str=(int)$str; } else { echo "获取到的数据不是有效的数字类型,操作将停止!"; exit(); } } else { echo &qu

awk 正则表达式、正则运算符详细介绍(转)

前言:使用awk作为文本处理工具,正则表达式是少不了的. 要掌握这个工具的正则表达式使用.其实,我们不必单独去学习它的正则表达式.正则表达式就像一门程序语言,有自己语法规则已经表示意思. 对于不同工具,其实大部分表示意思相同的.在linux众多文本处理工具(awk,sed,grep,perl)里面用到正则表达式.其实就只有3种类型.详细可以参考:linux shell 正则表达式(BREs,EREs,PREs)差异比较 .只要是某些工具是属于某种类型的正则表达式.那么它的语法规则基本一样. 通过

mongodb数据操作(CRUD)

1.数据插入db.集合名.insert() 操作 > use hk switched to db hk > show collections > db.info.insert({"url":"www.lepu.cn"}) WriteResult({ "nInserted" : 1 }) > db.info.find() { "_id" : ObjectId("592bd4324c964b778

Spring 入门知识点笔记整理

一.Spring 概述 1. 什么是spring? Spring 是个java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯. 2. 如何实现简化java开发的目标? 为了降低java开发的复杂性,spring主要采取以下4种关键策略: 基于POJO的轻量级和最小侵入性编程. 通过依赖注入和面向接口编程实现松耦合. 基于切面和惯例进