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