0

当我输入dir()python 时,它可以显示所有可见的变量,例如:

>>> dir()
['ACCT', 'ACEV', 'ALLOW_THREADS', 'ANNOTE_FONT', 'Annotation', 'AnnoteFinder', 'Arrow', 'Artist', 'AutoLocator', 'Axes', 'BS_KM', 'BUFSIZE', 'Button', 'CF_KM']

现在我想要一个可以列出某种类型的所有变量的函数,例如' str',通过:

>>list_all_variable_of_type(str)

它将返回类型为 'str' 的变量列表。

'list_all_variable_of_type()'函数怎么写?

4

1 回答 1

8

dir只显示名称。您需要globals()访问实际变量。所以可能:

[name for name, value in globals().items() if isinstance(value, basestring)]

(请注意,如果您依靠它来访问一组未知的变量,那么您可能做错了;您应该将数据存储在像 dict 这样的整体数据结构中。)

于 2013-03-05T11:08:30.797 回答