当我们从中获取关键字列表时,如何从Python提示符中获取Python中所有内置函数的列表?
python大神给出的解决方案
更新:
关于__builtins__
或__builtin__
可能会有一些混淆。
What’s New In Python 3.0建议使用builtins
将模块__builtin__
重命名为builtins
(删除下划线,
添加一个“ s”)。在大多数全局变量中找到的__builtins__
变量
名称空间保持不变。要修改内置函数,您应该使用
builtins
,而不是__builtins__
!
如果您使用不同的Python实现(如docs所示),则可能会很好:
作为实现细节,大多数模块的名称为__builtins__
作为其全局变量的一部分提供。 __builtins__
的值为
通常是此模块或该模块的__dict__
的值
属性。由于这是实现细节,因此可能无法使用
通过Python的替代实现。
您可以通过以下方式获取所有内置名称:
>>> import builtins
>>> dir(builtins)
这包括builtins
中的所有内容。
如果严格只需要函数名称,请对其进行过滤:
import types
builtin_function_names = [name for name, obj in vars(builtins).items()
if isinstance(obj, types.BuiltinFunctionType)]
Python 3.6中的结果列表:
['__build_class__',
'__import__',
'abs',
'all',
'any',
'ascii',
'bin',
'callable',
'chr',
'compile',
'delattr',
'dir',
'divmod',
'eval',
'exec',
'format',
'getattr',
'globals',
'hasattr',
'hash',
'hex',
'id',
'isinstance',
'issubclass',
'iter',
'len',
'locals',
'max',
'min',
'next',
'oct',
'ord',
'pow',
'print',
'repr',
'round',
'setattr',
'sorted',
'sum',
'vars',
'open']
如果需要函数对象,只需通过从字典中选择'obj'来稍微更改代码即可:
builtin_functions = [obj for name, obj in vars(builtins).items()
if isinstance(obj, types.BuiltinFunctionType)]
用大写字母拆分字符串,但忽略AAA Python Regex - python我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…
Python:同时在for循环中添加到列表列表 - python我想用for循环外的0索引值创建一个新列表,然后使用for循环添加到相同的列表。我的玩具示例是:import random data = ['t1', 't2', 't3'] masterlist = [['col1', 'animal1', 'an…
Python查找单词可以用字符构建 - pythonClosed. This question needs details or clarity。它当前不接受答案。 想改善这个问题吗?添加详细信息并通过editing this post阐明问题。 4个月前关闭。 Improve this question 我想找出单词'apple'(word_list)是否可以用char_list1构建但不能用char_li…
在Python中迭代OrderedDict - python我有以下OrderedDict:OrderedDict([('r', 1), ('s', 1), ('a', 1), ('n', 1), ('y', 1)]) 实际上,这表示单词中字母的出现频率。第一步-我将使用最后两个元素来创建一个这样的联合元组; pair…
如何在Matplotlib条形图后面绘制网格线 - pythonx = ['01-02', '02-02', '03-02', '04-02', '05-02'] y = [2, 2, 3, 7, 2] fig, ax = plt.subplots(1, 1) ax.bar(range(len(y)), y, width=…