python字符串比较

Python系列(二)python变量赋值与运算符

懵懂的女人 提交于 2019-11-26 14:10:18
本博文阅读目录: 1、什么是变量? 2、命名规则 3、变量赋值在内存中的原理 4、输入与输出[input raw_input,print] 5、常量 6、常用数据类型[整数,浮点数,布尔值,空值] 7、字符串与字符串格式化[%s,%d,%f,%x ] 8、编码 [ASCII,unicode,UTF-8] 9、注释 [#,’’’] 10、python算术运算符 [+,-,*,/,//,%,**] 11、python比较运算符 [==,!=,<>,>,<,>=,<=] 12、python赋值运算符 [=,+=,-+,*=,/=,%=,**=,//=] 13、python位运算符 [&,|,^,>>,<<] 14、python逻辑运算符 [or,and,not] 15、python成员运算符 [in,not in] 16、python身份运算符 [is,is not] 17、python运算符优先级 正文部分 一、变量赋值 1、什么是变量? 变量就是存储了一个值(就是与变量相关联的信息),代表或引用某个值的一个命名。通常使用“变量=值”的方式给变量赋值。学习过程中有不懂的可以加入我们的学习交流秋秋圈784中间758后面214,与你分享Python企业当下人才需求及怎么从零基础学习Python,和学习什么内容。相关学习视频资料、开发工具都有分享 2、命名规则 变量名只能包括字母

Python之字符串比较is、==、__cmp__

痞子三分冷 提交于 2019-11-26 13:53:28
0、str这个class,很常用,也经常可以看到两个字符串,进行is或者==的比较 is 和 == a、is表示对比的是对象标识符(即内存地址),用来检查对象的标识符是否一致,即两个对象在内存中的地址是否一致(对象首字节的内存地址(你经常看到到的地址要么是十六进制展示的,要么就是十进制的)) b、在使用 strA is strB 的时候,相当于id(strA)==id(strB),因为字符串是不可变对象,所以又有字符串池的概念,所以is对比如果返回True,那么==也一定会返回True 1、==表示两个对象的值是否相等,相当于调用了__eq__()这个魔法方法,即strA == strB 相当于 strA.__eq__(strB) str重写了__eq__方法 2、这次的话,我们再多介绍一个魔法方法__cmp__(一个Python3.x下已经遗弃的宝贝) __cmp__ a、int、str 等内置数据类型排序时,Python的 sorted() 按照默认的比较函数 __cmp__的返回值进行排序(int、str也重写了__cmp__(python2.x下) b、int、str现在已经废弃了__cmp__这个魔法(python3.x下)),废弃了__cmp__方法后,则新定义了 __eq__, __ne__, __lt__, __gt__ 等各种新的魔法方法 但是这个Python2

Python基础数据类型str字符串

怎甘沉沦 提交于 2019-11-26 10:25:33
3.3字符串str ' ' 0 切片选取 [x:y] 左闭右开区间 [x:y:z] 选取x到y之间 每隔z选取一次(选取x,x+z,....) z为正 索引位置:x在y的左边 z为负 索引位置:x在y的右边 字符串+ 都是字符串的时候才能相加 a = 'alex' b = 'wusir' print(a+b) #字符串拼接 字符串* 字符串和数字相乘 a = 6 b = 'alex' print(a*b) #字符串和数字相乘 字符串是不可变的数据类型 字符串---用于存储数据,---比较少 用引号引起来的都是字符串 1.字符:单一的文字符号 2.字符串:有序的字符序列 '张三李四' 3.索引:索引的下标从0开始,使用[]来获取数据 0 1 2 s = '刘德华' s[0] #第一个字符 s[-1] #最后一个字符 4.切片: 顾头不顾尾,从左往右切. s[start:end :step] [开头:结尾:步长默认是1] s[0:3] #刘德华 s[:3] #不填默认表示之前的全部 [开头:结尾:步长默认是1] 个人技巧:起始位置+步长 方法 含义 备注 .lower() 大写 全部字母大写 .upper() 小写 全部字母小写 .strip() 去空格or(''可以定义'') lstrip()去左侧空格,rstrip()去右侧空格 .split() 分割 split('x')

一、python入门

為{幸葍}努か 提交于 2019-11-26 03:28:11
一、python介绍 介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,Guido开始写能够解释Python语言语法的解释器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。 最新的TIOBE排行榜,Python赶超PHP占据第4, Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。 Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。 1.1 Python主要应用领域 #1. WEB开发——最火的Python web框架Django, 支持异步高并发的Tornado框架,短小精悍的flask,bottle, Django官方的标语把Django定义为the framework for perfectionist with deadlines

正则性能调优

走远了吗. 提交于 2019-11-25 22:58:40
这篇文章主要是分享最近在开发中正则的学习心得体会。我们开发,一开始是采用python的正则库,后来为了适应Spring Cloud兼容Java所以正则也相应的修改成为了Java版本,经过测试,Java在匹配速度上相对慢了好多,平台一天需要处理一亿多条日志,但按照当时的处理速度,每天差不多就只能处理了2千多万条,这样的速度,实在扎心,提单申请扩容,那边的负责人说资源不足,好咯,将Java所使用的正则库替换成C++,C++够快了吧,不过,这个库是通过牺牲功能换取性能来实现的。 正则表达式的原理 理论模型是 有穷自动机 ,具体的实现为 正则引擎(Regex Engine) 分两类 确定型有穷自动机(Definite Finite Automata,DFA,其状态都是确定) 和 非确定型有穷自动机(Non-definite Finite Automate,NFA,其状态在某个时刻是不确定的) 。DFA和NFA是可以证明存在等价关系,不过这是两种不同的自动机。在这里,我才不会深入讨论它们的原理。简单地说,DFA 的时间复杂度是线性的。它更稳定,但功能有限。NFA 的时间复杂度相对不稳定。 根据正则表达式的不同,时间有时长,有时短。NFA 的优点是它的功能更强大,所以被 Java、.NET、Perl、Python、Ruby 和 PHP 用来处理正则表达式。 NFA 是怎样进行匹配的呢

【正则表达式介绍篇】 -- 2019-08-07 10:54:47

﹥>﹥吖頭↗ 提交于 2019-11-25 20:17:17
原创: http://106.13.73.98/__/158/      正则表达式 ,又称规则表达式。(英语:Regular Expression,在代码中常简写为Regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。     许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在 Perl 中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由 Unix 中工具软件(例如 sed 和 grep )普及开的。正则表达式通常缩写称“regex”, 单数 有regexp、regex, 复数 regexps、regexes、regexen。 *** 概念     正则表达式是对 字符串 操作的一种逻辑公式,就是用事先定义好的一些特殊字符、及这个特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 简介     正则表达式是对字符串(包括普通字符(例如,a到z之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。 起源     正则表达式的“鼻祖