关于哈希查找
通俗的讲哈希查找
查找手机上的联系人,一个一个找就是 顺序查找
通过首字母查找,就是哈希查找
因为
找某个联系人,如果按照姓氏找这个人,但是姓氏有很多啊,而且每个姓氏的人数又不多,这方法肯定行不通啊。
所以常规方法就是通过姓氏首字母来查找,因为字母只有26个啊。例如姓李,姓刘首字母都是L,可以理解为李和刘的哈希值都是L,哈希算法就是取拼音首字母。
http://python.jobbole.com/82023/
python的面向对象
class Foo:
def __init__(self, name, age):
self.name = name
self.age = age
init是构造器
obj1 = Foo('wupeiqi', 18)
print obj1.name # 直接调用obj1对象的name属性
print obj1.age # 直接调用obj1对象的age属性
obj2 = Foo('alex', 73)
print obj2.name # 直接调用obj2对象的name属性
print obj2.age # 直接调用obj2对象的age属性
如果是 def__init__(self):
就是 obj3 = Foo();相当于java里的new 一个
class Foo:
def __init__(self, name, age):
self.name = name
self.age = age
def detail(self):
print self.name
print self.age
obj1 = Foo('wupeiqi', 18)
obj1.detail() # Python默认会将obj1传给self参数,即:obj1.detail(obj1),所以,此时方法内部的 self = obj1,即:self.name 是 wupeiqi ;self.age 是 18
obj2 = Foo('alex', 73)
obj2.detail() # Python默认会将obj2传给self参数,即:obj1.detail(obj2),所以,此时方法内部的 self = obj2,即:self.name 是 alex ; self.age 是 78