Tagged: python

Python 的 generator 以及 yield 和 yield from 关键字解释 0

Python 的 generator 以及 yield 和 yield from 关键字解释

Python 的 generator(生成器)是指包含有 yield 关键字的函数。即使这个函数同时包含 return 和 yield 关键字,它也是一个 generator。

generator(生成器)的作用和函数有点像,但是区别在于:如果需要生成并返回一个很长很长的列表,那么函数必须把这个列表的每个值全部计算完后一起返回。然而有时候这个列表是无穷无尽的,或者全部计算完的话耗时很久,亦或是列表的长度超过了内存容量,而实际上我们一次只需要取一个值。此时可以使用 generator 来『[……]

Read more

理解 Python 中的 *args 和 **kwargs 0

理解 Python 中的 *args 和 **kwargs

Python是支持可变参数的,最简单的方法莫过于使用默认参数,例如:

当然,本文章的主题并不是讲默认参数,而是另外一种达到可变参数 (Variable Argument) 的方法:使用*args和**kwargs语法。其中,*args是可变的positional arguments列表,**kwargs是可变的keyword arguments列表。并且,*args必须位于**kwargs之前,因为positional arg[……]

Read more

Python批量操作SSH(VPS)工具 0

Python批量操作SSH(VPS)工具

安装paramiko有两个先决条件,python和另外一个名为PyCrypto的模块。
在WINDOWS下安装PyCrypto可能需要到这儿下载 http://www.voidspace.org.uk/python/modules.shtml#pycrypto

如果需要安装ecdsa,在命令行下输入 pip install ecdsa 即可。

我使用的是python3.3, 通过这个文档可以了解使用方法。
http://paramiko-docs.readthedocs.or[……]

Read more

Pelican 的入门体验 1

Pelican 的入门体验

Pelican是一个用Python语言编写的静态网站生成器,支持使用restructuredText和Markdown写文章,配置灵活,扩展性强。它有许多主题和插件可供使用,这也是我选择它的原因,诸如相关文章,站点地图,这些功能它都有。

网上关于它的使用教程很多,大多都是复制来复制去,具体的教程在部分都是基于linux系统,在windows下面的操作前半部分是一样的,后期如果按照网上的教程不行了,这些需要自己摸索。

只说下它的一些入门体验吧,供大家参考。个人认为,它只适合搭建静态博[……]

Read more

Python+Requests识别网页编码Bug 0

Python+Requests识别网页编码Bug

Requests 使用的是 urllib3,因此继承了它的所有特性。Requests 支持 HTTP 连接保持和连接池,支持使用 cookie 保持会话,支持文件上传,支持自动确定响应内容的编码,支持国际化的 URL 和 POST 数据自动编码。现代、国际化、人性化。

最近在使用Requests的过程中发现一个问题,是抓去某些中文网页的时候,出现乱码,打印encoding是ISO-8859-1。为什么会这样呢?通过查看源码,我发现默认的编码识别比较简单,直接从响应头文件的Content-[……]

Read more

SublimePythonIDE 编码规范提示问题 0

SublimePythonIDE 编码规范提示问题

sublime text 3 安装好SublimePythonIDE后,提示代码有很多问题,经查原来是代码不符合pep8规范。

1)
一行列数 : PEP 8 规定为 79 列,这个太苛刻了,如果要拼接url一般都会超。
一个函数 : 不要超过 30 行代码, 即可显示在一个屏幕类,可以不使用垂直游标即可看到整个函数。
一个类 : 不要超过 200 行代码,不要有超过 10 个方法。
一个模块 : 不要超过 500 行。

2)不要在一句import中多个库
不推荐
imp[……]

Read more

selenium + python自动化测试环境搭建 0

selenium + python自动化测试环境搭建

selenium 是一个web的自动化测试工具,不少学习功能自动化的同学开始selenium ,相因为它相比QTP有诸多有点:

*  免费,也不用再为破解QTP而大伤脑筋

*  小巧,对于不同的语言它只是一个包而已,而QTP需要下载安装1个多G 的程序。

*  这也是最重要的一点,不管你以前更熟悉C、 java、ruby、python、或都是C# ,你都可以通过selenium完成自动化测试,而QTP只支持VBS

*  支持多平台:windows、linux、MAC ,支持多浏览器:[……]

Read more

windows7下安装python3.3的setuptools工具 0

windows7下安装python3.3的setuptools工具

安装方法见: https://pypi.python.org/pypi/setuptools/0.9.8#windows

安装过程:

运行python程序时出现

安装好setuptools后,使用以下命令即可安装 requests