Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何获得Python中所有内置函数的列表?_Python_Function - Fatal编程技术网

如何获得Python中所有内置函数的列表?

如何获得Python中所有内置函数的列表?,python,function,Python,Function,我正在尝试整理一个规范的示例,说明如何获取Python中所有内置函数的列表。文档很好,但我想用可证明的方法来演示它 在这里,我将内置函数定义为默认名称空间的成员,这些成员是可用的,并且与用于模块的函数的风格特征一致,也就是说:它们提供一些有用的功能,并以字母表中的小写字母开始 我在这里做的好处是,我演示了列表理解的过滤部分,但这似乎有点肮脏,应该有一种更直接的方法来做这件事。以下是我目前正在做的事情: import string alc = string.ascii_lowercase bif

我正在尝试整理一个规范的示例,说明如何获取Python中所有内置函数的列表。文档很好,但我想用可证明的方法来演示它

在这里,我将内置函数定义为默认名称空间的成员,这些成员是可用的,并且与用于模块的函数的风格特征一致,也就是说:它们提供一些有用的功能,并以字母表中的小写字母开始

我在这里做的好处是,我演示了列表理解的过滤部分,但这似乎有点肮脏,应该有一种更直接的方法来做这件事。以下是我目前正在做的事情:

import string
alc = string.ascii_lowercase
bif = [i for i in dir(__builtins__) if 
       any(i.startswith(j) for j in alc)]
这给了我:

['abs','all','any','apply','basestring','bin','bool','buffer', “bytearray”、“bytes”、“callable”、“chr”、“classmethod”、“cmp”, “强制”、“编译”、“复杂”、“版权”、“信用”、“delattr”, “dict”、“dir”、“divmod”、“enumerate”、“eval”、“execfile”、“exit”, “文件”、“过滤器”、“浮点”、“格式”、“冻结集”、“getattr”, “globals”、“hasattr”、“hash”、“help”、“hex”、“id”、“input”、“int”, ‘实习生’、‘isinstance’、‘IsubClass’、‘iter’、‘len’、‘license’, ‘列表’、‘本地’、‘长’、‘地图’、‘最大’、‘记忆视图’、‘最小’、‘下一步’, ‘对象’、‘十月’、‘打开’、‘作战需求’、‘作战能力’、‘打印’、‘属性’、‘退出’, ‘范围’、‘原始输入’、‘减少’、‘重新加载’、‘报告’、‘反转’、‘圆形’, “set”、“setattr”、“slice”、“sorted”、“staticmethod”、“str”、“sum”, “super”、“tuple”、“type”、“unichr”、“unicode”、“vars”、“xrange”, “zip”]

我相信他们都可以打电话,如下所示:

bi2 = [i for i in dir(__builtins__) if 
       any(i.startswith(j) for j in alc) 
       and callable(getattr(__builtins__, i, None))]
set(bif).symmetric_difference(bi2)
我得到:

set([])
那么,有没有更好的方法列出内置Python函数呢?到目前为止,谷歌和stackoverflow搜索让我失望

我正在寻找一种可证明的、可重复的实验教学方法。谢谢

import __builtin__
import inspect

[name for name, function in sorted(vars(__builtin__).items())
 if inspect.isbuiltin(function) or inspect.isfunction(function)]

在.

中还有一个列表,为什么您需要用Python来列出它们,而不仅仅是查看?我正在演示一种规范的方法来回答这个问题,即有多少内置函数,以及如何跟踪它们以确定我是否了解它们。@AaronHall:听起来您希望在文档中列出这个列表。这是一项人工任务,而不是编码任务。差异
>>>\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu(['bytearray'、'enumerate'、'set'、'help'、'int'、'Uuu导入'、'float'、'unicode'、'memoryview'、'bool'、'quit'、'basestring'、'slice'、'complex'、'long'、'xrange'、'tuple'、'exit'、'type'、'file'、'bytes'、'buffer'、'reversed'、'object'、'dict'、'credits'、'frozenset',“属性”])
@AaronHall:其中一些是类型。
list
int
,例如。其他的是版权声明。
\uuuuu import\uuuuu
出现在我的列表中,但不是你的;它是一个内置函数。如果你想要所有东西都可以调用,这是一个简单的更改,尽管它会将异常放回列表中。好的,+1代表effort,但尽管我的列表忽略了dunder导入(有趣的是,我最近使用了),它获取名称空间中所有其他可调用项,人们在使用Python时应该注意这些项。对我来说,重点是对Python的新用户具有指导意义。@AaronHall:如果您希望具有指导意义,您需要文档。这比试图找到“对新用户具有指导意义”的公式要容易得多,而且它比一张名单更有用,也更易读