点运算符用于访问任何对象的属性。例如,复数>>> c = 3+4j
具有(除其他外)两个属性real和imag:>>> c.real
3.0
>>> c.imag
4.0
除此之外,它还有一个方法conjugate(),它也是一个属性:>>> c.conjugate
>>> c.conjugate()
(3-4j)
方括号表示法用于访问集合的成员,无论在字典或其他映射的情况下是按键访问:>>> d = {'a': 1, 'b': 2}
>>> d['a']
1
。。。如果序列是列表或字符串,则按索引:>>> s = ['x', 'y', 'z']
>>> s[2]
'z'
>>> t = 'Kapow!'
>>> t[3]
'o'
这些集合还分别具有以下属性:>>> d.pop
>>> s.reverse
>>> t.lower
。。。同样,在上述情况下,这些属性碰巧是方法。
虽然所有对象都有一些属性,但并非所有对象都有成员。例如,如果我们尝试使用方括号表示法来访问复数的成员c:>>> c[0]
Traceback (most recent call last):
File "", line 1, in
TypeError: 'complex' object is not subscriptable
。。。我们得到一个错误(这是有道理的,因为没有明显的方法让复数有成员)。
可以分别使用特殊方法^{}和^{},定义[]和.访问在用户定义类中的工作方式。解释如何这样做超出了这个问题的范围,但是您可以在Python Tutorial中阅读更多关于它的内容。