1.14.1 对象
对象是程序中使用的所有值。例如:
items = [37, 42] #创建一个列表对象
items.append(37)
dir()函数可以列出对象可以使用的方法,例如:
>>> items = [37, 42]
>>> dir(items)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>> items._ _add_ _([77, 101]) #双下划线
[37, 42, 77, 101]
1.14.2 类
在面向对象中使用class语句用于定义新的对象类型,类定义带有push()、pop()、length()操作的简单栈:
class Stack(object):
def __init__(self): #初始化栈;使用self参数始终指向对象本身
self.stack = [ ]
def push(self, object): #输入
self.stack.append(object) #添加
def pop(self): #输出
return self.stack.pop()
def length(self):
return len(self.stack)
s = Stack() #创建一个栈
s.push("Dave") #在栈中放入一些内容
s.push(42)
s.push([1,2,3,4,5])
x = s.pop() #x = [1,2,3,4,5]
print x,
print("\n")
y = s.pop() #y = 42
print y,
print("\n")
del s #删除"Dave"