本系列文章立志于从一个已经习得一门编程语言的基础之上,全面介绍Python的相关开发过程和相关经验总结。本篇文章主要是基于上一篇的程序员带你十天快速入门Python,玩转电脑软件开发(三)的基础之上,进行深入学习。
最新文章会更新在今日头条-做全栈攻城狮。大约发布时间为晚上。希望各位能依靠睡前强大的记忆力,习得Python知识。
1.Python模块
正是因为Python有大量丰富易用的模块才使Python变得丰富多彩。模块是能处理某种功能的集合。相较于函数来说,模块是更大的集合,如果说函数比作剪子剪东西的话,那么模块可以泛指可以很多剪东西的工具。
因为Python模块化编程,使更加轻便的使用模块。所以在使用模块的时候我们需要导入米块。类似于Java里面的包和C#中的命名空间。
虽有两种形式,但比较推荐第二种。想要那部分方法就导入到py文件,而非臃肿的导入。
2.自定义模块
到底什么事模块呢》用面向对象的思想来说应该就是某类对象。落实到代码上就是类的编写。所以我们只是需要编写一个简单的py文件。如下图:
自定义的py文件需要放入python语言包安装目录的lib文件夹下面。
导入模块代码
2.Python正则表达式。
正则表达式是字符串用来进行规则匹配的语法。如同,我们想要在大批量的文件中找出来含有关键词王宝强的段落,我们就要找出首句空两格,并且含有王宝强的以下一段空两格结尾的语句。这就是自己需要的。而正则表达式就规定了这些规则。用来提取或者使用。
正则表达式 都是很通用的。所以在任何语言中,使用的正则表达式都是一样的。只是可能不同的语言提供不同的调用匹配正则的方式方法略有不同。值得注意的是正则表达式的对象是字符串。在字符串内部提取匹配。
首先我们一起回顾一下正则表达式的语法:
.(英语句号) —-表示除/n之外的任意字符。 比如a.b 可以匹配出来a*b abb acb。英文句号就可以代表一个字符。 也是相当于占位。一些特殊的符号。
[] —-字符的筛选 [abc]d 表示ad bd 或者cd []表示这个字符的这一位,只能包含中括号中包含的字符。 当然还有些特殊的 例如[a-z] 表示字母a到z的匹配 [0-9] (可以用/d表示) 表示数字0-9的匹配
^ ——字符的开头
$——-字符的结尾
| ——可以理解为或者,这个运算符优先级 最低 例如z|food可以匹配出来z或者food
*——限定前面的字符出现0次或者多次 例如 v* 可以表示 没有字符和 多个v组成的字符
+—–限定为前面的字符出现1次或者多次 例如 v+ 可以表示v和多个v组成的字符
?—-限定前面的表达式必须出现一次或者0次。
{10} —表示前面的字符串必须出现10次
{n,}—–至少出现n次
下一节我们使用正则表达式来实现网页爬虫的效果。