python中查看变量类型的函数,查看变量类型的Python内置函数是________________
在导入一个模块后,开发人员往往需要知道该模块包含哪些函数,比如哪些变量、函数、类等。也希望查看模块每个成员的帮助信息,让他们正常使用模块。
为了检查模块包含的内容,有两种方法:
使用 dir() 函数。
使用模块本身提供的 __all__ 变量。
dir()函数的基本用法在前一章已经介绍过了,它可以用来返回一个模块或类中包含的所有程序单元(包括变量、函数、类和方法)。但是直接使用dir()函数会默认列出模块中的所有程序单元,包括以下行开头的程序单元,这些程序单元实际上是外界不希望使用的。
例如,在Python的交互式解释器中执行以下命令来导入字符串模块(Python的内置模块,用于丰富字符串函数):
然后,Importstring通过dir()函数查看该模块的内容,您将看到以下输出结果:
目录(字符串)
[Formatter , Template , _ChainMap , _TemplateMetaclass , __all__ , __builtins__ , __cached__ , __doc__ ,
__file__ , __loader__ , __name__ , __package__ , __spec__ , _re , _string , ascii_letters ,
ascii_lowercase , ascii_uppercase , capwords , digits , hexdigits , octdigits , printable ,标点,
显然,这个模块中有很多程序单元是以下面的下划线开始的。实际上,这些程序单元并不想被其他程序使用,所以列出这些程序单元没有什么意义。为了在下面带下划线的行的开头过滤这些程序单元,我们可以使用下面的列表派生来列出模块中的程序单元:
[efore indir(string)if note . starts with( _ )]
[格式化程序,模板, ascii_letters , ascii_lowercase , ascii_uppercase , capwords , digits , hexdigits ,
Octdigits , Printable ,标点符号,空白]这个命令使用for循环的列表派生来列出dir(string)返回的所有不是以下划线开头的程序单元。它们是这个模块希望被其他程序使用的程序单元。
另外,模块中的__all__变量在本章前面已经介绍过了,相当于模块的开放函数接口。因此,模块中的程序单元也可以通过模块的__all__变量来查看。例如,在交互式解释器中输入以下命令:
字符串。__全部_ _
[ascii_letters , ascii_lowercase , ascii_uppercase , capwords , digits , hexdigits , octdigits , printable ,
标点,空格,格式化程序,模板]将前面列表中列出的结果与这里的__all__变量中列出的结果进行比较,不难发现两者的输出结果大致相同,这说明模块中包含的程序单元可以用两种方法查看。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。