Python语言是一种典型的脚本语言,简洁,语法约束少,接近人类语言。有丰富的数据结构,例如列表、字典、集合等。具有可移植性,支持面向过程和面向对象编程,并且开源。以下是小编为你整理的如何开发学习python
下载安装:从python官网下载开发和运行环境程序。本例下载python-3.3.3.amd64的安装包,并安装。
开发工具:window系统中,python有多种开发工具,比如,一、直接在cmd命令窗口执行,但此种仅能单条语句执行,不能运行完整的程序。二、python自带的集成开发环境,可通过开始——所有程序——python3.3——IDLE(Python GUI)启动。三、其他集成开发环境,如PythonWin等,有编辑和调试能力,还实现了MFC类库存的包装。
本例中,使用python自带的开发环境。File—New File,新建py文档,编写程序,保存。Run——Run module,可得到运行结果。
封装性:可以把属性、方法结合在一起,不可以直接访问对象的属性,仅能通过接口与对象发生联系。以下把方法和属性封装成了一个类。
构造器:python有3种类型的构造器,且一个类中仅可以定义一个构造器,若多个,则以*为准。1.若不声明,则默认为一个没有任何操作的特殊的__init__方法,__init__(self),此时可通过obj = my_class()声明实例。 2.自声明__init__构造器,会覆盖默认的,且可以更新类的数据属性。3.构造器方法__new__(),用于不可变内置类型派生,不能通过实例访问属性,仅能通过类访问。
继承性:python支持多继承,且子类继承了父类的方法和属性。若子类中有和父类相同名称的方法,则子类会覆盖(Override)父类方法。父类方法依旧可以访问。
数据结构:有丰富的数据结构,例如列表、字典、集合等。本例简单介绍字典的使用。字典是键值对的无序集合,是可变对象。键在字典中是*的且必须是不可变对象。值可以是可变对象或不可变对象。以下例子对python字典的定义、访问、更新等的操作。
学会python的作用
Python高级工程师 : 北上广深的话,薪金在1万以上,需要精通Linux/Unixg平台,有英语阅读功底。
Web网站开发方向: 熟悉Web开发的常用 Python框架,熟悉掌握Mysql类数据库的操作即可。
SEO工程师: 为自己或公司开发和改进SEO相关软件,实现自动化搜索引擎优化和日常重复工作。
Python自动化测试:熟悉自动化流程、方法和常用的模块的使用,有英文读写的能力。
Linux运维工程师: Linux服务器管理,数据分析、自动化处理任务、分析网站日志、定时计划管理,解放双手。
Python游戏开发工程师: 网络游戏后端服务器逻辑的开发和处理,有大型数据库使用经验,喜欢从事游戏相关工作。 Python自学爱好者: 可以自己开发一些小软件和应用,带图形化界面的软件,方便日常工作。
如何导入re模块
导入re模块
#导入正则表达式模块
import re
再来一个简单的例子演示
#简单演示
s='123abc123abc123abc'
print s
print re.findall(r'123',s)
#'r'...''表示raw字符串
#功能字符:'.','*','?','^','$','/'
#分界符:'[',']','(',')','{','}'
#转义字符:'d','w','s','b'
#'|'表示或
s='I have a pen and I have a apple'
print s
print re.findall(r'I have a pen|apple',s)
print re.findall(r'I have a (?:pen|dog)',s)
使用无捕获组与一般或'|'的区别
无捕获组使用'(?:...)'格式
#无捕获组:'(?:)'
s='ababababba babab babababab'
print re.findall(r'/b(?:ab)+/b',s)
#'.'匹配除换行符之外的所有字符,若选用re.S则包括所有字符
s='123n456n789'
print s
print re.findall(r'.+',s)
print re.findall(r'.+',s,re.S)
rllib.robotparser
robotparser 模块是由一个单独的类 RobotFileParser 构成的。这个类会回答诸如一个特定的用户代理是否获取已经设置了 robot.txt 的网站的 URL。 robot.txt 文件会告诉网络爬虫或者机器人当前网站的那些部分是不允许被访问的。让我们看一个简单的例子:
>>> import urllib.robotparser >>> robot = urllib.robotparser.RobotFileParser() >>> robot.set_url('http://arstechnica.com/robots.txt') None >>> robot.read() None >>> robot.can_fetch('*', 'http://arstechnica.com/') True >>> robot.can_fetch('*', 'http://arstechnica.com/cgi-bin/') False
这里我们导入了 robot 分析器类,然后创建一个实例。然后我们给它传递一个表明网站 robots.txt 位置的 URL 。接下来我们告诉分析器来读取这个文件。完成后,我们给它了一组不同的 URL 让它找出那些我们可以爬取而那些不能爬取。我们很快就看到我们可以访问主站但是不能访问 cgi-bin 路径。
现在你就有能力使用 Python 的 urllib 包了。在这一节里,我们学习了如何下载文件、提交 Web 表单、修改自己的用户代理以及访问 robots.txt。 urllib 还有一大堆附加功能没有在这里提及,比如网站身份认证。你可能会考虑在使用 urllib 进行身份认证之前切换到 requests 库,因为 requests 已经以更易用和易调试的方式实现了这些功能。我同时也希望提醒你 Python 已经通过 http.cookies 模块支持 Cookies 了,虽然在 request 包里也很好的封装了这个功能。你应该可能考虑同时试试两个来决定那个最适合你。