Python学习笔记:正则表达式、逻辑运算符、lamda、二叉树遍历规则、类的判断

1.正则表达式如何写?

序号实例说明
1.匹配任何字符(除换行符以外)
2\d等效于[0-9],匹配数字
3\D等效于[^0-9],匹配非数字
4\s等效于[\t\r\n\f],匹配空格字符
5\S等效于[^\t\r\n\f],匹配非空格字符
6\w等效于[A-Za-z0-9],匹配单字字符
7\W等效于[^A-Za-z0-9],匹配非单字字符
8[ab]cdef匹配acdef或bcdef
9abc[de]匹配abcd或abce
10[0-9]\[a-z]匹配数字0-9\小写字母a-z
11[^0-9]\[^a-z]匹配非数字/非小写字母
12abc?匹配ab或abc
13abc*匹配ab/abc/abcc……0个以上的c
14abc+ab+1个以上c
15\d{3}完全匹配3位数
16\d{3,5}匹配3位、4位、5位数
17\d{3,}匹配3位以上的数

边界匹配:不消耗匹配字符串中的字符

序号实例说明
1^匹配开始位置,多行模式匹配每一行的开始,如^abc,则在开始位置匹配abc
2$匹配结束位置,如.*sh$,在结束位置匹配agfiasfush
3\ber\b可以匹配never中的er,但是不能匹配verb中的er
4\Ber\B可以匹配verb中的er,但是不能匹配never中的er
5\A匹配开始位置,忽略多行模式
6\Z匹配结束位置,忽略多行模式

贪婪匹配与惰性匹配:以<div>hello world</div>为例

序号实例说明
1<.>贪婪匹配模式,得到的是<div>hello world</div>
2<.?>惰性匹配模式,得到的是<div>或者</div>

 2.常用正则表达式实例

序号实例说明
用户名^[a-z0-9_-]{3,16}$只能包含小写字母、数字、下划线、-、至少3位至多16位
密码^[a-z0-9_-]{3,18}$只能包含小写字母、数字、下划线、-、至少3位至多18位
十六进制值^[0-9A-F]{6}|[0-9A-F]{3}$以#开头,0-F,一共6位或者3位
电子邮箱^([0-9a-zA-Z_-.])@([0-9a-z]).([a-z.]{2,6})$

3.Python的逻辑运算符

3.1 not

not True:False

3.2 and

True and False : False

and是一种短路操作符,从左到右解析,确认结果即停止

0 and 18:0

15 and 18:18

4 and 3: 3

3.3 or

    1. True or True : True
    2. True or False : True
    3. False or True : True
    4. False or False : False

 同样or也是一种短路操作符,确认结果即停止

4 or 3 : 4

3 or 0 : 3

0 or 3 : 3

4.lamda表达式

lambda表达式是一种匿名函数,表达式可以作为参数传递给其他函数或直接被调用。

add = lambda x, y: x + y
print(add(5, 3))

 5.二叉树的遍历

  • 前序遍历:先输出父节点,再遍历左子树,然后遍历右子树:ABDEGCF
  • 中序遍历:先遍历左子树,再输出父节点,然后遍历右子树:DBGEACF
  • 后续遍历:先遍历左子树,再遍历右子树,最后输出父节点:DGEBFCA

6.Type()和isinstance()的区别

isinstance(object, classinfo)传入两个参数,并判断object是否属于classinfo对应的类

type(object)一般只传入一个参数,输出object对应的类<class'__main__.A'>

type(object) == A 实现与isinstance类似的功能但是区别在于:

        1.type只接收一个参数,不但可以判断变量是否属于某个类型,而且可以得到未知的参数变量所属的类型;而isinstance只能判断是否属于某个已知类型,不能直接得到变量未知的所属的类型

        2.isinstance可以判断子类实例对象是属于父类的;而type会判断子类实例对象和父类类型不一样

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/116285.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据Flink简介与架构剖析并搭建基础运行环境

文章目录 前言Flink 简介Flink 集群剖析Flink应用场景Flink基础运行环境搭建Docker安装docker-compose文件编写创建并运行容器访问Flink web界面 前言 前面我们分别介绍了大数据计算框架Hadoop与Spark,虽然他们有的有着良好的分布式文件系统和分布式计算引擎&#xff0c;有的有…

java基础-----第八篇

系列文章目录 文章目录 系列文章目录一、Java类加载器二、双亲委托模型 一、Java类加载器 JDK自带有三个类加载器&#xff1a;bootstrap ClassLoader、ExtClassLoader、AppClassLoader。 BootStrapClassLoader是ExtClassLoader的父类加载器&#xff0c;默认负责加载%JAVA_HOME…

自动驾驶攻城战,华为小鹏先亮剑

点击关注 文&#xff5c;刘俊宏 编&#xff5c;苏扬、王一粟 本文为光锥智能x腾讯科技联合出品 2023年过半&#xff0c;城市NOA&#xff08;城市领航辅助驾驶&#xff09;的元年如预期中到来了吗&#xff1f; 8月25日&#xff0c;成都车展开幕&#xff0c;与4个月之前的上海…

PyTorch深度学习遥感影像地物分类与目标检测、分割及遥感影像问题深度学习优化实践技术应用

我国高分辨率对地观测系统重大专项已全面启动&#xff0c;高空间、高光谱、高时间分辨率和宽地面覆盖于一体的全球天空地一体化立体对地观测网逐步形成&#xff0c;将成为保障国家安全的基础性和战略性资源。未来10年全球每天获取的观测数据将超过10PB&#xff0c;遥感大数据时…

华为云云服务器评测|华为云云耀云服务器L实例使用教学

文章目录 教学小故事 教学 华为云云耀云服务器L实例是一款提供高效、可靠、安全的基础设施服务的云服务器。下面是使用教学&#xff1a; 登录华为云官网。 测评产品链接&#xff1a;https://www.huaweicloud.com/product/hecs-light.html 进入云耀云服务器管理控制台&#xf…

Qt 查找文件夹下指定类型的文件及删除特定文件

一 查找文件 bool MyXML::findFolderFileNames() {//指定文件夹名QDir dir("xml");if(!dir.exists()){qDebug()<<"folder does not exist!";return false;}//指定文件后缀名&#xff0c;可指定多种类型QStringList filter("*.xml");//指定…

算法竞赛备赛之数学知识训练提升,暑期集训营培训

1.质数 在大于1的整数&#xff0c;如果质包含1和本身这两个约数&#xff0c;就称之为素数/质数。 1.质数的判定&#xff08;试除法&#xff09; 优化后的&#xff1a; #include<iostream> #include<algorithm> ​ using namespace std; ​ bool is_prime(int n…

Python基础篇(17):模块与包

一、as 关键字的使用 1、as 关键字的作用&#xff1a;给导入的模块取别名 import 测试1 as Test_1 import 测试2 as Test_2Test_1.say_hello() Test_2.say_hello() 二、if __name__ __main__ 1、作用 测试当前模块所编写的代码块&#xff0c;根据业务自主选择需要运行的代…

二叉树的构建及遍历

目录 题目题目要求示例 解答方法一、实现思路时间复杂度和空间复杂度代码 方法二、实现思路时间复杂度和空间复杂度代码 题目 二叉树的构建及遍历 题目要求 题目链接 示例 解答 方法一、 先构建二叉树&#xff0c;再中序遍历。 实现思路 按照给出的字符串创建二叉树&am…

华为云云服务器评测|基于华为云云耀云服务器L实例开展性能评测,例如 MySQL、Clickhouse、Elasticsearch等等

在当今云计算时代&#xff0c;越来越多的企业和个人开始选择将应用部署在云服务器上&#xff0c;以便更好地满足高性能、可靠性和可扩展性等需求。而华为云云耀云服务器L实例不仅提供了高性能和可靠性的计算和存储资源&#xff0c;而且具有灵活和高效的成本控制&#xff0c;深受…

C语言基础之——结构体

前言&#xff1a;小伙伴们又见面啦&#xff0c;那么本篇文章&#xff0c;我们就将对C语言基础知识的最后一个章节——结构体展开讲解。 世上无难事&#xff0c;只要肯攀登&#xff01; 目录 一.什么是结构体 二.结构体讲解 1.结构体的声明和变量的定义 2.结构体成员的类型…

8. 损失函数与反向传播

8.1 损失函数 ① Loss损失函数一方面计算实际输出和目标之间的差距。 ② Loss损失函数另一方面为我们更新输出提供一定的依据。 8.2 L1loss损失函数 ① L1loss数学公式如下图所示&#xff0c;例子如下下图所示。 import torch from torch.nn import L1Loss inputs torch.tens…

mysql‘逻辑删除‘和‘唯一索引‘冲突的解决方案

一、冲突出现原因 在user表中将name字段设置唯一索引&#xff0c;添加逻辑删除字段del_flag&#xff08;1为删除&#xff0c;0为未删除&#xff09;之后&#xff0c;将name张四的字段删除&#xff0c;再添加一个name张四的记录则会出现冲突 二、解决 1.设置唯一索引组&#x…

【数学建模】清风数模正课7 多元线性回归模型

多元线性回归分析 回归分析就是&#xff0c;通过研究自变量X和因变量Y的相关关系&#xff0c;来解释Y的形成机制&#xff0c;从而达到通过X去预测Y的目的。 所以回归分析需要完成三个使命&#xff0c;首先是识别重要变量&#xff0c;其次是判断正负相关&#xff0c;最后是估计…

opencv-人脸识别

对https://blog.csdn.net/weixin_46291251/article/details/117996591这哥们代码的一些修改 import cv2 import numpy as np import os import shutil import threading import tkinter as tk from PIL import Image, ImageTkchoice 0# 首先读取config文件&#xff0c;第一行…

反射、Class

Class 获取实例化的三种方式

深入理解协同过滤算法及其实现

导语 个性化推荐系统在现代数字时代扮演着重要的角色&#xff0c;协助用户发现他们可能感兴趣的信息、产品或媒体内容。协同过滤是个性化推荐系统中最流行和有效的算法之一。 目录 协同过滤算法的原理 基于用户的协同过滤&#xff08;User-Based Collaborative Filtering&am…

在firefox浏览器下破解hackbar

目录 一、介绍&#xff1a; 二、安装教程 1、打开firefox浏览器插件管理扩展 2、在firefox浏览器下安装老版本Hackbar &#xff08;1&#xff09;首先删除之前安装的Hackbar插件&#xff1a; &#xff08;2&#xff09;采用从文件安装附件添加组&#xff1a; &#xff08;3…

大数据课程K16——Spark的梯度下降法

文章作者邮箱&#xff1a;yugongshiyesina.cn 地址&#xff1a;广东惠州 ▲ 本章节目的 ⚪ 了解Spark的梯度下降法&#xff1b; ⚪ 了解Spark的梯度下降法家族&#xff08;BGD&#xff0c;SGD&#xff0c;MBGD&#xff09;&#xff1b; ⚪ 掌握Spark的MLlib实现…

xx音乐app逆向分析

目标 看一下评论的请求 抓包 这里使用httpcanary 请求包如下 POST /index.php?rcommentsv2/getCommentWithLike&codeca53b96fe5a1d9c22d71c8f522ef7c4f&childrenidcollection_3_1069003079_330_0&kugouid1959585341&ver10&clienttoken7123ecc548ec46d…