记录下今天关于python的东东:
1. setuptools:
下载: http://peak.telecommunity.com/dist/ez_setup.py
安装: python ez_setup.py 安装后Lib\site-packages 多了easy-install的东西
2. Python bindings for Selenium selenium 2.18.1
下载:到selenium 官网下一个,现在只支持python 2.
安装:python setup.py install 安装后Lib\site-packages 多了selenium-2.18.1-py2.7.egg目录
应用:用FireFox插件Selenium IDE 录制脚本后导出python webdriver格式,运行python testproject.py 能跑起来,O(∩_∩)O。
3. MySQLdb
下载:MySQL-python-1.2.3.tar.gz
安装:Python setup.py install
D:\MySQL-python-1.2.3>python setup.py install
Traceback (most recent call last):
File "setup.py", line 15, in <module>
metadata, options = get_config()
File "D:\MySQL-python-1.2.3\setup_windows.py", line 7, in get_config
serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, options['registry_key'])
WindowsError: [Error 2] The system cannot find the file specified
是因为我没有装MySQL么??!!
4. 这几天学python,对类里面的self不太理解,Google了一下,找到一个比较容易懂的文章:
http://sjolzy.cn/Why-should-self-Python.html
Python要self的理由
Python的类的方法和普通的函数有一个很明显的区别,在类的方法必须有个额外的第一个参数 (self ),但在调用这个方法的时候不必为这个参数赋值 (显胜于隐 的引发)。Python的类的方法的这个特别的参数指代的是对象本身,而按照Python的惯例,它用self来表示。(当然我们也可以用其他任何名称来代替,只是规范和标准在那建议我们一致使用self)
为何Python给self赋值而你不必给self赋值?
例子说明:创建了一个类MyClass,实例化MyClass得到了MyObject这个对象,然后调用这个对象的方法MyObject.method(arg1,arg2) ,这个过程中,Python会自动转为Myclass.mehod(MyObject,arg1,arg2)
这就是Python的self的原理了。即使你的类的方法不需要任何参数,但还是得给这个方法定义一个self参数,虽然我们在实例化调用的时候不用理会这个参数不用给它赋值。
扩展
self在Python里不是关键字。self代表当前对象的地址。self能避免非限定调用造成的全局变量。
在Python3之后不知道将self隐了没?感觉在Python类里的方法都要带个self这样有点死板
5. 看到一段话,还在体会中:
PHP和PYTHON和RUBY三者的关系简单的各用一句话来概括:
PHP一句话来总结就是:Quick And Dirty
PYTHON用一句话来总结就是:Quick And Clean, But Not Convenient For Web Development
RUBY用一句话来总结就是:Code For Fun And Quick For Web
6. Python usually stores its library (and thereby your site-packages folder) in the installation directory. So, if you had installed Python to C:\Python\, the default library would reside in C:\Python\Lib\ and third-party modules should be stored in C:\Python\Lib\site-packages\.
7. __init__ 方法:
在Python的类中有很多方法的名字有特殊的重要意义。现在我们将学习__init__方法的意义。
__init__方法在类的一个对象被建立时,马上运行。这个方法可以用来对你的对象做一些你希望的 初始化 。注意,这个名称的开始和结尾都是双下划线。
使用__init__方法
例11.3 使用__init__方法
#!/usr/bin/python
# Filename: class_init.py
class Person:
def __init__(self, name):
self.name = name
def sayHi(self):
print 'Hello, my name is', self.name
p = Person('Swaroop')
p.sayHi()
# This short example can also be written as Person('Swaroop').sayHi()
(源文件:code/class_init.py)
输出
$ python class_init.py
Hello, my name is Swaroop
它如何工作
这里,我们把__init__方法定义为取一个参数name(以及普通的参数self)。在这个__init__里,我们只是创建一个新的域,也称为name。注意它们是两个不同的变量,尽管它们有相同的名字。点号使我们能够区分它们。
最重要的是,我们没有专门调用__init__方法,只是在创建一个类的新实例的时候,把参数包括在圆括号内跟在类名后面,从而传递给__init__方法。这是这种方法的重要之处。
现在,我们能够在我们的方法中使用self.name域。这在sayHi方法中得到了验证。
给C++/Java/C#程序员的注释
__init__方法类似于C++、C#和Java中的 constructor 。
8. python中类的继承
class DerivedClassName(BaseClassName):
<statement-1>
.
.
.
<statement-N>
python中有2个内建的与继承有关的方法:
isinstance(): isinstance(obj, int) 为True 如果obj.__class__是int型或者int的子类型。
issubclass(): issubclass(unicode, str)
python中类的多重继承:
class DerivedClassName(Base1, Base2, Base3):
<statement-1>
.
.
.
<statement-N>
9. lambda提供了一个运行时动态创建函数的方法
用法:lambda [arg]: experssion 参数可以有任意多个(包括可选参数);body是函数体,只能是一个表达式,并且直接返回该表达式的值。
lambda函数的主要用法:配合filter(),map(),reduce()函数一起使用。
例子: m = lambda x,y,z: (x-y)*z
print m(3,1,2)
10. python 构造和析构函数
__init__(self,…) 这个方法在新建对象恰好要被返回使用之前被调用。
__del__(self) 恰好在对象要被删除之前调用。
Python中所有的类成员(包括数据成员)都是公共的 ,所有的方法都是有效的。
只有一个例外:如果你使用的数据成员名称以双下划线前缀,比如__privatevar,Python的名称管理体系会有效地把它作为私有变量。
11. filter filter(func, list)接受两个参数:一个函数func和一个列表list,返回一个列表。函数func只能有一个参数。filter的功能:列表中所有元素作为参数传递给函数,返回可以另func返回真的元素的列表
zip zip函数接受任意多个序列作为参数,将所有序列按相同的索引组合成一个元素是各个序列合并成的tuple的新序列,新的序列的长度以参数中最短的序列为准。另外(*)操作符与zip函数配合可以实现与zip相反的功能,即将合并的序列拆成多个tuple
晚上回去看看django开发的例子:
http://www.iteye.com/topic/1111822
http://www.iteye.com/topic/993637
http://blog.csdn.net/wh62592855/article/details/6943859
http://onlypython.group.iteye.com/group/wiki/1362-python-39-s-descriptor
http://michaelcrump.net/11-things-every-software-developer-should-be-doing-in-2012
新童鞋需要学的东西太多了...
分享到:
相关推荐
python学习代码 python学习代码 python学习代码
清华大学精品Python学习PPT课件-第1章 Python3概述.pptx 清华大学精品Python学习PPT课件-第2章 Python基本语法.pptx 清华大学精品Python学习PPT课件-第3章 Python流程控制.pptx 清华大学精品Python学习PPT课件-第4章...
python编程资料,实用,可自行学习.除此之外还可学习机器学习算法。
Python在线学习平台的设计与实现Python在线学习平台的设计与实现Python在线学习平台的设计与实现Python在线学习平台的设计与实现Python在线学习平台的设计与实现Python在线学习平台的设计与实现Python在线学习平台的...
《Python学习手册(第3版)》讲述了:Python可移植、功能强大、易于使用,是编写独立应用程序和脚本应用程序的理想选择。无论你是刚接触编程或者刚接触Python,通过学习《Python学习手册(第3版)》,你可以迅速高效地...
Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf Python学习笔记 .pdf ...
( Python学习手册(第3版).pdf( Python学习手册(第3版).pdf( Python学习手册(第3版).pdf( Python学习手册(第3版).pdf( Python学习手册(第3版).pdf( Python学习手册(第3版).pdf( Python学习手册(第3版).pdf( Python...
python机器学习教程_从零开始掌握Python机器学习:⼗四步 教程 Python 可以说是现在最流⾏的机器学习语⾔,⽽且你也能在⽹上找到⼤量的资源。你现在也在考虑从 Python ⼊门机器学习吗?本教程或 许能帮你成功上⼿,...
个人找的比较好的Python学习资料,希望对大家有所帮助,加油
囊括所有权威python专家的著作,专为学习Python的您准备,好好学习啊
python 学习笔记资料python 学习笔记资料python 学习笔记资料python 学习笔记资料
Python机器学习实例,机器学习基础实例教程
这是我学习Python的学习资源,大家一起 分享一下
1、Python环境搭建 1.1 Python简介 1.2 Python语言的发展历程 1.3 Python语言的主要特点 1.4 Python应用场景 1.5 Python环境搭建 1.6 第一个Python程序 1.7 集成开发工具 2、Python语法基础 2.1 Python中的...
【Python】资源 python学习0825python学习0825python学习
python学习资料
清华大学精品Python学习PPT课件-第1章 Python3概述.pptx 清华大学精品Python学习PPT课件-第2章 Python基本语法.pptx 清华大学精品Python学习PPT课件-第3章 Python流程控制.pptx 清华大学精品Python学习PPT课件-第4章...
清华大学精品Python学习PPT课件-第1章 Python3概述.pptx 清华大学精品Python学习PPT课件-第2章 Python基本语法.pptx 清华大学精品Python学习PPT课件-第3章 Python流程控制.pptx 清华大学精品Python学习PPT课件-第4章...
清华大学精品Python学习PPT课件-第1章 Python3概述.pptx 清华大学精品Python学习PPT课件-第2章 Python基本语法.pptx 清华大学精品Python学习PPT课件-第3章 Python流程控制.pptx 清华大学精品Python学习PPT课件-第4章...