0

我正在尝试获取一个类的成员变量列表。

class Book(object):
    def __init__(self):
        self.title='Inferno'
        self.author = 'Dan Brown'
        self.publisher= 'DoubleDay'
        self.pages=480

bk = Book()
p=bk.__dict__
print p.keys()

输出是:

['publisher', 'author', 'pages', 'title']

我在这里很好奇,因为该列表既不是按字母顺序打印的,也不是根据我列出类变量的方式。那么python是通过什么方式打印出来的呢?

4

2 回答 2

2

它完全是任意的,因为它是一本字典,而字典是无序的。

(嗯,不是随意的,而是或多或少随机的,这取决于计算机存储数据的方式)。

于 2013-05-29T10:53:55.170 回答
1

Python 将类变量存储在dict. 这是一个无序的数据结构,所以 Python 可以自由选择它喜欢的任何顺序。

于 2013-05-29T10:54:25.020 回答