Python的dir()函数代表什么?

时间:2011-10-08 09:42:08

标签: python

我知道dir()函数会返回当前作用域中定义的名称或对象中定义的名称。但为什么叫dir()?它是一些神秘的缩略词,如LISP的CAR和CDR吗?

4 个答案:

答案 0 :(得分:19)

它为您提供了范围(对象)中有效名称(属性)的字母顺序列表。这几乎是英文单词 directory 的含义。

答案 1 :(得分:3)

这可能只是目录列表的一个类比。 list()用于创建列表,因此dir()用于列出具有与文件系统类似的树状结构的元素对象。

只是一个猜测。

答案 2 :(得分:2)

很可能它是对MSDOS的DIR命令的引用。 DIR执行目录列表,例如Unix命令ls

答案 3 :(得分:0)

我知道没有参数,它会返回当前本地范围内的名称列表。例如:

>>>z = 3
>>>def f1():
...    x = 1
...    y = 2
...    print dir()
...
>>>f1()
['x','y']
>>>print dir()
['z',something else]

使用参数,它返回该对象的所有属性的已排序字典键。例如:

>>>import sys
>>>dir(sys)
[a bunch of attributes of sys]