本章的内容主要是为讲解在正则表达式中常用的.*?和re.S! 在正则表达式中有贪婪匹配和最小匹配:如下为贪婪匹配(.*) import re match = re.search(r'PY.*', 'PYANBNCNDN') print(match.group(0)) 如上的代码显示的结果是PYANBNCNDA,为贪婪匹配,会把整个字符串进行匹配,把能够满足条件的子串提取出来! 如下为最小匹配:(.*?) import re match = re.search(r'PY.*?N', 'PYANBN
前言 Python中的包给我提供了很好的代码组织,相似的功能模块放在同一个包内,不仅代码结构清晰,而且调用起来也比较方便(可以用*导入) 但是,我们在刚开始使用Python包的时候总是会遇到导入错误"ImportError: No module named 'xxx'“,下面我们来简单介绍一下如何解决这类问题 Python中的包 Python中的包就和C#中的dll一样都是一些模块(或者类库)的集合.Python中新创建的包其实只有两个文件,一个是以包名命名的文件夹和其中的一个__init__.
首先,Python中的is就是判断地址是否相等(相当于Java中的==),Python中的==就是判断数值是否相等(相当于Java中的equals). 看个简单的例子: a = [1, 2, 3] b = [1, 2, 3] id(a) Out[16]: 2531065911112 id(b) Out[17]: 2531064874824 a == b Out[18]: True a is b Out[19]: False 因为地址不同,但是元素是相同的. 但是会发现一些好玩的东西,比如: a