【Python系列】 7. 类和对象
01 、类和对象的概念
对象:
用来描述客观事物的一个实体,由一组属性与方法组成
属性 - 特征(静态的特征)
方法 - 行为(动态的特征)
类:
类是模型(模子),它是对对象的抽象
类与对象的关系:
类是对象的抽象,对象是类的实例
02、应用
类的组成:
类的名称 、 类的属性 、 类的方法
类的语法:
class 类名:
def __init__(self):
pass
注:
1、类的方法中,互相调用,及调用属性的使用。不能直接写名称,需要加上self.名称
2、__init__(self):
init 方法 ,又称为构造函数:为对象创建初始化状态
此方法,在实例化类时,程序会自动调用。这个方法可以有参数,也可以不要参数,但是必须要有self
3、 self 说明 :
类中的所有函数,都必须有self, 且在第一个参数位置
self 的名称是可变,但是为了见名知义,最好使用默认的self
self 的意义:代表实例化对象
示例代码:
# url 地址管理的类
# 专门写关于地址的一些方法
class UrlManager(object):
def __init__(self):
# 未访问的链接
self.new_urls = set()
# 已经访问的链接
self.old_urls = set()
# 添加一个新的地址
def add_new_url(self,url):
if url is None :
return
if url not in self.new_urls and url not in self.old_urls:
self.new_urls.add(url)
# 添加多个新地址
def add_new_urls(self, urls):
if urls is None or len(urls) == 0 :
return
for url in urls:
self.add_new_url(url)
# 判断是否还有新的地址
def has_new_url(self):
return len(self.new_urls)!=0
# 获取一个新地址
def get_new_url(self):
new_url = self.new_urls.pop()
self.old_urls.add(new_url)
return new_url